<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="et">
	<id>http://www.lambda.ee/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=PriitJ</id>
	<title>Lambda - Kasutaja kaastöö [et]</title>
	<link rel="self" type="application/atom+xml" href="http://www.lambda.ee/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=PriitJ"/>
	<link rel="alternate" type="text/html" href="http://www.lambda.ee/wiki/Eri:Kaast%C3%B6%C3%B6/PriitJ"/>
	<updated>2026-10-28T09:25:24Z</updated>
	<subtitle>Kasutaja kaastöö</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Hajuss%C3%BCsteemid&amp;diff=22863</id>
		<title>Hajussüsteemid</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Hajuss%C3%BCsteemid&amp;diff=22863"/>
		<updated>2026-04-10T11:17:59Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* Lukustamine ja paralleelprotsessid: 13. aprill */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;table&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
[[Pilt:Revolution_small.jpg|left|revolutsioon]]&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
Ainekoodid: ITI0215&amp;lt;br&amp;gt;&lt;br /&gt;
Aine nimed: Hajussüsteemid&amp;lt;br&amp;gt;&lt;br /&gt;
Link:  http://lambda.ee/wiki/Hajuss%C3%BCsteemid&amp;lt;br&amp;gt;&lt;br /&gt;
Punkte: 6 EAP&amp;lt;br&amp;gt;&lt;br /&gt;
Õppejõud: [https://www.facebook.com/tanel.tammet Tanel Tammet] tanel.tammet@ttu.ee&amp;lt;br&amp;gt;&lt;br /&gt;
Praktikumijuhendaja: Martin Verrev&amp;lt;br&amp;gt;&lt;br /&gt;
Olemas on ka [[Hajussüsteemid 2025|2025 aasta materjalide arhiiv]].&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- = &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NB! Materjalid hetkel uuendamisel&amp;lt;/font&amp;gt; = --&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Endiselt on nüüd ja edaspidi praksid IT kolledzhis ICO-316, mitte Mektorys.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NB! 13 aprill iseõpe videost&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
13. aprillil loengut ei toimu. Tuleb (a) vaadata varasemat videot (b) teha ise nädalaülesanne. Mõlemad ilmuvad siia esmaspäeval.&lt;br /&gt;
&lt;br /&gt;
= Aeg, koht =&lt;br /&gt;
&lt;br /&gt;
Semester: kevad&amp;lt;br&amp;gt;&lt;br /&gt;
Tulemus: eksam&amp;lt;br&amp;gt;&lt;br /&gt;
Hindamise meetod: praktikumide tulemused (50%) ja eksam (50%)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Loeng (Tanel): esmaspäeval 10:00-11:30 ruumis SOC-414.&amp;lt;br&amp;gt;&lt;br /&gt;
Praktikum (Martin): teisipäeval kell 12:00-13:30 ruumis ICO-316.&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Plaan on teha enamik loenguid kohapeal ja väiksem osa distantsilt. Praksid toimuvad vähemalt esialgu kohapeal, ja võimalik, et osad hiljem distantsilt.  NB! Ei ole garantiid, et teamsi-salvestused alati õnnestuvad.&lt;br /&gt;
&lt;br /&gt;
Kogu info, materjalid ja ülesanded on siinsamas lambda lehel. &lt;br /&gt;
&lt;br /&gt;
Palun liitu kursuse [https://teams.microsoft.com/l/team/19%3AtsyZMz2V46b91uKhTHd2ZCkrZ9jg7z_NAUfAxuzjT6M1%40thread.tacv2/conversations?groupId=f7508cf2-b882-43d4-b697-3f04573c7bb6&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 teamsi grupiga]: iseregistreerumise võti on q1nrfb2.&lt;br /&gt;
&lt;br /&gt;
Iganädalase [https://teams.microsoft.com/meet/3625241488921?p=xuNcAp5hlNYvG2htjz teamsi loengu-meeti link].&lt;br /&gt;
&lt;br /&gt;
Iganädalase [https://teams.microsoft.com/meet/3561914989815?p=fgLPiNJJUBMDCQPOET teamsi praksi-meeti link].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NB!&amp;lt;/font&amp;gt; Allpool olev blokkide struktuur on sarnane, kui 2025 aastal, aga mitte päris sama. Toimunud loengute materjalid ja salvestused osaliselt uuendatakse/muudetakse: kogu info veel mitte toimunud loengute ja veel mitte selgitatud/uuendatud prakside kohta on esialgne. &lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
= Serverid =&lt;br /&gt;
&lt;br /&gt;
See info on vaja 2025 aasta jaoks uuendada, hetkel võib olla vananenud:&lt;br /&gt;
&lt;br /&gt;
Kui teie meeskonnal on vaja servereid, siis palun täitke ära vorm siin: https://moodle.taltech.ee/mod/assign/view.php?id=444470 &lt;br /&gt;
&lt;br /&gt;
Linuxi ja Maci all leiad avaliku võtme failist `~/.ssh/id_rsa.pub`. Kui seda pole saad selle genereerida `ssh-keygen` käsuga. Windowsi all vaata avaliku võtme leidmiseks või genereerikmiseks seda õpetust: https://docs.acquia.com/cloud-platform/manage/ssh/generate/&lt;br /&gt;
&lt;br /&gt;
Serveri tellinutele on lisatud Moodles kommentaarina selle avalik IP, sisse saate logida kasutajaga ubuntu, nt kui see on 193.40.155.11, siis sisselogimiseks kasuta &amp;lt;code&amp;gt;ubuntu@193.40.156.35&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Serveris on lahti port 22. Muude portide kasutamiseks pead tekitama SSH tunneli. Kuidas seda teha vaata 6. praktikumi loengusalvestist ja neid materjale: https://linuxize.com/post/how-to-setup-ssh-tunneling/ ja https://www.ssh.com/academy/ssh/tunneling/example või vaata seda videot: https://www.youtube.com/watch?v=N8f5zv9UUMI&lt;br /&gt;
&lt;br /&gt;
Loe ka [[Vorgurakendused 2 2022 kevad serveritest | serverite kasutamisest]]:&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Hindamine =&lt;br /&gt;
&lt;br /&gt;
Kursuse edukaks sooritamiseks on sul vaja:&lt;br /&gt;
&lt;br /&gt;
* saada arvestatud mõlemid praktikumid&lt;br /&gt;
* teha eksam tasemel vähemalt 1/3 eksami kogupunktidest.&lt;br /&gt;
* saada praktikumid + eksam kokku vähemalt 50 punkti.&lt;br /&gt;
&lt;br /&gt;
Kursuse hinde rehkendamisel annavad praktikumid kokku 50% kogupunktidest ning eksam 50%. &lt;br /&gt;
&amp;lt;!-- NB! Eksamile võtta kaasa pildiga dokument. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The materials below marked with the red &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E1&amp;lt;/font&amp;gt; are the main materials for the exam, while &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E2&amp;lt;/font&amp;gt; materials will also come up, but less and/or in a simpler form.&lt;br /&gt;
&lt;br /&gt;
= Nädala ülesanded =&lt;br /&gt;
&lt;br /&gt;
Esimene nädalaülesanne, tähtaeg 9. märts: erinevate API-stiilide väike harjutus.&lt;br /&gt;
&lt;br /&gt;
Võtame wikipedia näite XML RPC callist:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;methodCall&amp;gt;&lt;br /&gt;
  &amp;lt;methodName&amp;gt;examples.getStateName&amp;lt;/methodName&amp;gt;&lt;br /&gt;
  &amp;lt;params&amp;gt;&lt;br /&gt;
    &amp;lt;param&amp;gt;&lt;br /&gt;
        &amp;lt;value&amp;gt;&amp;lt;i4&amp;gt;40&amp;lt;/i4&amp;gt;&amp;lt;/value&amp;gt;&lt;br /&gt;
    &amp;lt;/param&amp;gt;&lt;br /&gt;
  &amp;lt;/params&amp;gt;&lt;br /&gt;
&amp;lt;/methodCall&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sinu ülesanne on konverteerida see call neljale erinevale kujule. Iga kuju on lihtsalt tükk post-käsuga saadetavat teksti või (viimase punkti jaoks) URL koos argumentidega. Ühegi punkti jaoks ei ole olemas &amp;quot;ühte õiget&amp;quot; viisi, neid saab kõiki teha mitmel moel.&lt;br /&gt;
&lt;br /&gt;
* Kõige minimaalsem SOAP: nii vähe muutusi/täiendusi, kui veel võimalik, et oleks legaalne SOAP. Saatmiseks POST käsuga.&lt;br /&gt;
* &amp;quot;Normaalses&amp;quot; stiilis SOAP, nagu on tüüpiliselt kombeks (hulk variante, vali lihtsalt üks).&lt;br /&gt;
* REST: JSON postitamiseks.&lt;br /&gt;
* REST: GET ja parameetrid URLs.&lt;br /&gt;
&lt;br /&gt;
Muuhulgas pane tähele, et kui see call datat ei salvesta, oleks sisuliselt rohkem RESTFUL kasutada GET meetodit, kui aga salvestab, siis POST meetodit. Siin ülesandes ei eelda me otseselt ühte ega teist, esita lihtsalt mõlemi variandi jaoks.&lt;br /&gt;
&lt;br /&gt;
Ülesande vastused saada meiliga nii Tanelile kui Martinile. OK tehtud ülesande eest saab ühe lisapunkti. Seejures ei pea kõik neli punkti olema tehtud, piisab ka kolmest.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Mõnel nädalal antakse väike kohustuslik ülesanne: õppejõule tuleb kas saata emailiga kokkuvõte/mikroessee. Ülesanded pannakse kirja siiasamasse.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!-- või laadida see Moodlesse vastava nädala ülesande juurde üles. Juhul kui sul on mitu faili, siis palun zipi need enne kokku. Moodlesse ülesselaadimise link on https://moodle.taltech.ee/mod/assign/view.php?id=446226.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Praktikumid =&lt;br /&gt;
&lt;br /&gt;
Kokku on praktikumitöid kaks. Ülesanded jaotatakse kohustuslikuks baasosaks ja valikosadeks: igaühel oma punktiarv. Kumbki praktikum täismahus (baasosa + kõik valikosad) tehtuna annab 25 punkti. Võivad lisanduda ekstrapunktid eriti hästi tehtud osade või täienduste eest. Hilinenud kodutöö eest saab pooled muidu saadaolevad punktid.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Õppejõu poolt praktikumides kirjutatud koodinäited on leitavad siit: https://github.com/martinve/ITI0215_25&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Praktikumitööd on järgmised:&lt;br /&gt;
&lt;br /&gt;
* [[Hajussüsteemid prax 1 2026 kevad| 1 praks on P2P rakendus]]: distributed ledgeri komponent.  Grupitöö 1-3 inimest. See on sarnane esimesele praktikumile eelmisest aastast. &lt;br /&gt;
&lt;br /&gt;
* [[Hajussüsteemid prax 2 2026 kevad| 2 praks on faili või ledgeri konsensus hajutatud süsteemis]]. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Praktikumitööde tähtajad on &#039;&#039;&#039;:&lt;br /&gt;
* 1. praktikumil - 24. märts 2026. Virtuaalse kaitsmisjärjekorra moodustamiseks täida palun see vorm: https://docs.google.com/forms/d/e/1FAIpQLScuNxm815NwwgA1ftqfvQu6x9RcnsIgg0nsMmVmcfHk95BIWg/viewform?usp=sharing&amp;amp;ouid=115666979704635249359&lt;br /&gt;
&lt;br /&gt;
** 24. märts [https://teams.microsoft.com/meet/35901742087439?p=JOYLLXpqYojDNRgbj4 kell 11:00 kaitsmiste teamsi link]&lt;br /&gt;
** 24. märts [https://teams.microsoft.com/meet/399321298889734?p=ur8NG5Tw9eY6YelGm7 kell 14:00 kaitsmiste teamsi link]&lt;br /&gt;
&lt;br /&gt;
* 2. praktikumil - 12. mai 2026. Teise praktikumi ülesandes võib  veel tulla väiksemaid muutusi.&lt;br /&gt;
&lt;br /&gt;
Praktikumitöö esitamiseks tee järgmist:&lt;br /&gt;
* Pane oma töö TTÜ gitlabi või avalikku githubi või gitlabi reposse.&lt;br /&gt;
* Pane repo esilehele loetav ülevaade protokollidest, mida su töö kasutab, koos töö üldpõhimõtete kirjeldusega.&lt;br /&gt;
* Tee nii, et juhendaja saaks seda repot lugeda: kui ei ole avalik repo, lisa ta developeriks. TTU Gitlabis peab olema developer õigustes, et koodi lugeda.&lt;br /&gt;
&lt;br /&gt;
Praktikumijuhendaja on Martin Verrev.&lt;br /&gt;
&lt;br /&gt;
= Loengukava =&lt;br /&gt;
&lt;br /&gt;
Kursus jaguneb laias laastus kolmeks teemaks: &lt;br /&gt;
&lt;br /&gt;
* P2P ja protokollid (neil teemadel - pluss veidi andme-apidest- esimene praks), sh distributed ledger ehk bitcoini alustehnoloogia&lt;br /&gt;
* Paralleelrehkendused ja konsensus, lukustamine, sünkroniseerimine (selle kohta teine praks)&lt;br /&gt;
* Näited reaalsetest hajutatud süsteemidest&lt;br /&gt;
&lt;br /&gt;
Päris hea õpiku saad tasuta alla laadida [https://www.distributed-systems.net/index.php/books/ds3/  siit].  Meie kursuse sisu on sellest õpikust küllalt erinev, samas on ka ühisosi. Hea mõte on lugeda soenduseks läbi jutt [https://d1.awsstatic.com/builderslibrary/pdfs/challenges-with-distributed-systems.pdf hajussüsteemide probleemide] ühest valdkonnast (aga neid on veel hulga).&lt;br /&gt;
&lt;br /&gt;
Üldist materjali ja kursusi mujalt:&lt;br /&gt;
:http://en.wikipedia.org/wiki/Distributed_computing&lt;br /&gt;
:http://dcg.ethz.ch/lectures/podc_allstars/index.html&lt;br /&gt;
&amp;lt;!-- :http://www.eecs.harvard.edu/cs262/ DEAD --&amp;gt;&lt;br /&gt;
:http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-824-distributed-computer-systems-engineering-spring-2006/index.htm&lt;br /&gt;
:https://www.scs.stanford.edu/24sp-cs244b/&lt;br /&gt;
&lt;br /&gt;
NB! Allolevad loengumaterjalid &amp;lt;b&amp;gt;tuleviku&amp;lt;/b&amp;gt; kohta on pärit 2024 aastast, neid kursuse käigus uuendatakse ja muudetakse. Juba toimunud või antud nädala loengumaterjalid on uuendatud 2025 aasta jaoks.&lt;br /&gt;
&lt;br /&gt;
== Protokollid ja P2P ==&lt;br /&gt;
&lt;br /&gt;
===  Protokollid, 2. veebruar ===&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;b&amp;gt;Kohustuslikud osad lugeda&amp;lt;/b&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
:Http ja json: [[võrgurakenduste protokollid 1]] &amp;lt;!-- (loengus kuni https, edasised osad järgmises loengus) --&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;b&amp;gt;Täiendavalt soovitav lugeda&amp;lt;/b&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
:Gaffer on games: [https://gafferongames.com/post/udp_vs_tcp/ UDP vs TCP] ja [https://gafferongames.com/categories/game-networking/ täiendavalt]&lt;br /&gt;
&lt;br /&gt;
:Veidi seotud asi [https://en.wikipedia.org/wiki/Wireless_ad_hoc_network ad hoc networks] vt ka  &amp;lt;!--[http://www.eliko.ee/smart-streetlight-control-system-3/ ELIKO valgustussüsteemid] DEAD ja --&amp;gt; [http://www.freepatentsonline.com/8966046.html Defendeci ja Jürgo Predeni patent]&lt;br /&gt;
&lt;br /&gt;
:Http ja json: [[võrgurakenduste protokollid 1]] lõpuosa alates https&lt;br /&gt;
:Loe lisaks [https://medium.com/@animeshgaitonde/how-https-works-part-1-building-blocks-64f9915b1f39 https kohta]&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;b&amp;gt;Võrgunduse baasprotokollide&amp;lt;/b&amp;gt; kohta on soovitav lugeda (aga, need ei ole meie kursuse fookuses) [https://beej.us/guide/ siit: Beej&#039;s guides]:&lt;br /&gt;
&lt;br /&gt;
===  P2P sissejuhatus, 9. veebruar ===&lt;br /&gt;
&lt;br /&gt;
: loengumaterjal: [[Media:P2p_overview.ppt|pikem ülevaade eri P2P tehnoloogiatest]] &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E1&amp;lt;/font&amp;gt;&lt;br /&gt;
:[http://en.wikipedia.org/wiki/Peer-to-peer vikipeedia ülevaade] &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E2&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;!-- :[http://www.srdc.metu.edu.tr/webpage/seminars/p2p/P2P.ppt hea paraja detailsusega sissejuhatus] --&amp;gt;&lt;br /&gt;
&amp;lt;!-- :[http://www.cs.ucy.ac.cy/courses/EPL420/Slides/Chapter2_4ed-P2P.ppt ülevaatepresentatsioon] --&amp;gt;&lt;br /&gt;
&amp;lt;!-- :[http://www.it.lut.fi/comlab/ssotc/ssotc08/presentations/Lappeenranta_summer_school_Jukka_K_Nurminen.ppt alternatiivne ülevaatepresentatsioon] --&amp;gt;&lt;br /&gt;
&amp;lt;!-- :[http://www14.in.tum.de/personen/schmiste/dynamo08.ppt hea detailne ülevaade eri P2P tehnoloogiatest] --&amp;gt;&lt;br /&gt;
:[http://en.wikipedia.org/wiki/Tor_%28anonymity_network%29 TOR wikipedias] &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E2&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===  Andmekodeerimine/vahetus:  JSON-based tech, REST and API styles 16 veebruar ===&lt;br /&gt;
&lt;br /&gt;
Old XML-based tech:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
:[[võrgurakenduste protokollid 1]] eriosad: Same origin policy, push/longpoll ja websockets&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* xml protokollid xml-rpc, soap ja seotud tehnoloogiad: [[võrgurakenduste protokollid 2]] &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E1&amp;lt;/font&amp;gt;&lt;br /&gt;
* Väga vanad tekstid SOAPi probleemidest: [[veebiteenuste võlu ja valu]] ja [http://harmful.cat-v.org/software/xml/soap/simple s stands for simple]&lt;br /&gt;
&lt;br /&gt;
Mainstream: REST, JSON, Graphql:&lt;br /&gt;
&lt;br /&gt;
Lugemiseks:&lt;br /&gt;
&lt;br /&gt;
* Päris alustuseks loe süvenemisega läbi Microsofti [https://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design REST api design soovitused]&lt;br /&gt;
* [https://en.wikipedia.org/wiki/Representational_state_transfer rest wikipedias] ja [http://www.restapitutorial.com/ rest tutorial (vt linke all!)] &lt;br /&gt;
* [http://www.odata.org/ odata.org: microsoft/oasis recommendations for rest style]&lt;br /&gt;
* [https://graphql.org/ Graphql start] and [https://blog.pusher.com/rest-versus-graphql/ graphql vs rest].&lt;br /&gt;
&lt;br /&gt;
Päris hea ülevaate leiad siit: [https://www.moesif.com/blog/api-guide/ Moesif API guide]&lt;br /&gt;
&lt;br /&gt;
Lihtsa REST-tüüpi APIde head näited on LLMide apid:&lt;br /&gt;
* [https://developers.openai.com/api/reference/overview/ openai gpt API]&lt;br /&gt;
* [https://ai.google.dev/gemini-api/docs google gemini API]&lt;br /&gt;
&lt;br /&gt;
Sul on vaja iseseisval detailsemalt tutvuda (a) REST-stiiliga ja (b) tutvuda natuke graphql päringu/vastustekeelega (need on siis kaks täiesti erinevat asja):&lt;br /&gt;
* tutvuda levinumate soovitustega REST-stiilis APi-de ehitamiseks:&lt;br /&gt;
** Kui sa hästi ei mäleta REST-stiili põhipointe, siis sissejuhatuseks vaata üle [https://en.wikipedia.org/wiki/Representational_state_transfer wikipedia jutt]. &lt;br /&gt;
*** Põhi-idee on kasutada HTTP harilikke get, put, post &amp;quot;käske&amp;quot;, et öelda, kas tahad datat, lisad datat või uuendad datat, identifitseerida data-objekte urli abil stiilis http://miski.org/data/people/25 (siin on variante), anda vigade korral tagasi HTTP veakoode, kodeerida autentimisinfot ja muud metainfot HTTP päistesse ja püüda kodeerida API päringud ja vastused võimalikult kergelt arusaadavalt. &lt;br /&gt;
*** Pane tähele, et viisid otsingupäringu (inimesed nimega &amp;quot;Jaan&amp;quot;), vastuste arvu (ntx max 100) ja akna/batchi (ntx alga 200-ndast), sorteerimise jne indikeerimiseks ei ole RESTi-stiilis konkreetselt soovitatud, igaüks teeb kuidas tahab: ODATA allpool pakub oma soovitusi, aga need ei ole arusaadavalt kohustuslikud või &amp;quot;REST&amp;quot; stiili osad.&lt;br /&gt;
** Tutvu siin peatüki alguses juba viidatud Microsofti [https://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design api design soovitustega], täiendavalt võib uurida [https://github.com/Microsoft/api-guidelines/blob/master/Guidelines.md lisadetaile]&lt;br /&gt;
** Tutvu Google soovitustega: [https://google.aip.dev/1 AIP].&lt;br /&gt;
** Hea mõte on lisaks võtta alternatiivina leiad [https://pages.apigee.com/eBook-Web-API-Design-The-Missing-Link-reg.html?int_source=resources-main&amp;amp;int_medium=website&amp;amp;int_campaign=ebook&amp;amp;int_content=web-api-design-missing-link sellelt urlilt] api disaini väike raamat ja sellega tutvuda.&lt;br /&gt;
** Vaata [https://www.odata.org/getting-started/ odata] veidi eksootilisemaid, aga autoriteetse standardiorganisatsiooni oasis soovitusi REST stiilis API ehitamiseks, konkreetselt alusta [https://www.odata.org/getting-started/understand-odata-in-6-steps/ kiirsissejuhatusega], siis loe [https://www.odata.org/getting-started/basic-tutorial/ basic tutorial] ja lõpuks tutvu kiirelt [http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part2-url-conventions.html pika standardidoku] peatükiga 5: [http://docs.oasis-open.org/odata/odata/v4.0/errata03/os/complete/part2-url-conventions/odata-v4.0-errata03-os-part2-url-conventions-complete.html#_Toc453752356 query options]&lt;br /&gt;
** Väike [[pure-rest/odata/cgi stiilide võrdlus]]&lt;br /&gt;
* tutvuda lühidalt graphql-ga: tegu siis hoopis teistsuguse asjaga kui REST: graphql ei ole stiil, vaid täiesti konkreetne päringute/vastuste keel a la sql, mille töötas välja facebook:&lt;br /&gt;
** Alusta [https://en.wikipedia.org/wiki/GraphQL wikipedia] kiirülevaatest&lt;br /&gt;
** Tähelepanek: graphql ülesseadmine oma data peale ei ole lihtne ülesanne: ilmselt ei jaksa sa ise programmeerida päringukeele parserit/otsimootorit jne. Levinud lahendused on seada üles [https://www.apollographql.com/docs/apollo-server/getting-started/ Apollo server], ja progeda sinna juurde päringud oma andmebaasi, või seada üles [https://github.com/graphql/graphql-js graphql.js] server ja teha sinna juurde päringud. Kumbki on suurem töö, kui lihtsa REST api ehitamine.&lt;br /&gt;
** Loe läbi [https://phil.tech/api/2017/01/24/graphql-vs-rest-overview/ rest-vs-graphql] jutt&lt;br /&gt;
** Loe läbi [https://graphql.org/learn/ grapqhl kiirtutorial] (lehekülgede lõpus link järgmisele)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vt ka suured avalikud andme-apid:&lt;br /&gt;
&lt;br /&gt;
: [https://developers.google.com/apis-explorer/#p/ google api explorer]&lt;br /&gt;
: [https://google.aip.dev/ google api style guidelines]&lt;br /&gt;
: [[Andme-apide märkmed loengust|Andme-apide näiteid]]&lt;br /&gt;
: [https://techcrunch.com/2018/04/04/facebook-instagram-api-shut-down/ facebook api limitations/shutdowns in 2018]&lt;br /&gt;
&lt;br /&gt;
== Paralleelrehkendused ja konsensus ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Data synchronization, DHT, start distributed ledger: 2.märts  ===&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NB!&amp;lt;/font&amp;gt;This lecture will be the following recording from 2024 pluss self-study reading and experiments only, not in the lecture room:&lt;br /&gt;
&lt;br /&gt;
[http://turing.cs.ttu.ee/~tanel.tammet/dht_blockchain_intro.mp4 Recording]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Sissejuhatus teemasse: [[andmete sünkroniseerimine]]. &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Plokiahel:&lt;br /&gt;
&lt;br /&gt;
*Alustame [[Kriitiline taust blockchaini mõistmiseks]] teemadesse. Palun süvene neisse materjalidesse lisaks loengus räägitule.&lt;br /&gt;
* Kindlasti süvene [https://andersbrownworth.com/blockchain/ blockchaini põhimõtete demosse]: vajuta üleval &amp;quot;Hash&amp;quot;, &amp;quot;Block&amp;quot;, &amp;quot;Blockchain&amp;quot; linkidele ja proovi igal lehel ise datat muuta ja &amp;quot;Mine&amp;quot; nupule vajutada. &amp;quot;Mine&amp;quot; teeb proof-of-worki ehk otsib random stringi (nonce) mille lisamisel datale saame mitme nulliga algava hashi. Hea mõte on vaadata ka  [https://andersbrownworth.com/blockchain/ sama saidi videosid]&lt;br /&gt;
*[[Media:plokiahel_tt.pdf|detailsem plokiahela ülevaade]]  &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E2&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Huvi pärast vaata ka [https://alphabill.org/ Guardtime AlphaBill projekti], [https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=9834329 siin artikkel]: üliskaleeritav plokiahela-süsteem.&lt;br /&gt;
&lt;br /&gt;
* [http://lambda.ee/w/images/8/84/Blockchain_lecture_1.pdf Dirk Draheimi materjal samal teemal: mitmete komponentide väga head illustratsioonid]&lt;br /&gt;
&lt;br /&gt;
Kasulikke linke spetsiifilise infoga: [https://coinmarketcap.com/all/views/all/ market cap], [https://www.blockchain.com/explorer blockchain explorer], [https://en.bitcoin.it/wiki/Main_Page Bitcoin wiki]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Blockchain continues ja DHT: 9 märts ===&lt;br /&gt;
&lt;br /&gt;
Algul jätkame eelmise loengu lõpu materjalidega.&lt;br /&gt;
&lt;br /&gt;
Seejärel distributed hash tables (DHT) :&lt;br /&gt;
&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Distributed_hash_table  ülevaade wikipedias] &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E1&amp;lt;/font&amp;gt;&lt;br /&gt;
* Chord:&lt;br /&gt;
:Põhimaterjal: [https://www.cse.buffalo.edu/~okennedy/courses/cse704fa2012/8.1-Chord.ppt Chordi põhimõtted] &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E2&amp;lt;/font&amp;gt;.  Täiendavalt võib vaadata [https://people.eecs.berkeley.edu/~kubitron/courses/cs294-4-F03/slides/lec03-chord.ppt seda presentatsiooni] visualiseeritud algoritmidega (ppt presentatsioonirezhiimis!) ja eriti detailideks [https://www.kth.se/social/upload/51647996f276545db53654c0/3-chord.pdf seda presentatsiooni] (seda varianti kasutame ka loengus!).&lt;br /&gt;
&lt;br /&gt;
:Lisaks tasuks veidi uurida artikleid [http://en.wikipedia.org/wiki/Chord_%28peer-to-peer%29 wikipedia] sissekande lõpus (external links)&lt;br /&gt;
* Kademlia:&lt;br /&gt;
:Materjal [http://www.cs.uiowa.edu/~ghosh/kademlia.ppt presentatsioon autoritelt]&lt;br /&gt;
:Täiendavalt [https://github.com/ntoll/p4p2p/blob/master/papers/maymounkov-kademlia-lncs.pdf autorite artikkel] ja eriti hea [https://www.kth.se/social/upload/516479a5f276545d6a965080/3-kademlia.pdf detailsem presentatsioon]&lt;br /&gt;
* Kademliat kasutav hajutatud failisüsteem: [https://docs.ipfs.io/ IPFS]&lt;br /&gt;
* Natuke sarnase ideega mõõdukalt lihtne andmestruktuur (mitte hajutatud): [https://en.wikipedia.org/wiki/Skip_list skip list]&lt;br /&gt;
&lt;br /&gt;
=== Konsensus hajutatud süsteemides: 16. märts. ===&lt;br /&gt;
&lt;br /&gt;
Siin blokis asume tegelema keerumakate teooria-teemade lugemisega: infovahetus ja &amp;lt;b&amp;gt;konsensus hajutatud süsteemides&amp;lt;/b&amp;gt;, kus midagi võib rikki minna. Ehk, kuidas saavutada, et hajutatud süsteem funktsioneeriks ok, kui mingid osad on katki või kui mõni osa teeb meelega jama, et teisi segada? See on üks fundamentaalsemaid hajutatud süsteemide küsimusi üldse.&lt;br /&gt;
&lt;br /&gt;
Bitcoini plokiahela mehhanism ongi üks konkreetne võimalik mehhanism konsenuse saavutamiseks mitte-üleni-usaldusväärses hajutatud süsteemis.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Soenduseks loe läbi väga praktilisi hajussüsteemide probleeme kirjeldav [https://aws.amazon.com/builders-library/challenges-with-distributed-systems/ jutt Amazonilt] (siin [https://d1.awsstatic.com/builderslibrary/pdfs/challenges-with-distributed-systems.pdf otselink pdf-le]).&lt;br /&gt;
&lt;br /&gt;
* Lisaks tasub veidi vaadata [https://rai-skumar.medium.com/10000-foot-view-of-consensus-in-distributed-data-systems-145628b17285 kiirülevaadet] konsensuseteema eri harudest (mh hea pilt) ja sarnaselt [https://en.wikipedia.org/wiki/Consensus_(computer_science) wikipedia kiirülevaadet] harudest ja terminitest. Uuri kindlasti välja, mis tähendab sünkroonne/asünkroonne, partition tolerant/nontolerant, permissioned/permissionless.&lt;br /&gt;
&lt;br /&gt;
* Seejärel - põhiasjana - tööta süvenemisega läbi [http://turing.cs.ttu.ee/~tanel.tammet/5-Consensus.ppt hea presentatsioon põhjalikumaks arusaamiseks] &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E1&amp;lt;/font&amp;gt;  up to page 73 (allikas [https://people.disim.univaq.it/~guido.proietti/slide_algdist2017/ siin]. Sinu põhiülesanne on see presentatsioon &amp;lt;b&amp;gt;väga aeglaselt&amp;lt;/b&amp;gt; läbi töötada ja järjest slaididest ja asjadest aru saada. Lõpupoole läheb keeruliseks. King algoritmi detaile ei pea oskama, aga põhiideest tuleks aru saada. Ca lk 73 läheb värk päris keeruliseks ja sealt edasi võid katki jätta. &lt;br /&gt;
&lt;br /&gt;
Kui sul rohkem huvi, siis on olemas näiteks &amp;lt;!-- [http://people.disim.univaq.it/guido.proietti/Lecture%20notes%20Attiya.pdf põhjalik õpik] --&amp;gt; [http://lib.ysu.am/disciplines_bk/c95d04e111f3e28ae4cc589bfda1e18b.pdf põhjalik õpik] ja meie kasutatud presentatsiooni autoril on [http://people.disim.univaq.it/guido.proietti/lezioni_algdist2023.html põhjalik kursus] hajutatud süsteemidest (viimane sait paistab hetkel olevat maas: ehk taastub?)&lt;br /&gt;
&lt;br /&gt;
=== Konsensus hajutatud süsteemides jätkub 23. märts ===&lt;br /&gt;
&lt;br /&gt;
Selle nädala teemaks on &lt;br /&gt;
&lt;br /&gt;
* Rafti konsensusalgoritm&lt;br /&gt;
** [https://en.wikipedia.org/wiki/Raft_(algorithm) raftist] vt ka head [http://thesecretlivesofdata.com/raft/ visualisatsiooni] ja [https://raft.github.io/raft.pdf originaalartikkel] ja detailsemalt selgitav sari [https://codeburst.io/making-sense-of-the-raft-distributed-consensus-algorithm-part-1-3ecf90b0b361 osa 1], [https://codeburst.io/making-sense-of-the-raft-distributed-consensus-algorithm-part-2-4f12057b019a osa 2], [https://codeburst.io/making-sense-of-the-raft-distributed-consensus-algorithm-part-3-9f3a5cdba514 osa 3].&lt;br /&gt;
** ja vbl veidi ka [https://www.alibabacloud.com/blog/paxos-raft-epaxos-how-has-distributed-consensus-technology-evolved_597127 Raft/Paxos võrdlust].&lt;br /&gt;
* ja misasi on [https://en.wikipedia.org/wiki/CAP_theorem CAP theorem]. [https://medium.com/@ngneha090/understanding-the-cap-theorem-balancing-consistency-availability-and-partition-cb11c2b97e2b Lisaks 1 (definitsioonid)] &amp;lt;!-- ja [https://dev.to/katkelly/cap-theorem-why-you-can-t-have-it-all-ga1 lisaks 2] --&amp;gt; ja [https://www.ibm.com/think/topics/cap-theorem lisaks nosql-baasidest] ja [https://medium.com/@ajayverma23/demystifying-the-cap-theorem-understanding-consistency-availability-and-partition-tolerance-446de8452fac veel andmebaaside vaatest]&lt;br /&gt;
&lt;br /&gt;
Taustaks oluline: [[Phase king vs raft vs paxos vs zookeeper]]&lt;br /&gt;
&lt;br /&gt;
Pluss:&lt;br /&gt;
* Konsensuse [https://decentralizedthoughts.github.io/start-here/ materjalikogu] ja [https://a16zcrypto.com/posts/article/consensus-canon/ veel üks]&lt;br /&gt;
&amp;lt;!-- * Täiendavalt konsensusest, hulk algoritme: [https://ac.informatik.uni-freiburg.de/teaching/ss_15/dist_sys/lectures/06_Consensus_p2.pdf osa 1 (shared memory)] ja edasi message-passing [https://ac.informatik.uni-freiburg.de/teaching/ss_15/dist_sys/lectures/06_Consensus_p2.pdf osa 2] ja [https://ac.informatik.uni-freiburg.de/teaching/ss_15/dist_sys/lectures/06_Consensus_p3.pdf osa 3] --&amp;gt;&lt;br /&gt;
* veidi [https://www.geeksforgeeks.org/practical-byzantine-fault-tolerancepbft/ practical byzantine fault tolerance (pbft)] teemal.&lt;br /&gt;
&lt;br /&gt;
=== Fork ja thread: 30 märts ===&lt;br /&gt;
&lt;br /&gt;
Fork/thread loengumaterjal: [[Media:Processes_fork_thread.pptx|Processes_fork_thread.pptx]], [[Media:Processes_fork_thread.pdf|Processes_fork_thread.pdf]]. &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Loengunäited paralleelvärkidest 2026]]&lt;br /&gt;
&lt;br /&gt;
Parallelismi baasmehhanismid tavaprogrammides, konkreetselt fork, thread ja shared memory. Uurime neid asju C/opsüsteemi tasemel: abstraktsemates keeltes kasutatakse neidsamu C/opsüsteemi mehhanisme. Sul on vaja (a) aru saada, mida need  mehhanismid teevad, (b) panna käima näited: &lt;br /&gt;
* [http://www.csl.mtu.edu/cs4411.ck/www/NOTES/process/fork/create.html  fork]&lt;br /&gt;
* [https://www.cs.cmu.edu/afs/cs/academic/class/15492-f07/www/pthreads.html threads] tutorial ja sarnane [https://randu.org/tutorials/threads/ tutorial]&lt;br /&gt;
* [http://www.cs.kent.edu/~ruttan/sysprog/lectures/shmem/shmem.html shared memory]&lt;br /&gt;
* [http://stackoverflow.com/a/16207592 Thread, Queue ja Lock] Pythonis&lt;br /&gt;
* [https://docs.python.org/3/library/multiprocessing.html multiprocessing] Pythonis&lt;br /&gt;
* [https://docs.python.org/3/library/threading.html threading] Pythonis&lt;br /&gt;
* [https://beej.us/guide/bgipc/ Beej&#039;s guide to interprocess communication], vaata ka [https://beej.us/guide/bgc/html/split/multithreading.html#multithreading multithreading chapter] in Beej&#039;s guide to C programming&lt;br /&gt;
&lt;br /&gt;
Viimaste taustaks on kasulik vaadata korra [https://www.tecmint.com/linux-process-management/ protsesside managementi linuxis].&lt;br /&gt;
&lt;br /&gt;
Näidete käimapanekuks on väga soovitav kasutada linuxit või maci: threadid ja shared memory (aga mitte fork) on olemas ka windowsis, aga ülaltoodud materjalide&lt;br /&gt;
näited on linuxi (üldisemalt, unixi) näited. Logi sisse dijkstrasse, kasuta mõnda muud linuxi masinat, millel sulle ligipääs, või pane windows 10s käima wsl (windows subsystem for linux). &lt;br /&gt;
Kui sul juba ei ole installeeritud C kompilaatorit, installeeri gcc või clang.&lt;br /&gt;
&lt;br /&gt;
Soovitus kuulata [https://lexfridman.com/jim-keller/ Jim Kelleri episoodi &amp;quot;Moore’s Law, Microprocessors, Abstractions, and First Principles&amp;quot;] heast ja populaarsest [https://lexfridman.com/ai/ ai podcastist]: Jim räägib mh pikemalt protsessori-sisesest parallelismist ja automaatsest branchi-ennustamisest.&lt;br /&gt;
&lt;br /&gt;
=== Distributed databases and e-government IT systems: 6. april  ===&lt;br /&gt;
&lt;br /&gt;
We will jump into the examples of distributed systems before coming back to low-level stuff such as locking/transactions next week.&lt;br /&gt;
&lt;br /&gt;
Themes:&lt;br /&gt;
&lt;br /&gt;
* [[Hajutatud andmebaaside teema lahtikirjutus ja lugemisülesanded]]&lt;br /&gt;
* [[Lühiülevaade riigi infosüsteemist]]&lt;br /&gt;
* X-road/UXP: [[x-tee märkmed loengust]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- : this will be covered in detail by Margus Freudenthal in a separate lecture. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Lukustamine ja paralleelprotsessid: 13. aprill ===&lt;br /&gt;
&lt;br /&gt;
NB! Iseõpe Priidu videosalvestusest (ilmub siia esmaspäeval)&lt;br /&gt;
&lt;br /&gt;
Selle nädala eesmärk on aru saada lukustamise baasmehhanismidest ja transaktsioonidest. &lt;br /&gt;
&lt;br /&gt;
Lukustamine on vajalik paralleelsete protsesside juures, mis kasutavad ühist&lt;br /&gt;
mälujuppi / muutujat, kas siis näiteks threadide ühises mäluosas või shared memorys.&lt;br /&gt;
&lt;br /&gt;
Lukustamise jaoks on mitu erinevat mehhanismi ja kasutusstenaariumi ning nad&lt;br /&gt;
vajavad veidi tuge protsessorilt spetsiifiliste atomaarsete käskude näol.&lt;br /&gt;
&lt;br /&gt;
Järgmine nädal liigume lukustamise juurest edasi paralleelsusse andmebaasides: seal&lt;br /&gt;
on jällegi hulk võimalikke probleeme ja mitmeid lahendusviise, mis alusena kasutavad&lt;br /&gt;
baas-lukustamismehhanisme.&lt;br /&gt;
&lt;br /&gt;
Loe selles järjekorras ja vaata läbi ka need kolm lühikest loengut:&lt;br /&gt;
&lt;br /&gt;
* [[Media:Locking_v2.ppt|Lukustamise sissejuhatav presentatsioon]]: &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E2&amp;lt;/font&amp;gt; räägib alustuseks praktilistest vajadustest ja põhimehhanismidest.&lt;br /&gt;
* [[Media:na2_sync.pdf|Detailsem konspekt lukustamise kohta]]: semafor, mutexid ja detailselt spinlockist. Loe seda &amp;lt;b&amp;gt;aeglaselt&amp;lt;/b&amp;gt;!&lt;br /&gt;
* [https://www.youtube.com/watch?v=cEcNLfXEaZs&amp;amp;t=2s spinlocki loeng] arusaamise hõlbustamiseks&lt;br /&gt;
* [https://www.youtube.com/watch?v=yB8sm-pwvZo spinlocki riistvara-tuge seletav loeng]&lt;br /&gt;
* [https://www.youtube.com/watch?v=8wcuLCvMmF8&amp;amp;t=440s loeng semafor vs mutex]: mis on mis&lt;br /&gt;
&lt;br /&gt;
Lisaks võib lugeda:&lt;br /&gt;
:[[Media:11-transactions.pdf|Introduction to Transactions (slaidid)]] &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E2&amp;lt;/font&amp;gt; &lt;br /&gt;
:Sünkroniseerimisprimitiivid: [[Media:na2_sync_slides.pdf|slaidid]]&lt;br /&gt;
&lt;br /&gt;
== Näited hajutatud süsteemidest ==&lt;br /&gt;
&lt;br /&gt;
=== Data warehouses, data lineage and related issues ===&lt;br /&gt;
&lt;br /&gt;
The talk will be given by Kalle Tomingas from [https://www.oriongovernance.com/ Orion governance]. Vt taustaks ka [https://digikogu.taltech.ee/et/item/a05c55e4-054a-4758-9b0b-e2671105055c dissertatsiooni].&lt;br /&gt;
&lt;br /&gt;
=== X-road / UXP ===&lt;br /&gt;
&lt;br /&gt;
The X-road/UXP (see [[x-tee märkmed loengust]]) &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E2&amp;lt;/font&amp;gt; will be covered in detail by Margus Freudenthal.&lt;br /&gt;
&lt;br /&gt;
See &lt;br /&gt;
* [https://livettu.sharepoint.com/:v:/r/sites/Hajusssteemid2025/Shared%20Documents/General/Recordings/Hajuss%C3%BCsteemide%20kursuse%20loeng%202025-20250422_160133-Meeting%20Recording.mp4?csf=1&amp;amp;web=1&amp;amp;e=v16wn1&amp;amp;nav=eyJyZWZlcnJhbEluZm8iOnsicmVmZXJyYWxBcHAiOiJTdHJlYW1XZWJBcHAiLCJyZWZlcnJhbFZpZXciOiJTaGFyZURpYWxvZy1MaW5rIiwicmVmZXJyYWxBcHBQbGF0Zm9ybSI6IldlYiIsInJlZmVycmFsTW9kZSI6InZpZXcifX0%3D the recording]&lt;br /&gt;
* [[Media:Distributed-systems-xroad2025.pdf|lecture materials]] &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;E1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== EU digital passport and the CIRPASS project ===&lt;br /&gt;
&lt;br /&gt;
This week the lecture will be on Teams only, not in the lecture room. Tanel will focus on the details of the [https://cirpass2.eu/ digital product passport] architecture, ideas and politics around it.&lt;br /&gt;
&lt;br /&gt;
Links and materials:&lt;br /&gt;
&amp;lt;!-- * [https://data.europa.eu/en/news-events/news/eus-digital-product-passport-advancing-transparency-and-sustainability EU digital passport --&amp;gt;&lt;br /&gt;
* [https://eur-lex.europa.eu/eli/reg/2024/1781/oj  ESPR act: the law introducing EU digital passports]&lt;br /&gt;
* [https://cirpass2.eu/ CIRPASS-2: the EU R&amp;amp;D project for developing the digital passport architecture, knowledge representation etc]&lt;br /&gt;
* [[Media:cirpass_draft.pdf|draft full architecture]]&lt;br /&gt;
* [[Media:dpp_simple.pdf|draft simple architecture]]&lt;br /&gt;
* [[Media:dpp_simple_2024.pdf|early draft of the simple architecture]]&lt;br /&gt;
&lt;br /&gt;
===  Microservices, scaling large systems and related ===&lt;br /&gt;
&lt;br /&gt;
Lecture will be on teams only (not the lecture room) and very briefly at the beginning: administrative stuff.&lt;br /&gt;
&lt;br /&gt;
The main task is to look through the whole lecture recording from 2023 about [http://turing.cs.ttu.ee/~tanel.tammet/hajussysteemid_skaleerimine.mp4 scaling large distributed systems]. Slides in English, speech in Estonian.&lt;br /&gt;
&lt;br /&gt;
===  Consultation for the exam ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== X-road / UXP: 22. April ===&lt;br /&gt;
&lt;br /&gt;
The X-road/UXP (see [[x-tee märkmed loengust]]) will be covered in detail by Margus Freudenthal.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The X-road/UXP (see [[x-tee märkmed loengust]]) will be covered in detail by Margus Freudenthal.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Stream processing, message queues ja Apache Kafka ===&lt;br /&gt;
&lt;br /&gt;
Materials to be added later.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
=== Hajutatud andmebaasid ja riigi it-süsteemid  ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Kaks teemat:&lt;br /&gt;
&lt;br /&gt;
* [[Hajutatud andmebaaside teema lahtikirjutus ja lugemisülesanded]]&lt;br /&gt;
* [[Lühiülevaade riigi infosüsteemist]] ja [[x-tee märkmed loengust]]&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Kursus]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Fail:Machine_Learning_2022.pdf&amp;diff=20155</id>
		<title>Fail:Machine Learning 2022.pdf</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Fail:Machine_Learning_2022.pdf&amp;diff=20155"/>
		<updated>2022-11-11T13:52:45Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Sissejuhatus_infotehnoloogiasse&amp;diff=20154</id>
		<title>Sissejuhatus infotehnoloogiasse</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Sissejuhatus_infotehnoloogiasse&amp;diff=20154"/>
		<updated>2022-11-11T13:52:25Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* 10. nädal: Masinõpe ja plokiahelad */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;...ajalugu, suunad, põhialused, tehnoloogia, äri.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
[[Pilt:matrix.jpg|left|IT]]&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
Ainekood: ITI0101&amp;lt;br&amp;gt;&lt;br /&gt;
Link: http://www.lambda.ee/wiki/Sissejuhatus_infotehnoloogiasse&amp;lt;br&amp;gt;&lt;br /&gt;
Link ÕISi https://ois.ttu.ee/aine/iti0101&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Õppejõud: [http://www.facebook.com/tanel.tammet Tanel Tammet]&amp;lt;br&amp;gt;&lt;br /&gt;
Kontakt: tanel.tammet@ttu.ee, 6203457, ICT 426&amp;lt;br&amp;gt;&lt;br /&gt;
olemas on ka [[iti0101 2021| 2021 aasta arhiiv]] kõigi eelmise aasta materjalidega.&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NB!&amp;lt;/font&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
30. oktoobril kavas mõlemid loengud teistelt õppejõududelt: Marko Kääramees räägib kell 12 algoritmidest ja nende keerukusest ning Erki Eessaar räägib kell 14 (mitte 13:45!) andmebaasidest.&lt;br /&gt;
&lt;br /&gt;
3. kontrolltöö on nüüd uuesti üleval, laupäeva hommikuni. Kontrolltöö on kolitud uuele serverile (uus url) ja on nüüd https peal, vt allpool.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Kursuse eesmärk ==&lt;br /&gt;
&lt;br /&gt;
* Anda kokkusurutud ülevaade informaatikast tervikuna.&lt;br /&gt;
* Anda ajalooline ülevaade IT teooria, tehnoloogia ja äri arengust.&lt;br /&gt;
* Tutvustada edaspidiseid teemasid/loengukursusi stuudiumi vältel. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Live feed ==&lt;br /&gt;
&lt;br /&gt;
[https://echo360.org.uk/section/ba7f2cf4-d4b1-4f10-8f6a-a779a7b38a54/public Siin lehel] on loengu ajal live videofeedi link. 100% garantiid, et ok töötab, ei ole. Otsi loetelust selle päeva värk ja proovi järgi!&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
== Videosalvestused ==&lt;br /&gt;
&lt;br /&gt;
Loengu ajal on kättesaadav [https://echo360.org.uk/section/2aadcd43-23d3-4408-b972-a72e6937e24e/public live feed]. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://teams.microsoft.com/l/meetup-join/19%3a14934105ce95452a8c610f32079fd1cc%40thread.tacv2/1666947638862?context=%7b%22Tid%22%3a%223efd4d88-9b88-4fc9-b6c0-c7ca50f1db57%22%2c%22Oid%22%3a%22e3e55dca-e89b-46ae-b8ee-1d158e79281d%22%7d 28 oktoober: teamsi alternatiiv, kui eelmine ei tööta]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Videoalvestuste lingid leiad allpool nädalate loengupresentatsioonide järel.&lt;br /&gt;
&lt;br /&gt;
== Maht, aeg, tulemus ==&lt;br /&gt;
&lt;br /&gt;
Kaks järjestikkust loengut nädalas reedeti kuuenda korpuse auditooriumis U06A-229. &lt;br /&gt;
&lt;br /&gt;
* Reedel kell 12:00: loeng eksamiks vajalike materjalide ja koduülesannetega. Õppejõud Tanel Tammet.&lt;br /&gt;
* Reedel kell 13:45: süvaloengud kitsamatel teemadel, tervikkursuste ülevaated ja teemasid tööstusest. Erinevad õppejõud. Ka siin antakse vahel koduülesandeid.&lt;br /&gt;
&lt;br /&gt;
Sessiooniõppe sissejuhatav loeng on reedel, 2 septembril kell 17:45-19:15 ruumis ICT-315 (Akadeemia tee 15A)&lt;br /&gt;
&lt;br /&gt;
Kursus lõpeb eksamiga. Eksam on kirjalik, kaks või enam tundi, kümme küsimust ja ülesannet.&lt;br /&gt;
&lt;br /&gt;
Kursuse käigus on iga nädal vaja võrgus täita valikvastustega paarikümne küsimusega mikro-kontrolltöö ühe nädala materjalide kohta, aega selleks on loengupäevast kuni järgmise loengupäevani (siis tulevad uued materjalid). Koduülesanded - kui neid antakse - on kontrolltöö üheks osaks.&lt;br /&gt;
&lt;br /&gt;
Nädala kontrolltööd publitseeritakse loengupäeva õhtul või järgmise päeva hommikul.&lt;br /&gt;
&lt;br /&gt;
Samuti antakse kursuse käigus teha väikeseid harjutusi: need tuleb teha iseseisvalt ja tulemused vastata samades mikro-kontrolltöödes. &lt;br /&gt;
&lt;br /&gt;
Kursuse hinne arvutatakse nii: eksamipunktid (0...100) + kontrolltööde summaarne tulemus. Positiivsed hinded algavad 50 punktist. Kaks viga kontrolltöös on üks veapunkt, neli kaks veapunkti jne, tegemata kontrolltöö on viis veapunkti. Tudengi kõigi kontrolltööde miinuspunktide summast lahutatakse keskmine kontrolltööde miinuspunktide summa, vahe ongi summaarne tulemus.&lt;br /&gt;
&lt;br /&gt;
== Kontrolltööd ja koduülesanded ==&lt;br /&gt;
&lt;br /&gt;
NB! Siin uued [[2022 it sissejuhatuse kontrolltööde vahetulemused: 1-7 töö]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;[https://turing.cs.ttu.ee/~Tanel.Tammet/cgi-bin/qshow9.py 9. nädala kontrolltöö siin: tarkvara arhitektuur ja tehisintellekt]&amp;lt;/b&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Vabatarkvara ja litsentsiküsimuste jaoks uuri ise loengumaterjalide juures viidatud Gnu veebilehti: [https://www.gnu.org/philosophy/ see], [https://www.gnu.org/licenses/licenses.html see] ja [https://www.gnu.org/licenses/license-list.html see].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Kontrolltöö viimaseks ülesandeks teha ise hästi lihtne veebileht. Ülesannet arvestatakse punktidena kolmekordselt (nagu kolme tava-küsimust). Puuduliku lehe eest saab vähem punkte. Leht peab vastama järgmistele nõuetele ja pead sisestama selle lehe urli viimase küsimuse vastuse lahtrisse. Sisestada tuleb täisurl, ehk, ta peab algama http-ga või https-ga, nagu näiteks https://taltech.ee/&lt;br /&gt;
&lt;br /&gt;
:* Leht peab olema internetis vabalt kättesaadav, mitte näiteks asuma sinu läptopis või nõudma parooli.&lt;br /&gt;
:* Leht peab jääma kättesaadavaks vähemalt novembri lõpuni.&lt;br /&gt;
:* &amp;lt;b&amp;gt;Lehel peab kusagil olema sinu tudengikood&amp;lt;/b&amp;gt; (sama, mis sisestad kontrolltöö ülemisse lahtrisse: piisab ainult numbritest). Selle asukoht, kujundus jms ei ole oluline.&lt;br /&gt;
:* Leht peab olema html keeles, mitte plaintekst või pilt või pdf fail vms.&lt;br /&gt;
:* Leht peab olema üleni sinu enda tehtud: ära copy-paste kusagilt midagi.&lt;br /&gt;
:* Sa ei tohi kasutada ühtegi nö valmissüsteemi, mis sellise lehe genereeriks, näiteks Facebooki, Wikipediat, blogi vms.&lt;br /&gt;
:* Lehel peab olema vähemalt üks tabel (table tag), millel on mingi sisu, ja vähemalt üks pealkiri (h1,h2,h3,h4 vms tag)&lt;br /&gt;
:* Lehel peab olema natuke juttu (vähemalt 100 tähemärki)&lt;br /&gt;
:* Lehel peab olema vähemalt üks pilt (img tag ja selle src atribuudis pildi url: soovitus kasutada täisurli)&lt;br /&gt;
:* Lehel peab olema vähemalt üks link https://taltech.ee/ lehele (kasuta a tagi ja selle href atribuuti)&lt;br /&gt;
:* Tagid tuleb kirjutada väikeste tähtedega.&lt;br /&gt;
:* Kõigis muudes punktides on sul lehe sisu osas vabad käed! Millest seal lehel kirjutad ja mis pildi sinna paned või kas leht on ilus/kole/lihtne/keeruline, tulemust ei mõjuta.&lt;br /&gt;
&lt;br /&gt;
Lehe tegemiseks loe [https://www.w3schools.com/html/default.asp w3schools&#039;i html tutoriali] esimesi peatükke ja vaata vasakult menüüst eraldi &amp;quot;HTML Headings&amp;quot;, &amp;quot;HTML links&amp;quot;, &amp;quot;HTML images&amp;quot; ja &amp;quot;HTML tables&amp;quot; peatükke.&lt;br /&gt;
&lt;br /&gt;
Kui sa juhtumisi pääsed ligi mõnele veebiserverile, siis on väga ok panna leht sinna serverisse üles.&lt;br /&gt;
&lt;br /&gt;
Kui sa ei ole varem veebilehte teinud, siis soovitan teha seda [https://pages.github.com/ github pages] abil: sa pead tegema [https://github.com/  githubi] konto, logima sinna sisse ja siis järgima õpetust, järgnevas on kaks head õpetust välja valitud:&lt;br /&gt;
* [https://help.github.com/en/github/working-with-github-pages/creating-a-github-pages-site Ametlik õpetus], mis on suhteliselt lihtne, aga mitte kõige lihtsam.&lt;br /&gt;
* [https://www.ostraining.com/blog/coding/github-pages/ See on eriti lihtne õpetus]&lt;br /&gt;
&lt;br /&gt;
Mõistlik on ehitada leht kõigepealt valmis oma läptopis lihtsa tekstiredaktoriga (programmeerimiseks sobivad redaktorid on ka lehe tegemiseks head) ja kontrollida ta üle oma brauseriga: ava brauserist oma lehe fail (failinime lõpuks pane .html). Kui kõik paistab ok, alles siis pane ta githubi või oma serverisse üles.&lt;br /&gt;
&lt;br /&gt;
Pane tähele, et saad kõik vajaliku teha githubi veebiaknas teksti redigeerides, sul ei ole vaja kasutada giti käsurea programmi või github desktoppi või Jekylli vms.&lt;br /&gt;
 &lt;br /&gt;
Sarnasel viisil saab lehe teha ka näiteks [https://about.gitlab.com/product/pages/ gitlab pages] abil, see on samuti väga ok variant.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Soovitusi selle nädala ülesannete jaoks:&lt;br /&gt;
&lt;br /&gt;
* Kontrolltöö teises pooles on mitu ülesannet elektroonikaskeemide kohta: nende ülesannete jaoks installeeri endale [http://math.hws.edu/TMCM/java/index.html Ecki simulaatorid].  Need simulaatorid on kirjutatud Javas ja päris vanad, aga töötavad endiselt OK. [[Ecki laborite allalaadimine ja katsetamine|Siit leiad õpetuse, kuidas neid installeerida ja katsetada]]. Konkreetselt on sul vaja [http://math.hws.edu/TMCM/java/classes/xLogicCircuits.jar xLogicCircuits.jar] käima saada.  Javaga asud niikuinii lähisemestritel tegelema ja selle installeerimine ja kasutamine on vajalik oskus: installeerimine ja jar faili käimapanek ongi üks sisuline osa kontrolltöö ülesandest. Muide, osade simulaatorite jaoks on olemas ka  [https://math.hws.edu/eck/js/ uued javascripti variandid], mis töötavad kenasti brauseris.&lt;br /&gt;
 &lt;br /&gt;
* Väga soovitav -aga mitte kohustuslik - on ise lisaks harjutada: süvene 4-biti liitjasse, kuni sa temast korralikult aru saad. Loengu käigus tegime mõlemi teemaga algust, aga nüüd loe ise süvenemisega läbi, proovi ja tee mõlemist osast vähemalt üks harjutus, kus tuleb ise elektroonikaskeem ehitada:&lt;br /&gt;
**[http://math.hws.edu/TMCM/java/labs/xLogicCircuitsLab1.html Logic circuits]&lt;br /&gt;
**[http://math.hws.edu/TMCM/java/labs/xLogicCircuitsLab2.html Memory circuits]&lt;br /&gt;
Alternatiivina saad eri komponente katsetada ja 4 biti liitjat ehitada brauseris [https://logic.ly/demo/ logic.ly] abil.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Lausearvutuse ülesannete lahendamisel kasuta enesekontrolliks õppejõu süsteemi [https://logictools.org/prop.html logictools]: pane valem suurde valgesse sisestuskasti ja vajuta &amp;quot;Build&amp;quot; a &amp;quot;truth table&amp;quot; nuppu.&lt;br /&gt;
&lt;br /&gt;
* Unicode ülesannete jaoks guugelda, kuni leiad viisi õige number leida.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kontrolltöö ilmub siia peatükki lingina loengupäeva õhtuks või järgmise päeva hommikuks ja jääb üles järgmise loengupäevani, kuni tulevad uued küsimused.&lt;br /&gt;
&lt;br /&gt;
Kontrolltöö jaoks sisse logida ei ole vaja, täida vorm ja valikud ja vajutada &amp;quot;Salvesta&amp;quot; nuppu.&lt;br /&gt;
&lt;br /&gt;
Palun täida korrektselt alguse väljad matriklinumber, nimi ja email: nende järgi lähevad tulemused sulle arvesse. &amp;quot;Matriklinumber&amp;quot; on sinu tudengikood, a la 205384iadb.&lt;br /&gt;
&lt;br /&gt;
Kontrolltöö salvestamise järel sa ei näe, mis läks õigesti ja mis ei, ega mitu punkti said. Küll aga öeldakse sulle vastuseks, kas salvestamine&lt;br /&gt;
õnnestus või ei. Kui sa ei näe tulemust &amp;quot;Sinu vastus on salvestatud, aitäh!&amp;quot;, siis on sul mõni väli täitmata, võrguühendus katkes vms: sel juhul palun&lt;br /&gt;
kontrolli vormi sisu ja salvesta uuesti.&lt;br /&gt;
&lt;br /&gt;
Süsteem lubab - tehniliselt - sul salvestada vastuseid mitu korda, aga arvesse läheb ainult esimene.&lt;br /&gt;
&lt;br /&gt;
Vahetulemused pannakse üles ca kord kuus:&lt;br /&gt;
* [[2022 it sissejuhatuse kontrolltööde vahetulemused: 1-7 töö]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* [[2022 it sissejuhatuse kontrolltööde vahetulemused: 1-3 töö]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loengute plaan ja materjalid ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Kursusel ei ole ühtegi konkreetset õpikut.  Järgnevas on toodud iga loenguga seotud materjalid eraldi.&lt;br /&gt;
&lt;br /&gt;
Kursus jaguneb kaheks blokiks: esimene, lühem blokk on sissejuhatus ja ajaloopõhine tehnoloogiaülevaade, järgmised, põhiblokid on erinevad tehnoloogiad, arvutiteadus ja äri.&lt;br /&gt;
&lt;br /&gt;
Loengute plaan on esialgne, töö käigus ilmub siia kindlasti muutusi. Seega, täpselt adekvaatsed ja õiged on need materjalid, mille loeng on kas juba läbi või tuleb järgmisena: kõik tuleviku-loenguid puudutavad materjalid on vanad, ning saavad loengu kättejõudmise ajaks mingil määral modifitseeritud ja täiendatud. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Senised loengud peaksid olema vaadatavad [https://echo360.org.uk/section/72b980e1-bec7-4b3f-a3fe-3f9e93c9d90d/public sellelt lingilt]&lt;br /&gt;
&lt;br /&gt;
NB! Ei ole mingit garantiid, et loengud jäävad üles mitmeks kuuks või et kõik loengud võrku ilmuvad.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 1. nädal. Sissejuhatus: arvuti ja info, ajaloo algus ... 1940 ===&lt;br /&gt;
&lt;br /&gt;
2. september.&lt;br /&gt;
&lt;br /&gt;
* Kell 12: Sissejuhatus. Arvuti ja info kodeerimise põhimõtted.&lt;br /&gt;
:Loengumaterjal: [[Media:itsissejuhatus1a22.ppt|itsissejuhatus1a22.ppt]], [[Media:itsissejuhatus1a22.pdf|itsissejuhatus1a22.pdf]].&lt;br /&gt;
&lt;br /&gt;
* Kell 14: Varane ajalugu. Industrialiseerimine. Teoreetilised alused. Loogika. Esimesed arvutid.&lt;br /&gt;
:Loengumaterjal: [[Media:itsissejuhatus2a2.ppt|itsissejuhatus2a2.ppt]], [[Media:itsissejuhatus2a2.pdf|itsissejuhatus2a2.pdf]]&lt;br /&gt;
&lt;br /&gt;
* [https://echo360.org.uk/media/967fbf34-9afa-48ea-9666-f3678069c92f/public Loenguvideo]&lt;br /&gt;
&lt;br /&gt;
* Eksamiks: pead teadma suuruse-numbreid ja mida nad tähendavad: bitt, bait, kilobait, megabait jne; oskad selgitada, kuidas tähti kodeeritakse, mis on algoritm ja mis programm. Ajaloost: Kreeka loogikud, induktsioon, deduktsioon, süllogismid, lausearvutus (pead mh oskama tõeväärtustabelit koostada), Pascal, Leibniz, perfokaardid, kangasteljed, Babbage, Hollerith, colossus ja saksa krüptomasinad, Turing, Shannon, Zuse, esimesed programmeeritavad arvutid. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- * Neljapäeval: loeng jäi ära. Õppekavade ja teaduskonna ülevaade: erinevad õppejõud. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Lisaks esimesele loengule:&lt;br /&gt;
:* vaata väikest [http://www.youtube.com/watch?v=cYw2ewoO6c4&amp;amp;NR=1 Turingi masina videot]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
:* loe juttu ja [http://math.hws.edu/eck/cs120/s01/lab1/ mängi andmete esitamise appletiga]. Vajab javat ja sul brauseri all tõenäoliselt käima ei lähe. Seega kas: (a) loe [[Ecki laborite allalaadimine ja katsetamine | siit, kuidas Ecki laborid oma masinasse panna]] ja lae alla ning katseta laboriga [http://math.hws.edu/TMCM/java/classes/DataReps.jar DataReps.jar] mille jutu leiad [http://math.hws.edu/TMCM/java/labs/DataRepsLab.html#reps siit allosast Data Representations] alt (b) või säti brauser lubama valitud applette: [http://www.java.com/en/download/help/jcp_security.xml loe siit]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
:* loe läbi mõni nendest [https://en.wikipedia.org/wiki/Paul_Graham_(programmer) Paul Grahami] ([https://en.wikipedia.org/wiki/Y_Combinator Y combinatori] asutaja) esseedest: [http://www.paulgraham.com/nerds.html Why nerds are unpopular?], [http://www.paulgraham.com/lesson.html The lesson to unlearn], [http://www.paulgraham.com/think.html How to think for yourself].&lt;br /&gt;
:* [https://external-preview.redd.it/ihLiGBXOGFBWd_2UV9XyZM2hXQviZHmcFh1OAmCEnxE.png?auto=webp&amp;amp;s=9591f04e3a857441f63247c65830ac3e41047e5a valdkonnad]&lt;br /&gt;
:* some random notes [https://0x0f0f0f.github.io/blog/mindlanguagemachines/ on mind, language and machines]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
:* loe läbi: Tanel Tammet: [http://www.metsas.ee/et/tekstid/tanelt/inimlikkus_on_loomalikkus Inimlikkus on loomalikkus]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Lisaks teisele loengule:&lt;br /&gt;
:* [http://www.pld.ttu.ee/~kruus/diskmat/index.html Kruusi diskreetse matemaatika kursus!]&lt;br /&gt;
:* Paul Graham: [http://www.paulgraham.com/hs.html What you&#039;ll wish you&#039;d known]&lt;br /&gt;
:* Sama asi diskreetse matemaatika kursuses: harjuta lausearvutuse tõeväärtustabelite tegemist: vaata vanu eksamiülesandeid ([[Media:itsissejuhatus_eksamnaide1.pdf|1]], [[Media:itsissejuhatus_eksamnaide2.pdf|2]], [[Media:itsissejuhatus_eksamnaide3.pdf|3]]) tee ülesandeid ise juurde ja kasuta [http://logictools.org/prop.html logictools.org/prop.html] enesekontrolliks. Vajuta algul &amp;quot;help&amp;quot; nuppu, siis näed, kuidas valemeid kirjutada. Tõeväärtustabeli jaoks vajuta &#039;&amp;quot;Build&amp;quot; a truth table&#039; nuppu.&lt;br /&gt;
&amp;lt;!-- :* algus-1945: [http://www.maxmon.com/history.htm A history of computers] --&amp;gt;&lt;br /&gt;
&amp;lt;!-- :* Eck lab: [http://math.hws.edu/TMCM/java/labs/xTuringMachineLab.html Turing machines]. --&amp;gt;&lt;br /&gt;
:* [https://math.hws.edu/eck/js/turing-machine/TM.html Turingi masina simulaator] ja [http://morphett.info/turing/turing.html alternatiivne simulaator]&lt;br /&gt;
:* Alustada: [[Media:loogikasissejuhatus_raamat.html|Loogika aine ja ajalugu]]&lt;br /&gt;
:* [https://www.youtube.com/watch?v=JDogScg_pUI lõpmatuse osa] [http://www.youtube.com/results?search_query=dangerous+knowledge BBC dokumentaalsarjast]&lt;br /&gt;
:* Varastest masinatest: &lt;br /&gt;
:** [https://www.youtube.com/watch?v=K6NgMNvK52A Jacquard&#039;i kangasteljed]&lt;br /&gt;
:** [http://widespacer.blogspot.com/2015/11/the-hidden-secrets-of-qwerty.html QWERTY klaviatuuri päritolust] ja [http://repository.kulib.kyoto-u.ac.jp/dspace/bitstream/2433/139379/1/42_161.pdf teistsugune arvamus] ja [http://widespacer.blogspot.com/2016/03/the-lost-key-of-qwerty.html mõne eritähe ajalugu]&lt;br /&gt;
:** Näide olulisest analoogarvutist: [http://en.wikipedia.org/wiki/Norden_bombsight Norden bombsight]&lt;br /&gt;
:** Inglise krüptosaaga: [http://en.wikipedia.org/wiki/Colossus_computer  Colossus], [http://en.wikipedia.org/wiki/Alan_Turing Turing], sakslaste [http://en.wikipedia.org/wiki/Enigma_machine Enigma] ja [http://en.wikipedia.org/wiki/Lorenz_SZ_40/42 Lorenz SZ 40]&lt;br /&gt;
:** Esimesed digitaalsed elektriga töötavad arvutid: &lt;br /&gt;
:*** [http://www.zib.de/zuse/ Konrad Zuse]&lt;br /&gt;
:*** [https://en.wikipedia.org/wiki/Atanasoff%E2%80%93Berry_computer Atanasoffi elektronarvuti]&lt;br /&gt;
:*** [http://en.wikipedia.org/wiki/Harvard_Mark_I Mark I]: esimene programmeeritav elektromehaaniline arvuti.&lt;br /&gt;
:* Kuula [https://lexfridman.com/jim-keller/ Jim Kelleri episoodi &amp;quot;Moore’s Law, Microprocessors, Abstractions, and First Principles&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
=== 2. nädal: Keskajalugu 1940-1960 ja arvuti riistvara ===&lt;br /&gt;
&lt;br /&gt;
9. september.&lt;br /&gt;
&lt;br /&gt;
* Kell 12: Keskajalugu : II maailmasõda kuni kuuekümnendateni. Arvutid ja programmeerimine. Keeled ja rakendused. Integraalskeemid.&lt;br /&gt;
:Loengumaterjal: [[Media:Itsissejuhatus3o.ppt|Itsissejuhatus3o.ppt]], [[Media:Itsissejuhatus3o.pdf|Itsissejuhatus3o.pdf]].&lt;br /&gt;
&lt;br /&gt;
* Kell 14:00: arvuti riistvara: transistorid, loogikalülitused, aritmeetika, mälu, programmid.&lt;br /&gt;
:Loengumaterjal: [[Media:Itsissejuhatus_proc_21a.ppt|Itsissejuhatus_proc_21a.ppt]], [[Media:Itsissejuhatus_proc_21a.pdf|Itsissejuhatus_proc_21a.pdf]].&lt;br /&gt;
&lt;br /&gt;
* [https://echo360.org.uk/media/85aa2f94-6d85-4940-a05c-02055ffbe08c/public Loenguvideo]&lt;br /&gt;
&lt;br /&gt;
* Eksamiks: transistor, Samuel, Shockley semiconductor, Fortran, Fairchild, Sage, Texas instruments, integraalskeem, cobol, lisp, pdp-1, system 360, moore&#039;s law, intel, amd, Engelbart, Unix, esimene mikroprotsessor. Relee, lihtsad elektroonikaskeemid, mitme biti liitja ja lahutaja, lihtsad mälutüübid. Peaksid oskama ehitada väikese loogikavalemi järgi loogikakomponentidest elektroonikaskeemi, mis seda realiseerib, samuti koostada paaribitiste sisendite liitjat/lahutajat, samuti kolme eraldi biti liitjat ja trigerit.&lt;br /&gt;
&lt;br /&gt;
Lisaks esimesele loengule:&lt;br /&gt;
:* Paul Graham: [http://www.paulgraham.com/college.html Undergraduation] pluss järelmärkused: [http://www.paulgraham.com/undergrad2.html more advice for undergrads]&lt;br /&gt;
:* [http://www.columbia.edu/cu/computinghistory/tabulator.html IBM-i varased mehaanilised tabulaatorid]&lt;br /&gt;
:* [https://en.wikipedia.org/wiki/Magnetic-core_memory ferriitmälu]&lt;br /&gt;
:* [http://en.wikipedia.org/wiki/Fortran Fortran] ja [http://en.wikipedia.org/wiki/IBM_704 IBM 704] ja taustaks [http://en.wikipedia.org/wiki/List_of_vacuum_tube_computers raadiolampidega arvutite suur tabel]&lt;br /&gt;
:* [https://en.wikipedia.org/wiki/Manchester_computers Brittide varaseimad arvutid Manchesteris]&lt;br /&gt;
:* [http://pdp-1.computerhistory.org/pdp-1/ PDP-1 restoration project], ,[https://www.youtube.com/watch?v=Rmvb4Hktv7U Spacewar: esimene graafiline arvutimäng], [http://www.computerhistory.org/revolution/computer-games/16/189/2213 ja ajaloo-video],[http://www.masswerk.at/spacewar/ töötav versioon javascriptis] ja taustaks [http://en.wikipedia.org/wiki/First_video_game esimeste arvutimängude tabel]&lt;br /&gt;
:* [http://www.youtube.com/watch?v=USyoT_Ha_bA Ivan Sutherland&#039;s sketchpad video] vt ka [http://en.wikipedia.org/wiki/Sketchpad sketchpadi artikkel]&lt;br /&gt;
:* [http://sloan.stanford.edu/MouseSite/1968Demo.html Douglas Engelbart &amp;quot;mother of all demos&amp;quot;]&lt;br /&gt;
:* [http://en.wikipedia.org/wiki/Semi_Automatic_Ground_Environment SAGE]&lt;br /&gt;
:* [http://en.wikipedia.org/wiki/Counterculture_of_the_1960s Counterculture] &lt;br /&gt;
:* [http://en.wikipedia.org/wiki/Silicon_Valley Silicon Valley] vt ka [https://www.google.com/maps/d/viewer?mid=zc_2vLrMI9XY.kOvBnM9xQmuA&amp;amp;hl=en_US seda kaarti]&lt;br /&gt;
:* Whole earth catalog [http://en.wikipedia.org/wiki/Whole_Earth_Catalog wikis]&amp;lt;!-- ja [http://www.wholeearth.com/ skaneeritud sisu]--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Lisaks teisele loengule riistvarast:&lt;br /&gt;
:* [https://lexfridman.com/jim-keller/ Jim Kelleri episood] A.I. podcastist&lt;br /&gt;
:* [http://www.pctechguide.com/cpu-architecture/principles-of-cpu-architecture-logic-gates-mosfets-and-voltage lühike lugu transistoride kasutamisest loogikalülituste ehitamiseks] ja vaata veidi täienduseks  [http://en.wikipedia.org/wiki/Logic_gate siit] &lt;br /&gt;
:* [https://logic.ly/demo/ logic.ly demo] (also 4-bit adder) or try [https://simulator.io/samples 4-bit adder tutorial in detail: you can try out and edit half-built parts]. See also [https://www.geeksforgeeks.org/half-adder-in-digital-logic/?ref=lbp this].&lt;br /&gt;
:* Tore mõte on teha D.Ecki harjutusi, osad siit: [http://math.hws.edu/TMCM/java/index.html Eck laborid].  Need simulaatorid on väga vanad, aga töötavad endiselt OK. Vajavad javat ja kõige parem on nad alla laadida ja oma masinas käivitada: [[Ecki laborite allalaadimine ja katsetamine|siit leiad õpetuse, kuidas seda teha]]. Süvene 4-biti liitjasse, kuni sa temast korralikult aru saad. Seejärel loe ise läbi, proovi ja tee mõlemist osast vähemalt üks harjutus, kus tuleb ise elektroonikaskeem ehitada:&lt;br /&gt;
:** [http://math.hws.edu/TMCM/java/labs/xLogicCircuitsLab1.html Logic circuits]&lt;br /&gt;
:** [http://math.hws.edu/TMCM/java/labs/xLogicCircuitsLab2.html Memory circuits]&lt;br /&gt;
:* Head alternatiivsed simulaatorid katsetamiseks ja skeemide ehitamiseks:&lt;br /&gt;
:** [https://circuitverse.org/simulator on-line] ja [https://learn.circuitverse.org/ tutorial]&lt;br /&gt;
:** [http://www.kolls.net/gatesim/ allalaetav]&lt;br /&gt;
:* Minecraft: redstone ja arvutid&lt;br /&gt;
:** introd [http://www.youtube.com/watch?v=aLTX-sBbo_U siin] ja [http://www.youtube.com/watch?v=XN_MIX7M460 siin] ja [http://www.youtube.com/watch?v=QpvJ9wiywL4 loogikalülitused]&lt;br /&gt;
:** shock and awe: [http://www.youtube.com/watch?v=rmKNahFDcAQ täielik 4-bitine arvuti minecraftis]&lt;br /&gt;
:* Veidi tutvuda nende saitidega:&lt;br /&gt;
:** [http://www.quadibloc.com/comp/cp01.htm täiendavalt teemal transistoride kasutamisest loogikalülituste ehitamiseks]&lt;br /&gt;
&amp;lt;!-- :** [http://www.karbosguide.com/books/pcarchitecture/start.html detailsemalt protsessorite ehitusest] --&amp;gt;&lt;br /&gt;
:** [http://www.lighterra.com/papers/modernmicroprocessors/ Optimeeringud tegelikes protsessorites]&lt;br /&gt;
:* Loe, kuidas ARM chipid alguse said ja olid inspireeritud 6502 protsessorist:&lt;br /&gt;
&amp;lt;!-- :** [https://www.heyrick.co.uk/armwiki/Introducing_the_ARM arm chipid] --&amp;gt;&lt;br /&gt;
:** [https://www.theregister.co.uk/2012/05/03/unsung_heroes_of_tech_arm_creators_sophie_wilson_and_steve_furber/?page=1 arm chippide alguse lugu]&lt;br /&gt;
:* Protsessori simuleerimine ja ise ehitamine:&lt;br /&gt;
:** [https://math.hws.edu/eck/js/xComputer/xComputer.html Ecki xComputer]: lihtne simulaator 6502 stiilis&lt;br /&gt;
:**[http://skilldrick.github.io/easy6502/ easy6502.org]: päris täpne 6502 simulaator&lt;br /&gt;
:**[http://www.visual6502.org/ visual6502.org] vt ka [http://www.visual6502.org/docs/6502_in_action_14_web.pdf slaidid]&lt;br /&gt;
:**[https://eater.net/8bit Build an 8-bit computer from scratch]&lt;br /&gt;
:* [https://en.wikipedia.org/wiki/Microcontroller Mikrokontrollerid] ja [https://en.wikipedia.org/wiki/System_on_a_chip system on a chip]:&lt;br /&gt;
:** [https://jaycarlson.net/microcontrollers/ mikrokontrollerite ülevaade] detailidega: kõik alla 1 dollari&lt;br /&gt;
:** [https://en.wikipedia.org/wiki/Raspberry_Pi Raspberry Pi] SOC&lt;br /&gt;
&lt;br /&gt;
=== 3. nädal: Keskajalugu 1970 ... 1990  ja masinalähedane programmeerimine ===&lt;br /&gt;
&lt;br /&gt;
16. september&lt;br /&gt;
&lt;br /&gt;
* Kell 12: Keskajalugu jätkub: seitsmekümnendad, kaheksakümnendad. Mikroprotsessorid. Mini-, mikro- ja persionaalarvutid.&lt;br /&gt;
:Loengumaterjal: [[Media:Itsissejuhatus4o.ppt|Itsissejuhatus4o.ppt]], [[Media:Itsissejuhatus4o.pdf|Itsissejuhatus4o.pdf]].&lt;br /&gt;
&lt;br /&gt;
* Kell 14:00: Masinalähedane programmeerimine: assembler ja C. &lt;br /&gt;
:NB! Loengu powerpointi algus on hetkel põhiliselt kordamine: tegelik uus osa algab ca lk 21 ja seda kaetakse põhiliselt loengus interaktiivse demona, st materjalis on infot vähe. Väga soovitav on ise lugeda ja veidi harjutada Easy 6502 pisiõpikuga.&lt;br /&gt;
** Loengumaterjal: [[Media:Itsissejuhatus_progealused_20.ppt|Itsissejuhatus_progealused_20.ppt]], [[Media:Itsissejuhatus_progealused_20.pdf|Itsissejuhatus_progealused_20.pdf]].&lt;br /&gt;
** Tööta läbi nii palju [http://skilldrick.github.io/easy6502/ Easy 6502 pisiõpikust] kui jõuad.&lt;br /&gt;
** Loe [https://blog.codinghorror.com/the-infinite-space-between-words/ The infinite space between words]&lt;br /&gt;
** Loe [https://www.freecodecamp.org/news/must-know-numbers-for-every-computer-engineer/ Latency numbers] ja soovitavalt lisaks [https://www.forrestthewoods.com/blog/memory-bandwidth-napkin-math/ palju detailsemalt]&lt;br /&gt;
&amp;lt;!-- [[Media:2019_09_17_Kyberkaitse.pdf|Küberkaitse]].  Sten Mäses. NB! Sisu on peamiselt videosalvestuses, .pdf on viimase taustaks.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* [https://echo360.org.uk/media/5c9624d0-5f61-435c-a2e0-2e5189e2897c/public Loenguvideo]&lt;br /&gt;
&lt;br /&gt;
* Eksamiks: esimene mikroprotsessor, sql, arpanet, atari, cp/m, winchester, altair, alto, unix ja C, microsofti algus, apple algus, 1977 koduarvutid, visicalc, apple II, symbolics, ibm pc, sun, oracle, macintosh, apple ja microsofti tooteliinid. Riistvarast mälu tehnoloogia, cache ja mälu hierarhia, mis on assembler ja seos riistvaraga, mis on kompileerimine, linkimine, mis teeb loader. &amp;lt;!-- Küberkaitse termineid: turvateater, malware, cookie, phishing, social engineering. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Lisaks esimesele loengule:&lt;br /&gt;
:* Jätk küsimusele &amp;quot;mida ülikoolis teha?&amp;quot;. Joel Spolsky: [http://www.joelonsoftware.com/articles/CollegeAdvice.html Advice for Computer Science College Students]&lt;br /&gt;
:* soovitav kuulata: [https://www.preposterousuniverse.com/podcast/2019/06/24/episode-52-frank-lantz-on-the-logic-and-emotion-of-games/  episood arvutimängudest] MindScape [https://www.preposterousuniverse.com/podcast/ podcastist] ja mängi episoodi külalise [https://www.decisionproblem.com/paperclips/ paperclips mängu] ja loe [https://wiki.lesswrong.com/wiki/Paperclip_maximizer tausta]&lt;br /&gt;
:* [https://www.youtube.com/watch?v=2zfqw8nhUwA Apple 1984 Macintosh: reklaamklipp] ja [https://www.youtube.com/watch?v=8bepzUM1x3w Steve Jobs esitlemas] ja 1985 mac office [https://www.youtube.com/watch?v=V-SJQdREDKM lemmings] ja [https://en.wikipedia.org/wiki/Steve_Jobs#Apple_(1976%E2%80%931985) wiki]&lt;br /&gt;
:* [http://www.4004.com/ intel 4004 skeemid, simulaatorid ja ajalugu], [http://e4004.szyc.org/ simulaator]&lt;br /&gt;
:* [http://www.visual6502.org/JSSim/index.html MOS 6502 simulaator] ja [http://skilldrick.github.io/easy6502/ easy 6502 pisiõpik] ja [https://www.youtube.com/watch?v=YRnnjoiSV-U terminaator oli progetud 6502 assembleris] [https://www.youtube.com/watch?v=zgb763elfok klipp]&lt;br /&gt;
:* [http://www.computerhistory.org/pdp-1/index.php?f=theme&amp;amp;s=4&amp;amp;ss=3 Spacewar: esimene graafiline arvutimäng],[http://www.masswerk.at/spacewar/ töötav versioon javascriptis]&lt;br /&gt;
:* [https://www.atarimuseum.de Atari muuseum]&lt;br /&gt;
:* [https://archive.org/details/NiklasRoyPongmechanik mehaaniline pong] ja [http://www.cyberniklas.de/pongmechanik/indexen.html taustaks]&lt;br /&gt;
:* [http://en.wikipedia.org/wiki/SRI_International SRI international]&lt;br /&gt;
:* [http://en.wikipedia.org/wiki/Bell_Labs Bell labs]&lt;br /&gt;
:* [https://vdoc.pub/documents/what-the-dormouse-said-how-the-60s-counterculture-shaped-the-personal-computer-333q53kptb20 What the dormouse said raamatu täistekst] ehk &amp;quot;how the 60s counterculture shaped the personal computer&amp;quot;&lt;br /&gt;
:* Eric Raymond: [http://www.catb.org/~esr/faqs/hacker-howto.html How to become a hacker]&lt;br /&gt;
:* [http://www.rickadams.org/adventure/ Colossal Cave (adventure)] teksti-seiklusmäng [https://quuxplusone.github.io/Advent/ online] ja veidi vigane [http://www.xenoveritas.org/static/advent/advent.html  javascripti versioon]. Vaata ka [http://www.web-adventures.org/ suuremat kollektsiooni vanade teksti-seiklusmängude] javascripti-versioonidest.&lt;br /&gt;
:* [http://www.pong-story.com/odyssey.htm Magnavox odyssey]&lt;br /&gt;
:* [http://porkrind.org/a2/?disk=Karateka.do Apple II Karateka simu] (mängimiseks qwaszx(? või all paremal klahvid ?), tühik ja nooleklahvid). Vaata taustaks [https://en.wikipedia.org/wiki/Karateka_(video_game) Karateka], [https://en.wikipedia.org/wiki/Jordan_Mechner Jordan Mechner] ja [http://www.jordanmechner.com/projects/prince-of-persia/ Prince of Persia]&lt;br /&gt;
&lt;br /&gt;
Lisaks teisele loengule:&lt;br /&gt;
:* [https://blog.codinghorror.com/separating-programming-sheep-from-non-programming-goats/ Segaduses algajad]&lt;br /&gt;
:* Väga hea raamat riistvaralähedasest programmeerimisest: Computer Systems: A Programmer&#039;s Perspective. Randal E. Bryant and David R. O&#039;Hallaron, Carnegie Mellon University&lt;br /&gt;
:** [http://csapp.cs.cmu.edu/ raamatu sait]&lt;br /&gt;
:** [https://www.google.com/url?sa=t&amp;amp;rct=j&amp;amp;q=&amp;amp;esrc=s&amp;amp;source=web&amp;amp;cd=3&amp;amp;cad=rja&amp;amp;uact=8&amp;amp;ved=2ahUKEwjelpbAsPbdAhUIDywKHbCNA30QFjACegQICRAC&amp;amp;url=https%3A%2F%2Fpiazza.com%2Fclass_profile%2Fget_resource%2Fj7ly9riuca97on%2Fja86xbbpp0b73b&amp;amp;usg=AOvVaw2jvbidUujKI0bznBPL9hfL googeldades leitud täistekst]&lt;br /&gt;
:* Vaata, kuidas eri kompilaatorid [https://godbolt.org/ assemblerit genereerivad]&lt;br /&gt;
:* Loe veidi ja uuri [https://lwn.net/Articles/250967/ What every programmer should know about memory]&lt;br /&gt;
:* Väga vanade koduarvutite lag oli väiksem, kui praegustel: [https://danluu.com/input-lag/ Computer latency: 1977-2017]&lt;br /&gt;
&lt;br /&gt;
=== 4. nädal: Algoritmid ja andmebaasid ===&lt;br /&gt;
&lt;br /&gt;
30. september&lt;br /&gt;
&lt;br /&gt;
* Kell 12: Algoritmid: keerukus. Ülevaade kursusest. Õppejõud Marko Kääramees.&lt;br /&gt;
:Loengumaterjal: [[Media:Algoritmid_2019.pdf|Algoritmid_2019.pdf]]. &lt;br /&gt;
&lt;br /&gt;
* Kell &amp;lt;b&amp;gt;14&amp;lt;/b&amp;gt; (mitte 13:45!): Erki Eessaar räägib andmebaasidest. Andmed, informatsioon, andmebaas, andmebaasisüsteem, SQL, NoSQL. SQLis (PostgreSQL) väike näide tabelite loomise ning andmete otsimise ja muutmise kohta.&lt;br /&gt;
:Loengumaterjal: [[Media:Andmebaasidest_s2021.pdf|Andmebaasidest_s2021.pdf]] ja täiendavalt [[Media:Andmebaasidest_s2020_2.zip|xlsx ja sql näitefailid]]&lt;br /&gt;
&lt;br /&gt;
* Eksamiks: mis on algoritmide keerukus, mida tähendab suur-O (a la O(n**2)) notatsioon, mis on sorteerimisalgoritmi parim keerukus halvimal juhul, mis on erinevus merge sorti ja selection sorti vahel: algoritmi ja keerukuse mõttes, mis operatsioonid on massiividel kiiremad / aeglasemad kui listil. (2) Mis asi on: andmebaas, andmebaasisüsteem, SQL.&lt;br /&gt;
&lt;br /&gt;
* [https://echo360.org.uk/media/648a28b1-df5d-4479-83b2-1b6fbce227f4/public Loenguvideo]&lt;br /&gt;
&lt;br /&gt;
Täiendavalt algoritmide teemal: &lt;br /&gt;
:* sorteerimisalgoritmide visualiseeringud [http://www.sorting-algorithms.com/ siin] ja [http://gizmodo.com/this-visualization-of-15-different-sorting-algorithms-i-987297677 siin] ja [http://aarondufour.com/tools/visualizer/ siin]&lt;br /&gt;
:* Eriliselt tore ja ilus [https://bost.ocks.org/mike/algorithms/ visualiseeringutega jutt] mitmete algoritmidega&lt;br /&gt;
:* Väga paljude algoritmide ja andmestruktuuride [https://visualgo.net/ visualiseeringud]&lt;br /&gt;
:* [https://en.wikipedia.org/wiki/Big_O_notation Suur O] wikipedias ja [https://www.bigocheatsheet.com/ lihtne cheatsheet]&lt;br /&gt;
:* [https://en.wikipedia.org/wiki/Travelling_salesman_problem Travelling salesman problem], [https://www.fourmilab.ch/documents/travelling/anneal/ simul&lt;br /&gt;
&lt;br /&gt;
=== 5. nädal: Lähiajalugu 1990-2009 ja andmetüübid masinalähedaselt ===&lt;br /&gt;
&lt;br /&gt;
7. oktoober&lt;br /&gt;
&lt;br /&gt;
* Kell 12: Lähiajalugu: kaheksakümnendate teine pool kuni 2009. IBM PC, Macintosh, uued vanad opsüsteemid, võrgundus ja veeb, market crash, iPhone, Android, Bitcoin, e-valimised.&lt;br /&gt;
:Loengumaterjal a osa:[[Media:Itsissejuhatus5oa.ppt|Itsissejuhatus5oa.ppt]], [[Media:Itsissejuhatus5oa.pdf|Itsissejuhatus5oa.pdf]].&lt;br /&gt;
:Loengumaterjal b osa:[[Media:Itsissejuhatus5ob.ppt|Itsissejuhatus5ob.ppt]], [[Media:Itsissejuhatus5ob.pdf|Itsissejuhatus5ob.pdf]].&lt;br /&gt;
:Loengumaterjal c osa:[[Media:Itsissejuhatus5oc1.ppt|Itsissejuhatus5oc1.ppt]], [[Media:Itsissejuhatus5oc1.pdf|Itsissejuhatus5oc1.pdf]].&lt;br /&gt;
&lt;br /&gt;
* Kell 14:00: loeng andmetüüpidest masinalähedaselt: täisarvud, komadega arvud, stringid, massiivid, listid, puud, hashid jne. &lt;br /&gt;
** Loengumaterjal: [[Media:itsissejuhatus6b.ppt|itsissejuhatus6b.ppt]], [[Media:itsissejuhatus6b.pdf|itsissejuhatus6b.pdf]] &lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Kell 14: kokkuleppimisel --&amp;gt;&amp;lt;!-- e-riigi põhimõtted, ohud, analoogid. [https://et.wikipedia.org/wiki/Jaan_Priisalu Jaan Priisalu], [https://www.linkedin.com/in/priisalu/ linkedin].--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Eksamiks: Python, html ja http, internet eestis, linux, netscape, usenet, php, päevalehed eestis, palm pilot, google, deep blue, wikipedia, x-tee. Lihtsad andmetüübid, stringid, massiivid, puud, mis on pointer.&lt;br /&gt;
&lt;br /&gt;
* [https://echo360.org.uk/media/969a0b8e-8300-45be-891f-7bce3d6b268e/public Loenguvideo]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Tekstitöötlus (word, powerpoint, libreoffice, Latex, markdown, ...). Ivari Horm.&lt;br /&gt;
:Loengumaterjal: [http://study.risk.ee/arvuti/tekstitootlus/redigeerimine/ Slaidid ja demofailid].&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Eksamiks: esimene mikroprotsessor, sql, arpanet, atari, cp/m, winchester, altair, alto, unix ja C, microsofti algus, apple algus, 1977 koduarvutid, visicalc, apple II, symbolics, ibm pc, sun, oracle, macintosh, apple ja microsofti tooteliinid. Tekstitöötlus: lihttekst, WYSIWYG, kooditabel, ascii, unicode, utf-8, mis on latex, markdown.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Lisaks produktiivsuse kasvu ja innovatsiooni aeglustumisest:&lt;br /&gt;
:* [https://www.intereconomics.eu/contents/year/2017/number/1/article/the-global-productivity-slowdown-diagnosis-causes-and-remedies.html global productivity slowdown]&lt;br /&gt;
:* Peter Thiel: we wanted flying cars, instead we got 140 characters [https://som.yale.edu/blog/peter-thiel-at-yale-we-wanted-flying-cars-instead-we-got-140-characters ja hariduse eesmärkidest] ja [https://medium.com/@danwwang/why-is-peter-thiel-pessimistic-about-the-future-of-technology-d2897f9659bb kommentaare sellele]&lt;br /&gt;
:* biotechi [https://www.innovationgrowthlab.org/blog/innovation-slowing-down-if-so-what-can-be-done-about-it innovatsiooni aeglustumine ja kiirelt kasvavad kulud]&lt;br /&gt;
:* [https://aeon.co/essays/has-progress-in-science-and-technology-come-to-a-halt has progress in science and technology come to a halt?]&lt;br /&gt;
:* freakonomicsi [https://freakonomics.com/podcast/no-new-ideas/ podcast samal teemal]&lt;br /&gt;
&lt;br /&gt;
Lisaks ajaloost:&lt;br /&gt;
:* [http://arvutimuuseum.ut.ee/ Arvutimuuseum Tartu ülikoolis]&lt;br /&gt;
:* [http://toastytech.com/guis/guitimeline.html GUI ajalugu]&lt;br /&gt;
:* [https://www.pinterest.com/pin/440649144769793165/ 101 arvutireklaami]&lt;br /&gt;
:* [https://www.youtube.com/playlist?list=PL92052A2D1E20A014 Arvutite ajaloolised tv-reklaamid]&lt;br /&gt;
&amp;lt;!-- :* [http://www.sciam.com/print_version.cfm?articleID=00010347-101C-14C1-8F9E83414B7F4945 The expert mind] --&amp;gt;&lt;br /&gt;
:* [[Media:teejuhtvorgundus_raamat.html |&amp;quot;Teejuht võrgumeediasse&amp;quot;]] toorik aastatest 1995-1996. Pakub eeskätt ajaloolist huvi.&lt;br /&gt;
:* Tutvu: [[Media:eestiajalugu.ppt|J.Penjami lühiülevaade Eestis tehtud ja olnud varastest arvutitest]]&lt;br /&gt;
:* [https://www.youtube.com/watch?v=VtvjbmoDx-I Apple Macintoshi reklaamfilm: 1984]&lt;br /&gt;
&lt;br /&gt;
Lisaks andmete esitusest:&lt;br /&gt;
:* [https://fabiensanglard.net/floating_point_visually_explained/ ujukoma-arvude seletus] ja [https://en.wikipedia.org/wiki/Floating-point_arithmetic detailsemalt wikipedias] ja [http://www.mrob.com/pub/math/floatformats.html ajaloost]&lt;br /&gt;
:* [http://beza1e1.tuxen.de/strings.html how to implement strings]&lt;br /&gt;
:* ja kuidas python [https://rushter.com/blog/python-strings-and-memory/  stringe optimeerib]&lt;br /&gt;
:* [http://www.laurentluce.com/posts/python-list-implementation/ pythoni listid sisemiselt]&lt;br /&gt;
:* kataloog [https://treevis.net/ puude visualiseerimise viisidest]&lt;br /&gt;
:* hulk eri andmetüüpide [https://www.cs.usfca.edu/~galles/visualization/Algorithms.html visualiseeringuid]&lt;br /&gt;
&lt;br /&gt;
Muud huvitavat:&lt;br /&gt;
:* [http://www.eurekalert.org/pub_releases/2006-06/uosc-fk062006.php Thirst for knowledge may be opium craving]&lt;br /&gt;
:* [http://worrydream.com/LadderOfAbstraction/ ladder of abstraction]&lt;br /&gt;
:* [http://johnsalvatier.org/blog/2017/reality-has-a-surprising-amount-of-detail Reality has a surprising amount of detail]&lt;br /&gt;
:* Maciej Cegłowski loeng [https://www.youtube.com/watch?v=5Vt8zqhHe_c barely succeed: it is easier]&lt;br /&gt;
&lt;br /&gt;
=== 6. nädal: Operatsioonisüsteemid ja tekstitöötlus  ===&lt;br /&gt;
&lt;br /&gt;
14. oktoober.&lt;br /&gt;
&lt;br /&gt;
* Kell 12: Operatsioonisüsteemid  &lt;br /&gt;
:Loengumaterjal: [[Media:Itsissejuhatus8a9.ppt|Itsissejuhatus8a9.ppt]],  [[Media:Itsissejuhatus8a9.pdf|Itsissejuhatus8a9.pdf]].&lt;br /&gt;
* Kell 13:45: Tekstitöötlus: Ivari Horm&lt;br /&gt;
:Esialgne loengumaterjal: [https://study.risk.ee/wp-content/uploads/sites/3/2020/10/Teksti-toimetamine.pdf teksti toimetamine]. Lisaks (mittekohustuslik) on [https://study.risk.ee/arvuti/tekstitootlus/redigeerimine/ siin allpool] lingid näitefailide algfailidele ja tulemustele.&lt;br /&gt;
* Eksamiks: Opsüsteemi roll, mis on distro, mis on Linux, mis on mac OS X, Android, protsessid, multitasking, paralleeltöö, wait/run, mis on interrupt, mis on virtuaalmälu. Tekstitöötlus: lihttekst, WYSIWYG, kooditabel, ascii, unicode, utf-8, mis on latex, markdown, nende plussid ja miinused, kus kasutatakse.&lt;br /&gt;
* [https://echo360.org.uk/media/7a515aca-332e-45b1-b130-b3fe5255ee4c/public Loenguvideo] (teises loengus ei ole ekraanipilti kaasas: vaata paralleelselt ülalolevat loengumaterjali juurde)&lt;br /&gt;
&lt;br /&gt;
Soovitavat katsetamist opsüsteemidega:&lt;br /&gt;
:* [http://levinux.com/ levinux: eksperimenteerimiseks mõeldud mikro-linux]: &amp;quot;tiny virtual Linux server that runs from USB or Dropbox with a double-click (no install or admin rights required) on Macs, Windows or Linux PCs&amp;quot;&lt;br /&gt;
:* Linux windowsis - [https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux WSL] - [https://docs.microsoft.com/en-us/windows/wsl/ Microsofti õpetus]&lt;br /&gt;
Eriti soovitavat lugemist opsüsteemidest:&lt;br /&gt;
:* [http://duartes.org/gustavo/blog/category/software-illustrated/ Duarte blog sisemisest elust], mh [http://duartes.org/gustavo/blog/post/anatomy-of-a-program-in-memory/ kuidas programmi mälus hoitakse], [http://duartes.org/gustavo/blog/post/how-the-kernel-manages-your-memory/ mälu haldamine], [http://duartes.org/gustavo/blog/post/how-computers-boot-up/ bootimine 1] ja [http://duartes.org/gustavo/blog/post/kernel-boot-process/ bootimine 2]&lt;br /&gt;
Muidu soovitavat lugemist opsüsteemidest:&lt;br /&gt;
:* Wikipedia artikkel [http://en.wikipedia.org/wiki/Operating_system opsüsteemidest]&lt;br /&gt;
:* [http://en.wikipedia.org/wiki/Linux_distribution Linux distributions]&lt;br /&gt;
:* päris hea [https://www.tutorialspoint.com/operating_system/index.htm opsüsteemide ehituse pisi-tutorial]&lt;br /&gt;
:* Ulrich Drepperi [http://people.redhat.com/drepper/cpucache-slides.pdf cache-lühiülevaade] ja [http://people.redhat.com/drepper/parallelprog.pdf paralleelsuse-ülevaade]&lt;br /&gt;
:* üldse mitte kohustuslik (algajatel raske mõista :-) [http://www.catb.org/~esr/writings/taoup/html/ The Art of Unix Programming]&lt;br /&gt;
:* [http://www.minix3.org/ Minix: Linuxi inspiratsiooniks olnud mini-UNIX] ja &amp;lt;b&amp;gt;[https://www.cs.vu.nl/~ast/intel/ loe seda!]&amp;lt;/b&amp;gt; ja [https://hexus.net/tech/news/software/111857-intel-management-engine-runs-minix-3-os/ viimase taustaks] ja [https://www.blackhat.com/presentations/bh-usa-09/TERESHKIN/BHUSA09-Tereshkin-Ring3Rootkit-SLIDES.pdf lisaks]&lt;br /&gt;
:* [http://www.levenez.com/unix/ Unix history]&lt;br /&gt;
:* [http://en.wikipedia.org/wiki/Virtual_memory virtuaalmälu vikipeedias]&lt;br /&gt;
:* [http://en.wikipedia.org/wiki/Computer_multitasking multitasking vikipeedias]&lt;br /&gt;
:* [https://landley.net/writing/memory-faq.txt Väga detailne ülevaade mälu organiseerimisest]&lt;br /&gt;
:* [https://pdos.csail.mit.edu/6.828/2018/xv6/book-rev11.pdf Hea väike tehniline raamat sise-ehitusest]&lt;br /&gt;
:* [https://people.eecs.berkeley.edu/~brewer/cs262/UNIX-annotated.pdf Unixi autorite väike varane ülevaade põhi-ideedest]&lt;br /&gt;
&lt;br /&gt;
=== 7. nädal: Interneti funktsioneerimine ja tabelarvutus ===&lt;br /&gt;
&lt;br /&gt;
21. oktoober&lt;br /&gt;
&lt;br /&gt;
* Kell 12: interneti funktsioneerimine: Ivo Müürsepp&lt;br /&gt;
:Loengumaterjal: [[Media:Arvutivorgud_3.pdf|Arvutivorgud_3.pdf]]: see on 2021 aasta Ivo materjal.&lt;br /&gt;
&lt;br /&gt;
* Kell 13:45: tabelarvutus: Ivari Horm. [https://study.risk.ee/arvuti/tabelarvutus/pohimoisted/ Loengumaterjalide leht].&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Veebirakendused. Loengumaterjal: [[Media:Itsissejuhatus10a20.ppt|Itsissejuhatus10a20.ppt]], [[Media:Itsissejuhatus10a20.pdf|Itsissejuhatus10a20.pdf]].&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* [https://echo360.org.uk/media/f9709a31-a84d-4e4d-bf2c-8e8205a8efe2/public Loenguvideo]&lt;br /&gt;
&lt;br /&gt;
* Eksamiks: Arvutivõrgud: mac aadress, ip aadress, port, ethernet, ip, tcp, udp, kapseldamine (mis mille sees). Päiste detailide kohta ei küsita. Tabelarvutuse teema: mismoodi kirjutatakse Excelis lihtsamaid valemeid.&lt;br /&gt;
&lt;br /&gt;
Tutvuda lühidalt interneti funktsioneerimise teemal:&lt;br /&gt;
:* [https://www.submarinecablemap.com/ Veeluste internetikaablite zoomitav kaart] ja [https://he.net/3d-map/ veel detailsem zoomitav kaart]&lt;br /&gt;
:* [https://www.nytimes.com/interactive/2019/03/10/technology/internet-cables-oceans.html Kuidas veealused kaablid välja näevad]&lt;br /&gt;
:* [https://www.visualcapitalist.com/ranking-the-top-100-websites-in-the-world/ Suurimad veebisaidid]&lt;br /&gt;
:* https://en.wikipedia.org/wiki/Internet_protocol_suite&lt;br /&gt;
:* https://en.wikipedia.org/wiki/Internet_of_things&lt;br /&gt;
:* [https://www.youtube.com/watch?v=7Zf203Vmbig steampunk film pakettide liikumisest]&lt;br /&gt;
:* [https://web.stanford.edu/class/msande91si/www-spr04/readings/week1/InternetWhitepaper.htm How does the internet work?]&lt;br /&gt;
:* Huvi korral loe mahukamast protokollinduse kursusest lisa: [[Andmeside protokollid]]&lt;br /&gt;
&lt;br /&gt;
=== 8. nädal: Programmeerimiskeeled ja veebirakendused.  ===&lt;br /&gt;
&lt;br /&gt;
28. oktoober.&lt;br /&gt;
&lt;br /&gt;
* Kell 12:  Erinevad programmeerimiskeeled ja kompileerimine/interpreteerimine.&lt;br /&gt;
** Loengumaterjal: [[Media:itsissejuhatus_keeled.ppt|itsissejuhatus_keeled.ppt]], [[Media:itsissejuhatus_keeled.pdf|itsissejuhatus_keeled.pdf]], &lt;br /&gt;
&lt;br /&gt;
* Kell 13:45: Veebirakendused. Loengumaterjal: [[Media:Itsissejuhatus10a20.ppt|Itsissejuhatus10a20.ppt]], [[Media:Itsissejuhatus10a20.pdf|Itsissejuhatus10a20.pdf]].&lt;br /&gt;
&lt;br /&gt;
* Eksamiks: Kompileerimine, interpreteerimine, parsimine, jit, vahekood, programmeerimiskeeled vs kirjelduskeeled, json, html, sql, keelte äratundmine (assembler, fortran, cobol, lisp, C, modula/pascal, python). Veebirakendused: mis on http, https, html, css, javascript, ajax, json, xml, kuidas üldjoontes töötab klassikaline veebirakendus ja kuidas single-page app (koodinäiteid / nende detaile ei küsita).&lt;br /&gt;
&lt;br /&gt;
* [https://echo360.org.uk/media/1f9f1b03-3b82-402c-acd6-b178caed9150/public Loengusalvestus Echos] ja alternatiivselt [https://livettu.sharepoint.com/:v:/s/Sissejuhatusinfotehnoloogiasse/ETEJ5ddydv9PkLYup9etSskBd6HNg1OxwucZa9TKCI_3fg?e=V50g4F teamsis]&lt;br /&gt;
&lt;br /&gt;
Tillukeste interpretaatorite ja kompilaatorite koodinäited:&lt;br /&gt;
&lt;br /&gt;
:* [[mikrointerpretaator|õppejõu mikro-interpretaator pythonis]]&lt;br /&gt;
:* [http://norvig.com/lispy.html tilluke lispi-interpretaator pythonis] ja [https://github.com/norvig/pytudes/blob/master/py/lis.py selle lähtekood]. Autoriks [https://en.wikipedia.org/wiki/Peter_Norvig Peter Norvig], vt ka [http://norvig.com/ Norvigi oma veebileht].&lt;br /&gt;
:* [https://github.com/josegomezr/the-super-tiny-compiler tilluke lispi kompilaator pythonis]&lt;br /&gt;
:* [http://www.aosabook.org/en/500L/a-python-interpreter-written-in-python.html pythonis kirjutatud pythoni interpretaator]&lt;br /&gt;
:* Keerukam: [https://ruslanspivak.com/lsbasi-part1/ põhjalik interpretaatori-kirjutamise veebiraamat] algajatele ja [https://craftinginterpreters.com/ veel põhjalikum veebiraamat] ja [https://github.com/AZHenley/teenytinycompiler lihtsa kompilaatori näide ja õpetus]&lt;br /&gt;
&lt;br /&gt;
Tutvu veidi nende progekeelte populaarsus-võrdlustega:&lt;br /&gt;
&lt;br /&gt;
:* Tiobe [https://www.tiobe.com/tiobe-index/ programmeerimiskeelte populaarsusindeks] &amp;lt;!-- ja [https://www.techworm.net/wp-content/uploads/2018/01/tiobe.png selle graafik] --&amp;gt;&lt;br /&gt;
:* Githubi progekeelte [https://madnight.github.io/githut/  populaarsusindeks] &amp;lt;!-- [https://octoverse.github.com/  populaarsusindeks]  --&amp;gt;&lt;br /&gt;
:* [https://pypl.github.io/PYPL.html PYPL: populaarsus tutorialite Google-otsingute järgi]&lt;br /&gt;
:* Põhjalik [https://boyter.org/posts/an-informal-survey-of-10-million-github-bitbucket-gitlab-projects/ Githubi repode analüüs mh keelte kaupa]&lt;br /&gt;
:* Nõudluse järgi [https://www.codeplatoon.org/best-paying-most-in-demand-programming-languages-2020/ üks populaarsusindeks] &lt;br /&gt;
&lt;br /&gt;
Siis vaata veidi neid asju:&lt;br /&gt;
&lt;br /&gt;
:* [https://exploringdata.github.io/vis/programming-languages-influence-network/ Programming languages influence network]&lt;br /&gt;
&amp;lt;!-- :* [http://skilldrick.github.io/easy6502/ cool 6502 protsessori simulaator javascriptis] --&amp;gt;&lt;br /&gt;
:* [http://www.levenez.com/lang/ Computer languages history]&lt;br /&gt;
:* [https://en.wikipedia.org/wiki/List_of_programming_languages Wikpedia list] ja [https://en.wikipedia.org/wiki/Comparison_of_programming_languages Wikipedia võrdlused]&lt;br /&gt;
:* [https://benchmarksgame-team.pages.debian.net/benchmarksgame/ Computer language benchmarks]&lt;br /&gt;
&amp;lt;!-- :* lugeda [http://www.diycalculator.com/area51/databook.zip Diy calculator raamatut] ja [http://www.diycalculator.com/ tervet saiti] --&amp;gt;&lt;br /&gt;
&amp;lt;!-- :* uurida sarnast, alternatiivset pisimasina-simulaatorit: [http://computerscience.jbpub.com/ecoa/2e/student_resources.cfm MarieSim], --&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
:* [https://users.encs.concordia.ca/~grogono/CourseNotes/epl.pdf ülevaade progekeelte arengust]&lt;br /&gt;
:* vaata detailset ülevaadet [http://www.lighterra.com/papers/modernmicroprocessors/ parallelismist mikroprotsessorites]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Ja väga detailidesse minekuks on huvitav lugeda Javascripti interpretaatorite/kompilaatorite optimeeringutest:&lt;br /&gt;
:* [https://mathiasbynens.be/notes/shapes-ics esimene osa]&lt;br /&gt;
:* [https://mathiasbynens.be/notes/prototypes teine osa]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Veebirakenduste teemal vaata veel:&lt;br /&gt;
:* http://www.w3schools.com/.&lt;br /&gt;
:* [https://codeburst.io/the-2018-web-developer-roadmap-826b1b806e8d Tehnoloogiastack]&lt;br /&gt;
:* [https://coder-coder.com/learn-web-development/ Väike sissejuhatus kogu värgi õppimiseks]&lt;br /&gt;
:* [http://www.w3c.org/ Ametlikud veebitehnoloogiate standardid].&lt;br /&gt;
:* [[Veebirakendused]] kursus.&lt;br /&gt;
:* [[lihtsaid cgi programminäiteid]] ja [http://lambda.ee/wiki/Cgi_examples lisaks funktsioneerivate näidetena]&lt;br /&gt;
&lt;br /&gt;
Muud huvitavat:&lt;br /&gt;
:* [https://netfuture.org/2001/Nov1501_125.html &amp;quot;technology is our hope if we can accept it as our enemy, but as our friend, it will destroy us&amp;quot;]&lt;br /&gt;
:* [https://www.embedded.com/advanced-compiler-optimization-techniques/ sissejuhatus optimeerimisse]&lt;br /&gt;
:* [https://cacm.acm.org/magazines/2020/2/242347-optimizations-in-c-compilers/fulltext veel veidi sügavamalt optimeerimisest]&lt;br /&gt;
:* [https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html gcc optimeerimisparameetrid]&lt;br /&gt;
:* [https://www.sqlite.org/whyc.html Why is SQLite written in C]&lt;br /&gt;
:* [https://www.bloomberg.com/graphics/2015-paul-ford-what-is-code/ Pikk raamat päris tarkvarast päris algajatele]&lt;br /&gt;
:* [http://inventwithpython.com/blog/2012/02/20/i-need-practice-programming-49-ideas-for-game-clones-to-code/ Toredad Pythoni pisi-mängud programmeerimise harjutustena]&lt;br /&gt;
:* How Python works: [https://tenthousandmeters.com/blog/python-behind-the-scenes-1-how-the-cpython-vm-works/  esimene osa], [https://tenthousandmeters.com/blog/python-behind-the-scenes-2-how-the-cpython-compiler-works/ teine osa]&lt;br /&gt;
&lt;br /&gt;
=== 9. nädal: Tarkvara arhitektuur ja tehisintellekt ===&lt;br /&gt;
&lt;br /&gt;
4. november.&lt;br /&gt;
&lt;br /&gt;
* Kell 12: Tarkvara arhitektuur. Teegid, komponendid, andmebaasid, litsentsid jms.&lt;br /&gt;
:Loengumaterjal: [[Media:Itsissejuhatus9a21.ppt|Itsissejuhatus9a21.ppt]], [[Media:Itsissejuhatus9a21.pdf|Itsissejuhatus9a21.pdf]].&lt;br /&gt;
&lt;br /&gt;
* Kell 13:45: Tehisintellekt.&lt;br /&gt;
:Loengumaterjal:  [[Media:ai_sissejuhatus_c.pdf|ai_sissejuhatus_c.pdf]]. &lt;br /&gt;
&lt;br /&gt;
* Eksamiks: Tarkvara arhitektuur: kohustuslik lugemine siin all, mis on teek ja mis raamistik, nende näited, arusaamine põhilistest litsentsitüüpidest (vabavaralised (gpl vs mit ja bsd) ja mitte-vabavaralised), gpl-i põhipoindid. Mis on tugev ja mis nõrk AI, mis on turingi test ja mis on eliza. Mis on otsimeetodites minimax ja alpha-beta (tehnilisi detaile ja näiteid ei tule). Mis on peamise tehisintellekti arendamise meetodid/lähenemised. Mis sorti ülesandeid praegused tehisintellektisüsteemid suudavad ok/väga hästi/väga halvasti lahendada?  Mis on IBM Watson, GPT3, AlphaZero.&lt;br /&gt;
&lt;br /&gt;
* [https://echo360.org.uk/media/3d7213ee-cb40-4bc9-b5d4-62707e724c80/public Loenguvideo]&lt;br /&gt;
&lt;br /&gt;
Kohustuslikku lugemist arhitektuuri teemal eksamiks:&lt;br /&gt;
:* [https://martinfowler.com/architecture/ Martin Fowler tarkvara arhitektuurist]&lt;br /&gt;
:* [http://www.joelonsoftware.com/articles/LeakyAbstractions.html The law of leaky abstractions]&lt;br /&gt;
:* [http://worrydream.com/refs/Brooks-NoSilverBullet.pdf No silver bullet] ja [http://en.wikipedia.org/wiki/No_Silver_Bullet lühem kokkuvõte]&lt;br /&gt;
:* Paul Reeves: [http://www.developerdotstar.com/mag/articles/reeves_design.html What is software design?] vana artikkel ja [http://www.developerdotstar.com/mag/articles/reeves_13yearslater.html What Is Software Design: 13 Years Later]&lt;br /&gt;
:* [http://www.gnu.org/philosophy/free-sw.html mis on vabatarkvara] Gnu interpretatsiooni kohaselt&lt;br /&gt;
&lt;br /&gt;
Lisaks mittekohustuslikku, aga eriti soovitavat lugemist arhitektuurist, tähtsuse järjekorras:&lt;br /&gt;
:* [https://blog.pragmaticengineer.com/software-architecture-is-overrated/ Software architecture is overrated] ja [https://news.ycombinator.com/item?id=21001676 HN kommentaarid]&lt;br /&gt;
:* [https://github.com/papers-we-love/papers-we-love/blob/master/design/out-of-the-tar-pit.pdf Out of the tar pit]&lt;br /&gt;
:* [https://nickcraver.com/blog/2016/02/03/stack-overflow-a-technical-deconstruction/ Stack Overflow serveerimise ülesehitusest] eriti [https://nickcraver.com/blog/2016/02/17/stack-overflow-the-architecture-2016-edition/ selle esimene osa]&lt;br /&gt;
:* [http://muratbuffalo.blogspot.com/2014/10/facebooks-software-architecture.html?spref=tw veidi Facebooki arhitektuurist]&lt;br /&gt;
:* [https://github.com/zhangjunhd/reading-notes/blob/master/software/FundamentalsOfSoftwareArchitecture.md Fundamentals of software architecture]: see ei ole vähetähtis, aga on pikk ja detailne hästi illustreeritud jutt.&lt;br /&gt;
&lt;br /&gt;
Lisaks: täiesti mittekohustuslikke ideid lugemiseks: &lt;br /&gt;
:* [http://damienkatz.net/2006/02/why_features_do.html Why features do not matter any more]&lt;br /&gt;
:* [http://www.norvig.com/21-days.html Teach yourself programming in ten years]&lt;br /&gt;
:* [http://www.gnu.org/philosophy/ Gnu manifestid] ja &lt;br /&gt;
:* [http://www.gnu.org/licenses/licenses.html Gnu litsentsid] ja paljud [http://www.gnu.org/licenses/license-list.html erinevad vabavara litsentsid]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Lisaks tehisintellekti teemal:&lt;br /&gt;
&lt;br /&gt;
:*Väga hea mõte on teha ise läbi lihtne sissejuhatav MOOC-kursus tehisintellektist: [http://www.elementsofai.ee/ eestikeelne] või https://www.elementsofai.com/ inglisekeelne]. &lt;br /&gt;
:* [https://openai.com/api/ GPT-3 ja DALL-E] api ise katsetamiseks: rega ja proovi! Tasuline, aga (a) suur hulk krediiti algul (st algus tasuta) (b) katsetamiseks ka edasi väga odav&lt;br /&gt;
&amp;lt;!-- :* Taustaks: [https://courses.cs.ttu.ee/pages/Teadmisp%C3%B5hise_tarkvaraarenduse_meetodid_/_Methods_of_Knowledge_Based_Software_Development_2017 tehisintellektinduse magistrikursus TTÜs] ja ülevaade [https://aitopics.org/misc/about tehisintellektinduse valdkondadest] --&amp;gt;&lt;br /&gt;
:* [https://www.bostondynamics.com/ Boston Dynamics] [https://www.youtube.com/watch?v=tF4DML7FIWk atlas] ja [https://www.youtube.com/watch?v=9aUBpByABiA valus variant] ja [https://www.youtube.com/watch?v=PQr6U3RWzVg big dog]. Eriti soovitav Marc Raiberti [https://www.youtube.com/watch?v=AO4In7d6X-c TED talk]: vaata kindlasti valusat faili hetkel 5:28 :)&lt;br /&gt;
:* Darpa [http://en.wikipedia.org/wiki/DARPA_Grand_Challenge grand challenge 2005] ja [https://www.youtube.com/watch?v=g0TaYhjpOfo darpa robotics challenge (2012-2015) fails compilation]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
:* [http://vimeo.com/user2952867/videos TTÜ roboswarm]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!-- :* [https://www.tastehit.com/blog/google-deepmind-alphago-how-it-works/ Kuidas AlphaGo töötab] --&amp;gt;&lt;br /&gt;
:* [http://idlewords.com/talks/superintelligence.htm Miks mitte karta super-tehisintellekti]&lt;br /&gt;
:* [https://en.wikipedia.org/wiki/Rodney_Brooks Rodney Brooksi] väike tehisintellekti-sari [https://rodneybrooks.com/forai-steps-toward-super-intelligence-i-how-we-got-here/ osa 1], [https://rodneybrooks.com/forai-steps-toward-super-intelligence-ii-beyond-the-turing-test/ osa 2], [https://rodneybrooks.com/forai-steps-toward-super-intelligence-iii-hard-things-today/ osa 3],  [https://rodneybrooks.com/forai-steps-toward-super-intelligence-iv-things-to-work-on-now/ osa 4]&lt;br /&gt;
:* [http://www.wired.com/wiredscience/2013/11/christof-koch-panpsychism-consciousness/all/ How networks become conscious] ja [http://www.newyorker.com/online/blogs/elements/2013/08/why-cant-my-computer-understand-me.html Why can&#039;t my computer understand me]&lt;br /&gt;
:* Marvin Minsky [http://aurellem.org/society-of-mind/ The Society of Mind]&lt;br /&gt;
:* [http://www.youtube.com/watch?v=-rMMTv7XLYw Õppimisalgoritmidest] ja [http://research.google.com/pubs/ArtificialIntelligenceandMachineLearning.html Google artiklid õppimisalgoritmidest]&lt;br /&gt;
:* Teadmiste integraatorid [http://blog.stephenwolfram.com/2011/01/jeopardy-ibm-and-wolframalpha/  Ibm Watson, Wolfram Alpha] ja [http://en.wikipedia.org/wiki/Siri_%28software%29 Siri]&lt;br /&gt;
:* [https://allenai.org/#nlp allen AI]: vaata ka projektide ülamenüüst Demo lingi alt online demosid&lt;br /&gt;
:* Päris hea võrgust lugev ja õppiv süsteem [http://rtw.ml.cmu.edu/rtw/ NELL] vt ka [http://rtw.ml.cmu.edu/rtw/kbbrowser/ seniõpitut] ja [http://www.cs.cmu.edu/~rcwang/ olulist alus-meetodit]&lt;br /&gt;
:* [https://www.eclecticenergies.com/ego/eliza Klassikaline vestlev pseudointellekt Eliza] ja  [https://www.pandorabots.com/mitsuku/ modernsem vestlev pseudointellekt]&lt;br /&gt;
:* A.I. filosoofia osas loe [http://en.wikipedia.org/wiki/Philosophy_of_artificial_intelligence peamist wikiartiklit] ja [http://en.wikipedia.org/wiki/Functionalism_(philosophy_of_mind) wikiartiklit funktsionalismist] &lt;br /&gt;
:* Loe [[Media:Aifilosoofia_ttmatrix.doc|Matrix, Skynet ja sõda teispoolsusega]], [http://ase.tufts.edu/cogstud/dennett/recent.html Dennetti artikleid], [http://aima.cs.berkeley.edu/ tuntud õpikut],&lt;br /&gt;
&lt;br /&gt;
Taustakuulamiseks soovitavaid podcastiepisoode:&lt;br /&gt;
:* Eriti soovitav filosoofia/praktika kokkupuutepunktina [https://lexfridman.com/steven-pinker/ Steven Pinkeri] episood väga heast ja populaarsest [https://lexfridman.com/ai/ ai podcastist].&lt;br /&gt;
:* Neurorehkenduste ja sümbolrehkenduste vaidluse teemal kuula [https://lexfridman.com/gary-marcus/ Gary Marcuse episoodi] AI podcastist ja vastupidi, [https://lexfridman.com/david-silver/ David Silveri episoodi] Alphago, Alphazero jms teemadel. Lisaks videona [https://youtu.be/EeqwFjqFvJA Yoshua Bengio ja Gary Marcuse diskussioon]- &lt;br /&gt;
:* Praktilise AI ehitamise teemal kuula [https://lexfridman.com/david-ferrucci/ David Ferrucci] ibm watsoni episoodi &lt;br /&gt;
:* Vali neist A.I. podcastist mõned ja kuula: [https://lexfridman.com/ben-goertzel/ Goertzel], [https://lexfridman.com/tomaso-poggio/ Poggio],[https://lexfridman.com/richard-dawkins/ Dawkins], [https://lexfridman.com/noam-chomsky/ Chomsky], [https://lexfridman.com/nick-bostrom/ Bostrom], [https://lexfridman.com/jeff-hawkins/ Hawkins], [https://lexfridman.com/judea-pearl Pearl]&lt;br /&gt;
:* Soovitavaid A.I. podcaste üldse: [https://lexfridman.com/ endise nimega A.I. podcast] ja siis tehnilisemad [https://braininspired.co/ ajuteaduse-fookusega A.I. podcast], [https://soundcloud.com/nlp-highlights Alleni instituudi NLP podcast]. Viimase kohta veel soovitavaid episoode [https://soundcloud.com/nlp-highlights/89-dialog-systems-with-zhou-yu episode 89 about dialog systems], [https://soundcloud.com/nlp-highlights/executable-semantic-parsing-with-jonathan-berant episode 91 about executable semantic parsing], [https://soundcloud.com/nlp-highlights/59-weakly-supervised-semantic-parsing-with-abstract-examples-with-omer-goldman episode 59 about semantic parsing] ja lõpuks [https://allenai.org/demos demod], eriti [https://rule-reasoning.apps.allenai.org/ Rover demo]&lt;br /&gt;
&lt;br /&gt;
=== 10. nädal: Masinõpe ja plokiahelad ===&lt;br /&gt;
&lt;br /&gt;
11. november.&lt;br /&gt;
&lt;br /&gt;
* Kell 12: Priit Järv räägib masinõppest: [[Media:Machine_Learning_2022.pdf|Loenguslaidid]]. Priit õpetab kursust [https://moodle.taltech.ee/enrol/index.php?id=30646 Tehisintellekti ja masinõppe alused]&lt;br /&gt;
&lt;br /&gt;
* Kell 13:45: [https://taltech.ee/en/dirk-draheim Dirk Draheim] räägib plokiahelate, Bitcoini, Web 3 jms tehnoloogiast ja teooriast: &amp;lt;b&amp;gt;inglise keeles&amp;lt;/b&amp;gt;.&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Kell 13:45: [https://taltech.ee/en/dirk-draheim Dirk Draheim] räägib tõenäosustest: loeng inglise keeles! Presentatsioon jms ilmub siia loengu järel.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Eksamiks: mis põhiosadest koosnevad tehis-närvivõrgud, mida kasutatakse masinõppes. Mida närvivõrkudega õppe käigus tegelikult tehniliselt muudetakse? Mis on supervised learning, reinforcement learning, unsupervised learning (eeskätt, mille poolest nad üksteisest erinevad)? Plokiahela küsimused lisatakse pärast loengut.&lt;br /&gt;
&lt;br /&gt;
Lisaks uuri masinõppe kohta: &lt;br /&gt;
:* Elements of AI eestikeelsed [https://course.elementsofai.com/ee/4 masinõppe] ja [https://course.elementsofai.com/ee/5 närvivõrkude] blokid.&lt;br /&gt;
:* [https://aegeorge42.github.io/ Neural networks from scratch]&lt;br /&gt;
:* Masinõpe [https://en.wikipedia.org/wiki/Machine_learning vikipeedias]&lt;br /&gt;
:* Deep learning [https://cs.stanford.edu/people/karpathy/convnetjs/index.html otse brauseris]&lt;br /&gt;
:* [https://braininspired.co/ Brain inspired] podcast neuroteaduse ja veidi masinõppe teemadel: jutuajamised päris neuroteadlastega.&lt;br /&gt;
:* Kaggle [https://www.kaggle.com/competitions  competitions] ja [https://www.kaggle.com/learn iseõppe kursused]&lt;br /&gt;
:* [https://en.wikipedia.org/wiki/GPT-3 GPT-3 vikipeedias] ja selle baasil tehtud Github copilot [https://en.wikipedia.org/wiki/GitHub_Copilot vikipeedias] ja [https://copilot.github.com/ otselink]. &lt;br /&gt;
:* [https://openai.com/api/ GPT-3 ja DALL-E] api ise katsetamiseks: rega ja proovi! Tasuline, aga (a) suur hulk krediiti algul (st algus tasuta) (b) katsetamiseks ka edasi väga odav&lt;br /&gt;
&lt;br /&gt;
ja plokiahelate kohta:&lt;br /&gt;
&lt;br /&gt;
:* Vaata Bitcoini tehnoloogiajuppide [https://andersbrownworth.com/blockchain/ interaktiivset demo]: vaata videosid ja peamise asjana: võta ülamenüüst järjest &amp;quot;Hash&amp;quot;, &amp;quot;Block&amp;quot;, &amp;quot;Blockchain&amp;quot; jne ja proovi ise järgi.&lt;br /&gt;
:* [https://netfuture.ch/2022/04/hitchhikers-guide-to-the-blockchain/ päris hea ülevaade ja seletus]: kuidas plokiahelad töötavad&lt;br /&gt;
:* [https://www.blockchain.com/explorer bitcoini ledgeri uute blokkide hetke-ülevaade]&lt;br /&gt;
&lt;br /&gt;
=== 11. nädal: Andmevood ja andmelaod + planeerimisel. ===&lt;br /&gt;
&lt;br /&gt;
18. november.&lt;br /&gt;
&lt;br /&gt;
* Kell 12: [https://www.oriongovernance.com/ Orion Governance] kaasasutaja ja chief data scientist [https://www.linkedin.com/in/kalle-tomingas-b511341/ Kalle Tomingas]  räägib väga suurte infosüsteemide andmeladudest, andmevoogudest ja analüüsist. &lt;br /&gt;
&lt;br /&gt;
* Kell 13:45: Planeerimisel.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- [https://en.wikipedia.org/wiki/Data_science andmeteadus] ja [https://en.wikipedia.org/wiki/Data_mining andmekaeve], õppejõud [http://innar.com/ Innar Liiv]. NB! Selle loengu kohta ei ole slaidimaterjale, aga Innar lubas neid saata, kui kirjutad ja küsid innar.liiv@taltech.ee --&amp;gt;&lt;br /&gt;
 &amp;lt;!-- Õppejõud Sven Nõmm. [https://www.dropbox.com/s/w5sod7ihfognn68/masinope_oppimismeetodid.pdf?dl=0 Loengumaterjal] --&amp;gt;&lt;br /&gt;
* Eksamiks: täpsustub loengute järel. &amp;lt;!-- lahenduvus teoreetilises ja tavamõttes, mis on lahenduvad ülesanded. Positiivsete täisarvude, positiivsete/negatiivsete ja murdarvude võimsuse võrdlemine ja tõestamine. Reaalarvude suurem võimsus kui täisarvude võimsus (Cantori teoreem): tõestuse idee. Mis on peatumisprobleem, selle lahendamatuse tõestuse idee. Mis on tugev ja mis nõrk AI, mis on turingi test ja mis on eliza. Mis on otsimeetodites minimax ja alpha-beta (tehnilisi detaile ja näiteid ei tule). Mis on peamise tehisintellekti arendamise meetodid/lähenemised. Mis sorti ülesandeid praegused tehisintellektisüsteemid suudavad ok/väga hästi/väga halvasti lahendada?  Mis on IBM Watson ja Wolfram Alpha. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 12. nädal: Küberkaitse ja algoritmid: lahenduvus. ===&lt;br /&gt;
&lt;br /&gt;
25. november.&lt;br /&gt;
&lt;br /&gt;
* Kell 12: Olaf Maennel räägib küberkaitsest inglise keeles: The evolving world of cyber-operations. Abstract:&lt;br /&gt;
“Cyber”, as the 5th domain of warfare, is getting more awareness recently.  Our unpreparedness is also becoming apparent.  In this talk, we will revisit some recent developments in the sector and discuss the underlying fundamentals of the problems we are seeing.  How can we increase our cybersecurity posture as individuals and organisations?  Simple cybersecurity awareness changes, combined with some common sense and essential critical thinking, can already bring us quite far.  We will discuss some examples of offensive methods and understand how to build the required defensive culture.&lt;br /&gt;
&lt;br /&gt;
* Kell 13:45: Algoritmid: lahenduvus. &lt;br /&gt;
:Loengumaterjal: [[Media:Itsissejuhatus13a.ppt|Itsissejuhatus13a.ppt]], [[Media:Itsissejuhatus13a.pdf|Itsissejuhatus13a.pdf]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- :Loengumaterjal: [[Media:Itsissejuhatus13a.ppt|Itsissejuhatus13a.ppt]], [[Media:Itsissejuhatus13a.pdf|Itsissejuhatus13a.pdf]]. --&amp;gt;&lt;br /&gt;
* Eksamiks: lahenduvus teoreetilises ja tavamõttes, mis on lahenduvad ülesanded. Positiivsete täisarvude, positiivsete/negatiivsete ja murdarvude võimsuse võrdlemine ja tõestamine. Reaalarvude suurem võimsus kui täisarvude võimsus (Cantori teoreem): tõestuse idee. Mis on peatumisprobleem, selle lahendamatuse tõestuse idee. Küberkaitse teemad täpsustuvad loengute järel.&lt;br /&gt;
&lt;br /&gt;
Vaata lisaks lahenduvuse teemal:&lt;br /&gt;
&lt;br /&gt;
:* [https://en.wikipedia.org/wiki/Cardinality Kardinaal]&lt;br /&gt;
:* [https://en.wikipedia.org/wiki/Cantor%27s_diagonal_argument Cantori teoreem]&lt;br /&gt;
:* [https://en.wikipedia.org/wiki/Halting_problem Halting problem]&lt;br /&gt;
:* [https://en.wikipedia.org/wiki/G%C3%B6del%27s_incompleteness_theorems Incompleteness theorems]&lt;br /&gt;
:* Raamat [https://www.apollo.ee/godeli-toestus.html Gödeli tõestus]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Täiendavalt algoritmide teemal: &lt;br /&gt;
:* sorteerimisalgoritmide visualiseeringud [http://www.sorting-algorithms.com/ siin] ja [http://gizmodo.com/this-visualization-of-15-different-sorting-algorithms-i-987297677 siin] ja [http://aarondufour.com/tools/visualizer/ siin]&lt;br /&gt;
:* Eriliselt tore ja ilus [https://bost.ocks.org/mike/algorithms/ visualiseeringutega jutt] mitmete algoritmidega&lt;br /&gt;
:* Väga paljude algoritmide ja andmestruktuuride [https://visualgo.net/ visualiseeringud]&lt;br /&gt;
:* [https://en.wikipedia.org/wiki/Big_O_notation Suur O] wikipedias ja [https://www.bigocheatsheet.com/ lihtne cheatsheet]&lt;br /&gt;
:* [https://en.wikipedia.org/wiki/Travelling_salesman_problem Travelling salesman problem], [https://www.fourmilab.ch/documents/travelling/anneal/ simulated annealing algorithm], [[TSP programmi Java lähtekood| optimaalset lahendust otsiva programmi Java näite-lähtekood]], lokaalsete otsingute (optimaalsus ei ole tagatud) visualiseering [http://www.youtube.com/watch?v=SC5CX8drAtU siin]&lt;br /&gt;
:* [https://ncase.me/sight-and-light/ 2D raycasting]&lt;br /&gt;
:* [http://dijkstra.cs.ttu.ee/~tammet/oligarch.html Oligarch]: õppejõu väike demo varandusliku ebavõrdsuse tekkimisest: loe juurde [https://www.scientificamerican.com/article/is-inequality-inevitable/ SciAm artiklit] ja huvi korral vaata lehe lähtekoodi. Idee väikeseks hobiprojektiks: täiusta simulatsiooni niimoodi, et varade jaotus oleks tulpdiagrammina näha (agentide varade suuruse horisontaalsed jooned ülevalt alla) ja muutuks kogu simulatsiooni ajal, nii et saad jälgida, kuidas vara simulatsiooni käigus muutub ja koguneb. Selleks peab simulatsioonis joonistama välja mitte iga transaktsiooni järel, vaid mingi N järel, mis sõltub transaktsioonide koguarvust. Graafika tegemiseks loe [https://www.w3schools.com/graphics/canvas_intro.asp seda tutoriali] ja [http://math.hws.edu/graphicsbook/ seda praktilist õpikut].&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 13. nädal: Andmeteadus, andmekaeve. Rekursioon, funktsionaal- ja loogiline progemine ===&lt;br /&gt;
&lt;br /&gt;
2. detsember&lt;br /&gt;
&lt;br /&gt;
* Kell 12: [http://innar.com/ Innar Liiv] räägib [https://en.wikipedia.org/wiki/Data_science andmeteadusest] ja [https://en.wikipedia.org/wiki/Data_mining andmekaevest].&lt;br /&gt;
&lt;br /&gt;
* Kell 13:45. Rekursioon, funktsionaal- ja loogiline progemine. Loengumaterjal: [[Media:Itsissejuhatus11.ppt|Itsissejuhatus11.ppt]], [[Media:Itsissejuhatus11.pdf|Itsissejuhatus11.pdf]].&lt;br /&gt;
&lt;br /&gt;
* Eksamiks: rekursiooni äratundmine, baasjuht ja rekursiivne juht, rekursiooni ekvivalentsus tsükliga, arusaamine funktsionaalse keele näitejuppidest loengus: mida mingi näitekood teeb / mis on rehkendamise tulemus. Mis on lambda-arvutus. Prologi ja lambda-arvutuse näited tuleb ära tunda ja aru saada.&lt;br /&gt;
&lt;br /&gt;
Lisaks proovi ja loe veidi: &lt;br /&gt;
:* [https://en.wikipedia.org/wiki/Data_science andmeteadus]&lt;br /&gt;
&lt;br /&gt;
:* [http://en.wikipedia.org/wiki/Fractal Fraktaalid wikipedias]&lt;br /&gt;
:* [http://blog.hvidtfeldts.net/index.php/category/mandelbulb/ Mandelbub] ja [https://www.youtube.com/results?search_query=mandelbub selle videoklipid] [https://www.youtube.com/watch?v=Tj6rip3G62Y&amp;amp;feature=youtu.be Mandelbox and Flying Lights], [https://www.youtube.com/watch?v=bKknJvZIn24&amp;amp;feature=youtu.be Like in a dream II], [https://www.youtube.com/watch?v=APsLfpfDGOI&amp;amp;feature=youtu.be Weird planet II]. Taustaks veel [http://www.math.utah.edu/~bresslof/publications/01-1.pdf Geometric visual hallucinations, Euclidean symmetry and the functional architecture of striate cortex]&lt;br /&gt;
:* [http://tilde.club/~david/m/ kiire Mandelbroti fraktaal online] ja [https://guciek.github.io/web_mandelbrot.html#-0.5;0;2;1000  veidi aeglasem]&lt;br /&gt;
&amp;lt;!-- :* [http://www.softwarefederation.com/fractal.html Fraktaalide applet] vali vasaku hiireklahvi abil sisemine ala ja joonista uus&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
:* [http://rosettacode.org/wiki/Mandelbrot_set Mandelbroti hulga (pildi) joonistamise programme mitmes eri keeles]&lt;br /&gt;
:* [https://progur.com/2016/10/procedural-generation-create-fractal-trees-javascript.html fractal trees javascriptis], [https://progur.com/2016/10/procedural-generation-create-koch-curve-javascript.html sissejuhatus] ja terviknäide [http://dijkstra.cs.ttu.ee/~tammet/draw.html draw.html]. Vt ka [https://stackoverflow.com/questions/49785734/animating-a-fractal-tree-inside-a-javascript-canvas animeeritud puu]. Siit edasi [http://math.hws.edu/graphicsbook/ arvutigraafika veebiraamat].&lt;br /&gt;
:* [http://en.wikipedia.org/wiki/Tower_of_Hanoi Tower of Hanoi]&lt;br /&gt;
:* [http://en.wikipedia.org/wiki/Lambda_calculus Lambda-arvutus] &lt;br /&gt;
:Vaata ja proovi näiteid modifitseerida:&lt;br /&gt;
:* Vaata ja modifitseeri Ecki [https://math.hws.edu/eck/js/mandelbrot/MB.html mandelbroti joonistajat] ja [https://math.hws.edu/eck/js/xTurtle/xTurtle.html kilpkonnagraafikat]. Viimasest võta menüüst recursion tutorial ja recursive bush näide.&lt;br /&gt;
:Huvi korral katseta [https://swish.swi-prolog.org/ Prologi online] või installeeri  [http://www.swi-prolog.org/ SWI Prolog].&lt;br /&gt;
&lt;br /&gt;
=== 14. nädal: tarkvaraarendusprotsess, IT projektid ja äri. Planeerimisel ===&lt;br /&gt;
&lt;br /&gt;
9. detsember&lt;br /&gt;
&lt;br /&gt;
* Kell 12: Tarkvaraarendusprotsess, IT projektid ja äri.&lt;br /&gt;
:Loengumaterjal: [[Media:Itsissejuhatus_projektid_raha_20.pptx|Itsissejuhatus_projektid_raha_20.pptx]], [[Media:Itsissejuhatus_projektid_raha_20.pdf|Itsissejuhatus_projektid_raha_20.pdf]]&lt;br /&gt;
&lt;br /&gt;
* Kell 13:45:  Planeerimisel&lt;br /&gt;
&lt;br /&gt;
* Eksamiks: &amp;lt;!-- (1) Alltoodud kohustuslike artiklite läbilugemine. (2) Mis asi on: andmebaas, andmebaasisüsteem, SQL, projektide realiseerimise kosemudel (waterfall) ja agiilne mudel.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Proovi järgi andmebaaside teemal; kui keeruline, tee algul läbi [https://mystery.knightlab.com/walkthrough.html walkthrough] ja/või [https://www.w3schools.com/sql/sql_intro.asp w3schools SQL tutorial].&lt;br /&gt;
:* [https://mystery.knightlab.com/ SQL murder mystery]&lt;br /&gt;
:* endale installeerimiseks ja katsetamiseks: [https://www.sqlite.org/index.html sqlite]&lt;br /&gt;
:* väike näide, kuidas pythonist [[sqlite kasutada]] ilma midagi installeerimata.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Lisaks projektidest: &lt;br /&gt;
:* [https://www.smart-jokes.org/how-it-projects-really-work.html How projects really work] ja [https://archive.is/FgxPK selle pikk ajalugu]&lt;br /&gt;
:* [http://en.wikipedia.org/wiki/Agile_software_development Agile], [https://agilemanifesto.org/ agile manifesto] ja [https://agilemanifesto.org/principles.html selle põhimõtted] ja lisaks selle juurde [http://martinfowler.com/articles/newMethodology.html Martin Fowleri vana artikkel] ja [https://martinfowler.com/agile.html uus artikkel]&lt;br /&gt;
:* Paul Graham alustamisest: [http://www.paulgraham.com/ds.html do things that do not scale]&lt;br /&gt;
:* [http://startupclass.samaltman.com Sam Altmani startup-kursuse loenguvideod]&lt;br /&gt;
:* Kohustuslikud artiklid (toodud ka sellel lehel allpool,kohustuslike lugemismaterjalide osas):&lt;br /&gt;
:** Paul Graham: [http://www.paulgraham.com/start.html How to start a startup?]&lt;br /&gt;
:** Paul Graham: [http://www.paulgraham.com/gh.html Great hackers]&lt;br /&gt;
:** Joel Spolsky: [https://www.joelonsoftware.com/2002/02/13/the-iceberg-secret-revealed/ The iceberg secret revealed]&lt;br /&gt;
:** Joel Spolsky: [http://www.joelonsoftware.com/articles/fog0000000043.html IT firma töökorraldus: 12 steps]&lt;br /&gt;
:** Paul Reeves: [http://www.developerdotstar.com/mag/articles/reeves_design.html What is software design?] vana artikkel ja [http://www.developerdotstar.com/mag/articles/reeves_13yearslater.html What Is Software Design: 13 Years Later]&lt;br /&gt;
:** Fred Brooks 1986: [http://worrydream.com/refs/Brooks-NoSilverBullet.pdf No Silver Bullet]&lt;br /&gt;
:** Random ramblings: [http://rondam.blogspot.com/2006/10/top-ten-geek-business-myths.html Top ten geek business myths]&lt;br /&gt;
:** [https://zwischenzugs.com/2017/10/15/my-20-year-experience-of-software-development-methodologies/ 20 aastat kogemust tarkvara arendusmeetoditega]&lt;br /&gt;
&lt;br /&gt;
=== 15. nädal: Planeerimisel + konsultatsioon eksamiks ===&lt;br /&gt;
&lt;br /&gt;
16. detsember.&lt;br /&gt;
&lt;br /&gt;
* Kell 12: Planeerimisel.&lt;br /&gt;
&lt;br /&gt;
* Kell 13:45: konsultatsioon eksamiks.&lt;br /&gt;
&lt;br /&gt;
== Näiteid vanadest eksamitest ==&lt;br /&gt;
&lt;br /&gt;
Siin on näited väga ammu tehtud eksamitest. Tegelikud eksamiküsimused tulevad teistsugused, formaat on sama.&lt;br /&gt;
&lt;br /&gt;
* [[Media:itsissejuhatus_eksamnaide1.pdf|vana eksam 1]]&lt;br /&gt;
* [[Media:itsissejuhatus_eksamnaide2.pdf|vana eksam 2]]&lt;br /&gt;
* [[Media:itsissejuhatus_eksamnaide3.pdf|vana eksam 3]]&lt;br /&gt;
&lt;br /&gt;
== Kohustuslikud lugemismaterjalid ==&lt;br /&gt;
&lt;br /&gt;
Järgnevate materjalide läbilugemine on kursuse läbimisel kohustuslik ja nende kohta tuleb eksamil lugemiskontrolli-küsimusi:&lt;br /&gt;
&lt;br /&gt;
* Loogika ainest ja ajaloost: T.Tammet: [[Media:Loogikasissejuhatus_raamat.html|Loogika aine ja ajalugu]]: sissejuhatus T.Tamme, T.Tammeti ja R.Prangi loogikaõpikule &amp;quot;Mõtlemisest tõestamiseni&amp;quot;.&lt;br /&gt;
&amp;lt;!-- * Opsüsteemidest laiemas kontekstis: Kohustuslik on algusosa (esimene 1/4) pikast artiklist [[Media:Commandlinebook.html| In the Beginning was the Command Line]] --&amp;gt;&lt;br /&gt;
* Alan Turing [https://www.csee.umbc.edu/courses/471/papers/turing.pdf Computing Machinery and intelligence] &lt;br /&gt;
* Abstraktsioonidest ja tehnoloogiatükkidest: [http://www.joelonsoftware.com/articles/LeakyAbstractions.html Law of leaky abstractions]&lt;br /&gt;
* Paul Graham [http://paulgraham.com/hp.html Hackers and painters]&lt;br /&gt;
* Stiilist või midagi: [https://www.mit.edu/~xela/tao.html The Tao of Programming]. Selle teksti inspiratsiooniks/taustaks on [http://raulpage.org/daodej2.html daodejing], see tausta-originaal-daodejing ei ole kohustulik lugemine.&lt;br /&gt;
* Kohustuslikud artiklid IT projektide, ideoloogia, äri ja juhtimise teemal on järgmised. Neid &amp;quot;ära õppida&amp;quot; vms pole vaja, piisab lihtsast mõnusast kiirest läbilugemisest:&lt;br /&gt;
** Paul Graham: [http://www.paulgraham.com/start.html How to start a startup?]&lt;br /&gt;
** Paul Graham: [http://www.paulgraham.com/gh.html Great hackers]&lt;br /&gt;
** Joel Spolsky: [https://www.joelonsoftware.com/2002/02/13/the-iceberg-secret-revealed/ The iceberg secret revealed]&lt;br /&gt;
** Joel Spolsky: [http://www.joelonsoftware.com/articles/fog0000000043.html IT firma töökorraldus: 12 steps]&lt;br /&gt;
** Paul Reeves: [http://www.developerdotstar.com/mag/articles/reeves_design.html What is software design?] vana artikkel ja [http://www.developerdotstar.com/mag/articles/reeves_13yearslater.html What Is Software Design: 13 Years Later]&lt;br /&gt;
** Gnu manifestid [http://www.gnu.org/philosophy/free-sw.html The Free Software Definition] ja [http://www.gnu.org/philosophy/selling.html Selling Free Software]&lt;br /&gt;
** Fred Brooks 1986: [http://worrydream.com/refs/Brooks-NoSilverBullet.pdf No Silver Bullet]&lt;br /&gt;
** Random ramblings: [http://rondam.blogspot.com/2006/10/top-ten-geek-business-myths.html Top ten geek business myths]&lt;br /&gt;
** [https://zwischenzugs.com/2017/10/15/my-20-year-experience-of-software-development-methodologies/ 20 aastat kogemust tarkvara arendusmeetoditega]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** Paul Graham: [http://www.paulgraham.com/bronze.html Why smart people have bad ideas]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** Joel Spolsky: Funktsionaalsuse spec:Painless Functional Specifications (1 osa): http://www.joelonsoftware.com/articles/fog0000000036.html&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** Joel Spolsky: Projekti planeerimine: Painless Software Schedules: http://www.joelonsoftware.com/articles/fog0000000245.html&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loe iga päev ==&lt;br /&gt;
&lt;br /&gt;
* http://news.ycombinator.com/&lt;br /&gt;
* http://www.reddit.com (hea mõte on registreeruda ja valida sobivad alamredditid, näiteks&lt;br /&gt;
** http://www.reddit.com/r/programming&lt;br /&gt;
** http://www.reddit.com/r/technology&lt;br /&gt;
** http://www.reddit.com/r/artificial&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Loe vahel: http://www.engadget.com&lt;br /&gt;
* Loe vahel: http://www.news.com&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Kursuse käigus on mõistlik lugeda valikut artikleid kõigist neist saitidest:&lt;br /&gt;
* [http://www.paulgraham.com/articles.html Paul Grahami esseed, uusi suhteliselt harva].&lt;br /&gt;
* [http://www.gnu.org/philosophy/ Gnu manifestid]: suur ideoloogiline taustajõud&lt;br /&gt;
* [http://math.hws.edu/TMCM/java/index.html David Eck: Labs and Applets for &amp;quot;The Most Complex Machine&amp;quot;]: harjutamiseks&lt;br /&gt;
* [http://catb.org/~esr/jargon Jargon leksikon ja the New Hacker&#039;s Dictionary]: ajalooliselt huvitav&lt;br /&gt;
* [http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/ The cathedral and Bazaar]: ajalooliselt huvitav&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Kuula ==&lt;br /&gt;
&lt;br /&gt;
Mh vaata läbi varasemate episoodide loetelu ja kuula, kui tundub põnev:&lt;br /&gt;
* [https://lexfridman.com/ai/ ai podcasti], näiteks [https://lexfridman.com/steven-pinker/ Steven Pinkeri] episoodi.&lt;br /&gt;
* [https://www.preposterousuniverse.com/podcast/ Mindscape podcasti]&lt;br /&gt;
&lt;br /&gt;
Mõned valikepisoodid mujalt:&lt;br /&gt;
* [https://philosophybites.com/2015/03/jonathan-webber-on-deceiving-with-words.html Jonathan Webber on deceiving with words] episood&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Kui kõik tundub liiga lihtne, siis: ==&lt;br /&gt;
&lt;br /&gt;
* Loe läbi enamus [http://www.paulgraham.com/articles.html Paul Grahami esseid].&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Loe läbi Steven Raymondi raamat (NB! algajatel raske õieti mõista :-) [http://www.faqs.org/docs/artu/ The Art of Unix Programming]&lt;br /&gt;
* Võta ette programmeerimise &amp;lt;i&amp;gt;süvendatud&amp;lt;/i&amp;gt; algkursus.&lt;br /&gt;
* Tee omal käel ette läbi terve [http://courses.cs.ttu.ee/pages/ITI0011 Programmeerimise põhikursus] (peaasi: tee kõik harjutustööd: programmeerimise õppimiseks ainus viis on palju programmeerida :-)&lt;br /&gt;
* [http://webster.cs.ucr.edu/ Õpi assembleris programmeerima] (üpris ebapraktiline oskus, aga hästi hariv :-)&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Kursus]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Commonsense_rules_development&amp;diff=19302</id>
		<title>Commonsense rules development</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Commonsense_rules_development&amp;diff=19302"/>
		<updated>2021-12-08T14:55:24Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A place to develop and maintain commonsense rules for quasimodo etc.&lt;br /&gt;
&lt;br /&gt;
= Static knowledge encoding =&lt;br /&gt;
&lt;br /&gt;
Description of current Quasimodo/ConceptNet encoding coming soon&lt;br /&gt;
&lt;br /&gt;
= Event encoding =&lt;br /&gt;
&lt;br /&gt;
We use Neo-Davidsonian encoding with semantic roles:&lt;br /&gt;
&lt;br /&gt;
* actor (subject)&lt;br /&gt;
* patient (object)&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
Event type is the verb that describes the event.&lt;br /&gt;
&lt;br /&gt;
Example: &amp;quot;Brutus stabbed Caesar in the agora&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  event_subject(brutus, ev1).&lt;br /&gt;
  event_object(caesar, ev1).&lt;br /&gt;
  event_type(stab, ev1).&lt;br /&gt;
  event_location(agora, ev1).&lt;br /&gt;
&lt;br /&gt;
== Connecting Static Knowledge to Events ==&lt;br /&gt;
&lt;br /&gt;
This is mostly unsolved. This minimal example may help get things started:&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Did grape juice turn into wine?&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  event_subject(grape_juice, ev1).&lt;br /&gt;
  event_type(turn_into, ev1).&lt;br /&gt;
&lt;br /&gt;
There are multiple ways of encoding that this is a question, for example:&lt;br /&gt;
&lt;br /&gt;
  event_object(wine, ev1) =&amp;gt; $ans(yes).&lt;br /&gt;
&lt;br /&gt;
Assuming we have commonsense knowledge about fermenting grape juice:&lt;br /&gt;
&lt;br /&gt;
  be(grape_juice, X) =&amp;gt; ovs(wine, turn_into, X).&lt;br /&gt;
  % reflexivity&lt;br /&gt;
  be(X, X).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Proposal&#039;&#039;&#039; SVO triples can be connected to events like this:&lt;br /&gt;
&lt;br /&gt;
  ovs(Z, Y, X) &amp;amp; event_type(Y, W) &amp;amp; event_subject(X, W) =&amp;gt; event_object(Z, W).&lt;br /&gt;
&lt;br /&gt;
This example does not fully make sense yet, since the event itself lacks context. Work in progress.&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Commonsense_rules_development&amp;diff=19301</id>
		<title>Commonsense rules development</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Commonsense_rules_development&amp;diff=19301"/>
		<updated>2021-12-08T11:54:39Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A place to develop and maintain commonsense rules for quasimodo etc.&lt;br /&gt;
&lt;br /&gt;
= Static knowledge encoding =&lt;br /&gt;
&lt;br /&gt;
Description of current Quasimodo/ConceptNet encoding coming soon&lt;br /&gt;
&lt;br /&gt;
= Event encoding =&lt;br /&gt;
&lt;br /&gt;
We use Neo-Davidsonian encoding with semantic roles:&lt;br /&gt;
&lt;br /&gt;
* actor (subject)&lt;br /&gt;
* patient (object)&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
Event type is the verb that describes the event.&lt;br /&gt;
&lt;br /&gt;
Example: &amp;quot;Brutus stabbed Caesar in the agora&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  event_subject(brutus, ev1).&lt;br /&gt;
  event_object(caesar, ev1).&lt;br /&gt;
  event_type(stab, ev1).&lt;br /&gt;
  event_location(agora, ev1).&lt;br /&gt;
&lt;br /&gt;
== Connecting Static Knowledge to Events ==&lt;br /&gt;
&lt;br /&gt;
This is mostly unsolved. This minimal example may help get things started:&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Did grape juice turn into wine?&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  event_subject(grape_juice, ev1).&lt;br /&gt;
  event_type(turn_into, ev1).&lt;br /&gt;
&lt;br /&gt;
There are multiple ways of encoding that this is a question, for example:&lt;br /&gt;
&lt;br /&gt;
  event_object(wine, ev1) =&amp;gt; $ans(yes).&lt;br /&gt;
&lt;br /&gt;
Assuming we have commonsense knowledge about fermenting grape juice:&lt;br /&gt;
&lt;br /&gt;
  be(grape_juice, X) =&amp;gt; ovs(wine, turn_into, X).&lt;br /&gt;
  % reflexivity&lt;br /&gt;
  be(X, X).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Proposal&#039;&#039; SVO triples can be connected to events like this:&lt;br /&gt;
&lt;br /&gt;
  ovs(Z, Y, X) &amp;amp; event_type(Y, W) &amp;amp; event_subject(X, W) =&amp;gt; event_object(Z, W).&lt;br /&gt;
&lt;br /&gt;
This example does not fully make sense yet, since the event itself lacks context. Work in progress.&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Esileht&amp;diff=19300</id>
		<title>Esileht</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Esileht&amp;diff=19300"/>
		<updated>2021-12-07T11:55:19Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;table&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td style=&amp;quot;padding: .5em 0em 0em; &amp;quot; valign=&amp;quot;top&amp;quot; width=&amp;quot;60%&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- [[Pilt:Remington smaller.JPG|left|Remington]]--&amp;gt; &lt;br /&gt;
&#039;&#039;&#039;Lambda.ee&#039;&#039;&#039; on kogumik programmeerimise ja arvutiteaduse kursuste materjale.&lt;br /&gt;
Kõik järgnevad materjalid on vabaks kasutamiseks. &lt;br /&gt;
&amp;lt;table&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;table&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td style=&amp;quot;padding: .7em 1em 1em;  text-align: left; vertical-align: top;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Toimuvad ja hiljutised kursused&amp;lt;/h2&amp;gt;&lt;br /&gt;
* [[Sissejuhatus infotehnoloogiasse|Sissejuhatus infotehnoloogiasse: iti0101]]&lt;br /&gt;
* [[Semantika ja analüütiline filosoofia|Semantika ja analüütiline filosoofia: itv9070]]&lt;br /&gt;
* [[Hajussüsteemid|Hajussüsteemid: iti0215]]&lt;br /&gt;
* [[Teadmiste formaliseerimine|Teadmiste formaliseerimine: iti8700]]&lt;br /&gt;
* [[Veebirakendused]] ehk iti0205&lt;br /&gt;
* [[Tarkvaratehnoloogiad]] ehk [[Tarkvaratehnoloogiad|ito8020]]&lt;br /&gt;
* [[Algoritmide ja andmestruktuuride erikursus|Algoritmide ja andmestruktuuride erikursus automaatmõtlemise valdkonnas: iti850]]&lt;br /&gt;
* [[Real-Time Operating Systems and Systems Programming]] ehk [[iti8510]]&lt;br /&gt;
* [https://courses.cs.ttu.ee/pages/Kasutajaliidesed_(ITV0209) Kasutajaliidesed] ehk itv0130&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;lt;h2&amp;gt;Uudised&amp;lt;/h2&amp;gt;&lt;br /&gt;
* [http://news.ycombinator.com/ Hacker News] &lt;br /&gt;
* [http://programming.reddit.com reddit] -  programmeerimise alamredditid&lt;br /&gt;
* [http://www.slashdot.org Slashdot] - news for nerds.&lt;br /&gt;
* [https://www.engadget.com engadget] - gadgets and stuff&lt;br /&gt;
* [http://www.news.com news.com] - mainstream ja IT-äri.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td style=&amp;quot;padding: .7em 1em 1em; background-color: #f0f0ff; text-align: left; vertical-align: top;&amp;quot;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt; Muud kursused  &amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Varasemad:&lt;br /&gt;
* [[Tehisintellekti ja masinõppe alused]] ehk [[iti0210]]&lt;br /&gt;
* [[Tarkvaraarenduse meeskonnaprojekt]] ehk [[itv0200]]&lt;br /&gt;
* [[Kasutajaliidesed]] ehk [[itv0130]]&lt;br /&gt;
* [[Real-Time Operating Systems and Systems Programming]] ehk [[iti8510]]&lt;br /&gt;
* [[Intelligentsed süsteemid]] ehk [[ifi6057]]&lt;br /&gt;
* [[Rakendusliku loogika süvakursus]] ehk [[itv0080]]&lt;br /&gt;
* [http://www.lambda.ee/index.php/ITI0011 Programmeerimise põhikursus JAVA-s] ehk [[ITI0011]]&lt;br /&gt;
* [[Arvutigraafika teooria ja praktika]] ehk [[Iti0090]]&lt;br /&gt;
* [[cyber security]] master studies&lt;br /&gt;
* [[Doktoriseminar]]&lt;br /&gt;
* [[Arvutigraafika teooria ja praktika]] ehk [[Iti0090]]&lt;br /&gt;
* [http://www.lambda.ee/index.php/ITI0140 Programmeerimise süvendatud algkursus] ehk [[ITI0140]]&lt;br /&gt;
* [[Real-Time Operating Systems and Systems Programming]] ehk [[iti8510]]&lt;br /&gt;
* [[Süsteemprogrammeerimine keeles C]] ehk [[itv0020]]&lt;br /&gt;
&amp;lt;!-- * [[Veebiteenused ja Interneti-lahenduste arhitektuur]] ehk [[idu0080]] --&amp;gt;&lt;br /&gt;
* [[Bakalaureusetööde seminar 2013 kevadel]]&lt;br /&gt;
* [[Secure software design]] ehk MTAT.03.246&lt;br /&gt;
* [[Süsteemprogrammeerimine keeles C]] ehk [[itv0020]]&lt;br /&gt;
* [[Kasutajaliidesed võrgutehnoloogia baasil]]  ehk [[itv0030]]&lt;br /&gt;
&amp;lt;!-- * [[Rakendusliku loogika süvakursus]] ehk [[itv0080]] --&amp;gt;&lt;br /&gt;
* [[Introduction to Information Technology]] ehk [[itx0025]]&lt;br /&gt;
* [[Programmeerimise põhikursus]] ehk [[iti0010]]&lt;br /&gt;
* [[Andmebaaside administreerimine]]  ehk [[itv0090]]&lt;br /&gt;
* [[Foundations of Embedded Real-Time Systems]] ehk [[iti8500]]&lt;br /&gt;
* [[Programmeerimise algkursus]] ehk  [[I200]]&lt;br /&gt;
* [[Tehisintellektisüsteemid internetis]] ehk [[itv9170]]&lt;br /&gt;
* [[Võrgurakendused I: klient-server süsteemide ehitamine]], [[i202]]&lt;br /&gt;
* [[Infosüsteemide ründed ja kaitse]]&lt;br /&gt;
* [[Infoturbe/küberturbe korraldamine]] ehk [[ itx8034]]&lt;br /&gt;
* [[Kurivara]] ehk [[Kurivara| itx8031]]&lt;br /&gt;
* [[Andmeside protokollid]] ehk [[itv8030]]&lt;br /&gt;
&lt;br /&gt;
Mujal:&lt;br /&gt;
* [http://cs.ttu.ee/kursused/itv0050/ Operatsioonisüsteemide ja arvutivõrkude haldamine]&lt;br /&gt;
* [http://deepthought.ttu.ee/it/vorgutarkvara/wav3060/ Operatsioonisüsteemide tehnoloogia]&lt;br /&gt;
* [http://www.cs.ioc.ee/~tarmo/lcs04/ Loogika arvutiteaduses] &lt;br /&gt;
* [http://deepthought.ttu.ee/it/vorgutarkvara/wav4121/ Rakendusliku loogika süvakursus] &lt;br /&gt;
* [http://cs.ttu.ee/kursused/iti0050/ TTÜ Algoritmid ja andmestruktuurid] &lt;br /&gt;
* [http://cs.ttu.ee/kursused/itv0100/ Programmeerimise erikursus]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w15&amp;diff=19299</id>
		<title>Iti0210w15</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w15&amp;diff=19299"/>
		<updated>2021-12-07T11:54:00Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 15. Nädal =&lt;br /&gt;
&lt;br /&gt;
k-NN, otsustuspuu, lineaarne regressioon. [&#039;&#039;AIMA&#039;&#039;] 18.3-18.3.4, 18.6, 18.8-18.8.2;  [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch7.S3.html 7.3], [https://artint.info/2e/html/ArtInt2e.Ch7.S7.html 7.7],[https://artint.info/2e/html/ArtInt2e.Ch12.S9.html 12.9]&lt;br /&gt;
&lt;br /&gt;
Rekurrentsed närvivõrgud. [https://cs.stanford.edu/people/karpathy/recurrentjs/ Väike LSTM demo].&lt;br /&gt;
&lt;br /&gt;
DQN - sügavate närvivõrkudega Q-õppimine.&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:Iti0210_w15.pdf|PDF]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://echo360.org.uk/media/9e777e8e-6e34-4fe5-b2b9-71cf36ea41ae/public loengu salvestus]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w13&amp;diff=19298</id>
		<title>Iti0210w13</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w13&amp;diff=19298"/>
		<updated>2021-12-07T11:53:46Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 14. Nädal =&lt;br /&gt;
&lt;br /&gt;
Hüvitisega õppimine ehk stiimulõpe. &#039;&#039;Q-Learning&#039;&#039;. [&#039;&#039;AIMA&#039;&#039;] 21.3.2, [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch12.S4.html 12.4]-12.5.&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:Iti0210_w14.pdf|PDF]]&lt;br /&gt;
&lt;br /&gt;
[https://blog.valohai.com/reinforcement-learning-tutorial-part-1-q-learning Sissejuhatus Q-õppesse], loe 1. osa lõpuni, järgmiseid osasid pole tarvis.&lt;br /&gt;
&lt;br /&gt;
[http://www.youtube.com/watch?v=f2nIKFMyfSg Reinforcement Learning: Example and Tutorial]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://echo360.org.uk/media/ceb0f4d5-3bac-4310-84d6-c338809b27fc/public loengu salvestus]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w121&amp;diff=19297</id>
		<title>Iti0210w121</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w121&amp;diff=19297"/>
		<updated>2021-12-07T11:53:29Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 13. Nädal =&lt;br /&gt;
&lt;br /&gt;
Närvivõrkude treenimine. [&#039;&#039;AIMA&#039;&#039;] 18.2, 18.7.4 [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch7.S5.html 7.1], 7.4-7.5&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:Iti0210_w13.pdf|PDF]]&lt;br /&gt;
&lt;br /&gt;
[https://cs.stanford.edu/people/karpathy/convnetjs/demo/mnist.html Andrej Karpathy CNN demo] MNIST andmestikul.&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://echo360.org.uk/media/91ca8b31-365c-4177-b71b-62196d189f73/public loengu salvestus]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w12&amp;diff=19296</id>
		<title>Iti0210w12</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w12&amp;diff=19296"/>
		<updated>2021-12-07T11:53:16Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 12. Nädal =&lt;br /&gt;
&lt;br /&gt;
Närvivõrgud. [&#039;&#039;AIMA&#039;&#039;] 18.7-18.7.3 [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch7.S5.html 7.5]&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:Iti0210_w12.pdf|PDF]]&lt;br /&gt;
&lt;br /&gt;
[https://playground.tensorflow.org/ Tensorflow Playground] väikeste võrkude katsetamiseks&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://echo360.org.uk/media/93d2817d-c259-42c0-8f42-21215acc1219/public loengu salvestus]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w101&amp;diff=19295</id>
		<title>Iti0210w101</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w101&amp;diff=19295"/>
		<updated>2021-12-07T11:53:03Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 11. nädal =&lt;br /&gt;
&lt;br /&gt;
Peidetud Markovi mudel.&lt;br /&gt;
&lt;br /&gt;
Loengu materjal õpikus: [&#039;&#039;AIMA&#039;&#039;] 15-15.2.2 [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch8.S5.html 8.5]-8.5.3&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:ITI0210_w11.pdf|PDF]]&lt;br /&gt;
&lt;br /&gt;
[[Iti0210w101demo|HMM demo]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://echo360.org.uk/media/c7d14d0a-4f25-4a45-b9af-d58df2734ba4/public loengu salvestus]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w10&amp;diff=19294</id>
		<title>Iti0210w10</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w10&amp;diff=19294"/>
		<updated>2021-12-07T11:52:52Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 10. nädal =&lt;br /&gt;
&lt;br /&gt;
Bayesi teoreem ja &amp;quot;naiivne&amp;quot; Bayesi mudel.&lt;br /&gt;
&lt;br /&gt;
Diskreetsete tõenäosuste hindamine ja arvutamine.&lt;br /&gt;
&lt;br /&gt;
Loengu materjal õpikus: [&#039;&#039;AIMA&#039;&#039;] 13.3-13.5  [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch8.S2.html 8.2],8.4, [https://artint.info/2e/html/ArtInt2e.Ch10.S1.html 10.1]-10.1.2&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Bayesi võrgud.&lt;br /&gt;
&lt;br /&gt;
Loengu materjal õpikus: [&#039;&#039;AIMA&#039;&#039;] 14.1, 14.4.1, 14.5 [&#039;&#039;ARTINT&#039;&#039;]--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:Iti0210_w10.pdf|PDF]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://echo360.org.uk/media/920852a9-83bf-414d-9f83-bbd17c2db09e/public loengu salvestus]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w9&amp;diff=19293</id>
		<title>Iti0210w9</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w9&amp;diff=19293"/>
		<updated>2021-12-07T11:52:37Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 9. nädal =&lt;br /&gt;
&lt;br /&gt;
Määramatus, loogika ja tõenäosused.&lt;br /&gt;
&lt;br /&gt;
Ühisjaotusel põhinev tõenäosuslik järelduste tegemine.&lt;br /&gt;
&lt;br /&gt;
Loengu materjal õpikus: [&#039;&#039;AIMA&#039;&#039;] 13.1-13.3; [&#039;&#039;ARTINT&#039;&#039;] [http://artint.info/2e/html/ArtInt2e.Ch8.html 8.1]-8.1.3&lt;br /&gt;
&amp;lt;!--Bayesi teoreem ja &amp;quot;naiivne&amp;quot; Bayesi mudel.&lt;br /&gt;
&lt;br /&gt;
Loengu materjal õpikus: [&#039;&#039;AIMA&#039;&#039;] 13.1-13.5; [&#039;&#039;ARTINT&#039;&#039;] 8.1.1-8.1.3, 10.1-10.1.2--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:ITI0210_w9.pdf|PDF]]&lt;br /&gt;
&lt;br /&gt;
Tõenäosuslik järelduse otse arvutamine: [[Media:somerville.txt|testandmed]], [[Iti0210w9tut|kood]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://echo360.org.uk/media/eae9902a-845f-4226-b3e6-1eed58bbef3b/public loengu salvestus]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w8&amp;diff=19292</id>
		<title>Iti0210w8</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w8&amp;diff=19292"/>
		<updated>2021-12-07T11:52:18Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 9. Nädal =&lt;br /&gt;
&lt;br /&gt;
Predikaatloogika.&lt;br /&gt;
&lt;br /&gt;
Loengu materjal õpikutes:&lt;br /&gt;
[&#039;&#039;AIMA&#039;&#039;] 8.1-8.3, 9.4.2&lt;br /&gt;
[&#039;&#039;ARTINT&#039;&#039;] [http://artint.info/2e/html/ArtInt2e.Ch13.html 13] (kõike pole kindlasti tarvis lugeda, aga teemaga seotud osad on kuni 13.8-ni välja)&lt;br /&gt;
&lt;br /&gt;
Päris hea eestikeelne loogikaõpik: [[Media:Loogikaopik.pdf|PDF]]&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:ITI0210_w8.pdf|PDF]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://echo360.org.uk/media/ec67b329-5848-46a8-bae0-613be4c11842/public loengu salvestus]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w72&amp;diff=19291</id>
		<title>Iti0210w72</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w72&amp;diff=19291"/>
		<updated>2021-12-07T11:52:04Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 7. Nädal =&lt;br /&gt;
&lt;br /&gt;
Tõestamine lausearvutuses. Resolutsioonimeetod. [&#039;&#039;AIMA&#039;&#039;] 7.5; [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch5.S3.SS2.html 5.3.2]&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:ITI0210_w7.pdf|PDF]]&lt;br /&gt;
&lt;br /&gt;
Solver http://logictools.org&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://echo360.org.uk/media/49206df5-f875-4101-8f56-1df223bafb3c/public loengu salvestus]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w7&amp;diff=19290</id>
		<title>Iti0210w7</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w7&amp;diff=19290"/>
		<updated>2021-12-07T11:51:46Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 6. Nädal =&lt;br /&gt;
&lt;br /&gt;
Teadmiste esitus, järeldamine, loogika&lt;br /&gt;
&lt;br /&gt;
Loengu materjal õpikutes: [&#039;&#039;AIMA&#039;&#039;] 7.1-7.4; [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch5.html 5]-5.3&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:ITI0210_w6.pdf|PDF]]&lt;br /&gt;
&lt;br /&gt;
Solver http://logictools.org&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://echo360.org.uk/media/d380b476-be8c-4178-9946-0b0126f524c5/public loengu salvestus]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w6&amp;diff=19289</id>
		<title>Iti0210w6</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w6&amp;diff=19289"/>
		<updated>2021-12-07T11:51:29Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 5. nädal ==&lt;br /&gt;
&lt;br /&gt;
Otsing mängupuul: &#039;&#039;minimax&#039;&#039;&amp;lt;!-- ja &#039;&#039;alpha-beta&#039;&#039;.--&amp;gt; ja MCTS&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Mittedeterministlikud mängud, osalise informatsiooniga mängud.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Loenguslaidid: [[Media:chapter06-abbrev2.pdf|PDF]]; --&amp;gt;&amp;lt;!--[&#039;&#039;TI&#039;&#039;] 19 --&amp;gt;&lt;br /&gt;
Loenguslaidid: [[Media:ITI0210w5.pdf|PDF]] (parandatud 23. veebruar); [&#039;&#039;AIMA&#039;&#039;] chapter 5.1-5.3 [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch11.S3.html 11.3]&lt;br /&gt;
&lt;br /&gt;
[https://www.youtube.com/watch?v=UXW2yZndl7U Monte Carlo puuotsing]&lt;br /&gt;
&lt;br /&gt;
MC puuotsing: [https://www.chessprogramming.org/images/d/d2/Uct-poster-erdmann.png UCT poster]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
[https://echo360.org.uk/media/b16b75c4-ff22-4f9c-ba84-242b91149e0d/public loengu salvestus]&lt;br /&gt;
&lt;br /&gt;
Alpha-beta praktikas: [http://people.csail.mit.edu/plaat/mtdf.html MTD(f) ja NegaScout]&lt;br /&gt;
[https://echo360.org.uk/media/cac7c328-89e5-4eba-a3aa-bd1a261b503a/public loengu salvestus, räägib MCTS asemel alpha-betast].&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w45&amp;diff=19288</id>
		<title>Iti0210w45</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w45&amp;diff=19288"/>
		<updated>2021-12-07T11:50:51Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 4. nädal ==&lt;br /&gt;
&lt;br /&gt;
=== Lokaalne otsing ===&lt;br /&gt;
&lt;br /&gt;
Optimeerimisülesanded ja mäeronimine. [&#039;&#039;AIMA&#039;&#039;] chapter 4-4.1.1. [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch4.S7.html 4.7]-4.7.1&lt;br /&gt;
&lt;br /&gt;
Juhuslikkusel põhinevad algoritmid ja metaheuristikud. [&#039;&#039;AIMA&#039;&#039;] chapter 4.1.2-4.1.4. [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch4.S7.SS2.html 4.7.2]-4.7.3, [https://artint.info/2e/html/ArtInt2e.Ch4.S8.html 4.8]&lt;br /&gt;
&lt;br /&gt;
Slaidid: [[Media:ITI0210_w4.pdf|PDF]]&amp;lt;!--[[Media:chapter04b-abbrev.pdf|PDF]][[Media:chapter04b-metah.pdf|PDF]]--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ILS slaidid: [[Media:Sls-ils-abbrev.pdf|PDF]]&lt;br /&gt;
&lt;br /&gt;
Ahne konstrueerimine, [https://en.wikipedia.org/wiki/Travelling_salesman_problem#Heuristic_and_approximation_algorithms animatsioon Wikipeedias]&lt;br /&gt;
&lt;br /&gt;
TSP: ahne konstrueerimine, 2-opt hill climbing ja SA [https://www.youtube.com/watch?v=SC5CX8drAtU visuaalselt].&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://echo360.org.uk/media/e6b48b1e-79ea-46fb-b0fa-34ecca291cc7/public loengu salvestus]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w3&amp;diff=19287</id>
		<title>Iti0210w3</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w3&amp;diff=19287"/>
		<updated>2021-12-07T11:50:32Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 3. nädal =&lt;br /&gt;
&lt;br /&gt;
Olekuruum ja otsing.&lt;br /&gt;
&lt;br /&gt;
Videoloeng: [http://www.youtube.com/watch?v=owK5uEYtA4c olekuruum].&lt;br /&gt;
&lt;br /&gt;
Otsingustrateegiad, A* optimaalsus.&lt;br /&gt;
&lt;br /&gt;
Loengu slaidid: [[Media:ITI0210_w3.pdf|PDF]]&lt;br /&gt;
&lt;br /&gt;
[&#039;&#039;AIMA&#039;&#039;] chapter 3.2-3.5.2, [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch3.S1.html 3.1]-3.2, &lt;br /&gt;
[https://artint.info/2e/html/ArtInt2e.Ch3.S4.html 3.4]-3.6&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://echo360.org.uk/media/1c7dc2d1-880b-49e2-958c-62ca4ded56a5/public loengu salvestus]&lt;br /&gt;
&lt;br /&gt;
Loengu slaidid: [[Media:chapter03-abbrev.pdf|PDF]][[Media:search_strat.pdf|PDF]][[Media:chapter04a-abbrev2.pdf|PDF]].&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w2&amp;diff=19286</id>
		<title>Iti0210w2</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w2&amp;diff=19286"/>
		<updated>2021-12-07T11:50:07Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 2. nädal =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Lühendatud slaidid [[Media:chapter02-abbrev.pdf|PDF]] ([http://aima.cs.berkeley.edu/slides-pdf originaal siin]); &lt;br /&gt;
&lt;br /&gt;
Algoritmide ja ülesannete keerukus: [[Media:complexity.pdf|PDF]].&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sissejuhatus otsingusse - tee leidmine 2D ruudustikus.&lt;br /&gt;
&lt;br /&gt;
[http://www.redblobgames.com/pathfinding/a-star/introduction.html Pathfinding tutorial] (&amp;lt;-- peamine õppematerjal selleks nädalaks)&lt;br /&gt;
&lt;br /&gt;
Laiutiotsing, ahne otsing ja A*.&lt;br /&gt;
&lt;br /&gt;
Heuristiliste funktsioonide näited: kaugus linnulennult ja &#039;&#039;Manhattan distance&#039;&#039;. [https://prismoskills.appspot.com/lessons/2D_and_3D_Puzzles/imgs/Manhattan_and_Euclidean.png Vaata pilti].&lt;br /&gt;
&lt;br /&gt;
Lisaks loe: [&#039;&#039;AIMA&#039;&#039;] 3.1  või [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch3.S2.html 3.2], &lt;br /&gt;
[https://artint.info/2e/html/ArtInt2e.Ch3.S4.html 3.4]&lt;br /&gt;
[[Category:Iti0210]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://echo360.org.uk/media/a1af4106-85b1-47ae-b143-419b2cb16ec1/public Loengu salvestus]&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=19285</id>
		<title>Tehisintellekti ja masinõppe alused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=19285"/>
		<updated>2021-12-07T11:49:13Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kood: &#039;&#039;&#039;ITI0210&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vaatad praegu vana lehte - 2021 sügisest on aine ainult Moodles.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://ois.ttu.ee/aine/ITI0210 ÕIS ainekaart]&lt;br /&gt;
&lt;br /&gt;
Kursust loetakse Tallinna Tehnikaülikooli informaatika üliõpilastele.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Toimumiskoht ja aeg (2021) ==&lt;br /&gt;
&lt;br /&gt;
* loeng teisipäev, 12.00 &amp;lt;strike&amp;gt;U06A-229&amp;lt;/strike&amp;gt; distantsõpe - [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public otseülekanne videos] jätkub&lt;br /&gt;
* 11 mai loeng toimub MS Teamsis reaalajas IAIB töörühmas - magistrandid palun liituge [https://moodle.taltech.ee/mod/forum/discuss.php?d=98606 võtmega sellelt lingilt].&lt;br /&gt;
* harjutus IAIB reede, 10.00 MS Teams&lt;br /&gt;
* harjutus IABM, IAPM reede, 12.00 MS Teams&lt;br /&gt;
&lt;br /&gt;
Teamsi harjutustundidest saab osa võtta TalTechi Uni-ID kontoga.&lt;br /&gt;
&lt;br /&gt;
Loengute otseülekanded ja salvestused [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public vaadatavad Echo360-s] või [https://moodle.taltech.ee/course/view.php?id=30646 moodles].&lt;br /&gt;
&lt;br /&gt;
õppejõud: Priit Järv&lt;br /&gt;
&lt;br /&gt;
kontakt: priit.jarv1 at ttu.ee&lt;br /&gt;
&lt;br /&gt;
== Juhend ==&lt;br /&gt;
&lt;br /&gt;
[[Iti0210juhend2021|LOE SEDA]]. Kuidas aine edukalt ära teha.&lt;br /&gt;
&lt;br /&gt;
Alates 2. nädalast eeldame, et iga üliõpilane on juhendiga tutvunud.&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
== Õpikud ==&lt;br /&gt;
&lt;br /&gt;
Põhiõpik:&lt;br /&gt;
&lt;br /&gt;
[&#039;&#039;AIMA&#039;&#039;] Russell, S.J and Norvig, P. Artificial intelligence: a modern approach, third edition, Prentice Hall. 2009. [https://www.ester.ee/record=b2881231*est Olemas ülikooli raamatukogus].&lt;br /&gt;
&amp;lt;!--http://aima.cs.berkeley.edu/--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatiiv:&lt;br /&gt;
&lt;br /&gt;
[&#039;&#039;ARTINT&#039;&#039;] Poole, D.L and Mackworth, A. K. Artificial Intelligence: Foundations of Computational Agents,  2nd Edition. Cambridge University Press, 2017. https://artint.info/2e/html/ArtInt2e.html&lt;br /&gt;
&lt;br /&gt;
Kui näed wikis viidet nagu &amp;quot;[&#039;&#039;AIMA&#039;&#039;] 3.2&amp;quot;, siis see tähistab õpikupeatükki või lõiku, mis tuleks läbi lugeda.&lt;br /&gt;
&lt;br /&gt;
== Loengute kava ==&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w1|Sissejuhatus]]&lt;br /&gt;
# [[Iti0210w2|Otsing (tee leidmine eesmärgini)]]&lt;br /&gt;
# [[Iti0210w3|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w45|Lokaalne otsing ja metaheuristikud]]&lt;br /&gt;
# [[Iti0210w6|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210w7|Loogika. Lausearvutus. Järeldumine]]&lt;br /&gt;
# [[Iti0210w72|Tõestusalgoritmid]]&lt;br /&gt;
# [[Iti0210w8|Predikaatloogika]]&lt;br /&gt;
# [[Iti0210w9|Määramatus ja tõenäosus]]&lt;br /&gt;
# [[Iti0210w10|Tõenäosusmudelid]]&lt;br /&gt;
# [[Iti0210w101|Arvutusmeetodid tõenäosusmudelitel: HMM]]&lt;br /&gt;
# [[Iti0210w12|Närvivõrgud]]&lt;br /&gt;
# [[Iti0210w121|Närvivõrgud II]]&lt;br /&gt;
# [[Iti0210w13|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210w15|Erinevad masinõppe mudelid]]&lt;br /&gt;
&lt;br /&gt;
== Harjutused ==&lt;br /&gt;
&lt;br /&gt;
Kodutööde tutvustamises ja näidetes kasutatakse [https://www.python.org/ Python 3]-e. Kodutöid võib lahendada endale sobivaimas keeles.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kodutööd&#039;&#039;&#039;.&lt;br /&gt;
# [[Iti0210lab23|Tee leidmine otsinguga (2-3 nädal)]]&lt;br /&gt;
# [[Iti0210lab42|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210lab63|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab74|Resolutsioonimeetod]]&lt;br /&gt;
# [[Iti0210lab82|Teadmuse esitus predikaatloogikas]]&lt;br /&gt;
&amp;lt;!--# [[Iti0210lab91|&amp;quot;Naiivne&amp;quot; Bayesi mudel]]&lt;br /&gt;
# [[Iti0210lab113|Informatsioon treeningandmetes]]&lt;br /&gt;
# [[Iti0210lab142|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210lab1|Intelligentne agent]]&lt;br /&gt;
# [[Iti0210lab2|Esimene katsetus otsinguga]]&lt;br /&gt;
# [[Iti0210lab3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210lab4|Otsingu katsetus &amp;lt;code&amp;gt;aima-python&amp;lt;/code&amp;gt; paketiga]]&lt;br /&gt;
# [https://courses.cs.ttu.ee/pages/ITI0120lab5 Lokaalne otsing]&lt;br /&gt;
# [[Iti0210lab62|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab6|Alpha-beta otsing]]&lt;br /&gt;
# [[Iti0210lab7|Lausearvutuse solver ja teadmusbaas]]&lt;br /&gt;
# [[Iti0210lab8|Teadmusbaas Prologis]]&lt;br /&gt;
# [[Iti0210lab10|Peidetud Markovi mudel]]&lt;br /&gt;
# [[Iti0210lab15|Lineaarsed mudelid]]&lt;br /&gt;
# [[Iti0210lab112|Klassifitseerimine masinõppega]]&lt;br /&gt;
# [[Iti0210lab11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210lab12|Närvivõrk]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Täiendavad harjutused&#039;&#039;&#039; pliiatsi ja paberiga lahendamiseks. Nende tulemusi ei kontrollita&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210lab42ex|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210ex6|Minimax puu]]&lt;br /&gt;
# [[Iti0210ex7|Loogika ja järeldamine]]&lt;br /&gt;
# [[Iti0210ex72|Konjunktiivne normaalkuju (CNF)]]&lt;br /&gt;
# [[Iti0210ex9|Tinglik tõenäosus]]&lt;br /&gt;
# [[Iti0210ex91|Bayesi valem]]&lt;br /&gt;
# [[Iti0210ex12|Tehisneuron]]&lt;br /&gt;
# [[Iti0210ex13|Lineaarne regressioon]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Eksam ==&lt;br /&gt;
&lt;br /&gt;
=== Ettevalmistus ===&lt;br /&gt;
&lt;br /&gt;
[[Kordamisküsimused]]&lt;br /&gt;
&lt;br /&gt;
Mõned kirjalike eksamite näited teistelt tehisintellekti ainetelt: [http://pages.cs.wisc.edu/~jerryzhu/cs540/handouts/f17fs.pdf 1], [http://pages.cs.wisc.edu/~shavlik/cs540.html#previous-exams 2], [http://dijkstra.cs.ttu.ee/~juhan/iti8560/exam_2013_sample.pdf 3]. Neid võib vaadata, et saada ettekujutust, milliseid teadmisi sarnaseid kursuseid lõpetavatelt üliõpilastelt oodatakse.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18924</id>
		<title>Tehisintellekti ja masinõppe alused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18924"/>
		<updated>2021-08-12T08:25:19Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kood: &#039;&#039;&#039;ITI0210&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vaatad praegu vana lehte - 2021 sügisest on aine ainult Moodles.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://ois.ttu.ee/aine/ITI0210 ÕIS ainekaart]&lt;br /&gt;
&lt;br /&gt;
Kursust loetakse Tallinna Tehnikaülikooli informaatika üliõpilastele.&lt;br /&gt;
&lt;br /&gt;
== Toimumiskoht ja aeg (2021) ==&lt;br /&gt;
&lt;br /&gt;
* loeng teisipäev, 12.00 &amp;lt;strike&amp;gt;U06A-229&amp;lt;/strike&amp;gt; distantsõpe - [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public otseülekanne videos] jätkub&amp;lt;!--, 9. veebruari loengu kohale tulemise soov [https://moodle.taltech.ee/mod/reservation/view.php?id=355089 registreeri siin]--&amp;gt;.&lt;br /&gt;
* 11 mai loeng toimub MS Teamsis reaalajas IAIB töörühmas - magistrandid palun liituge [https://moodle.taltech.ee/mod/forum/discuss.php?d=98606 võtmega sellelt lingilt].&lt;br /&gt;
* harjutus IAIB reede, 10.00 MS Teams&lt;br /&gt;
* harjutus IABM, IAPM reede, 12.00 MS Teams&lt;br /&gt;
&lt;br /&gt;
Teamsi harjutustundidest saab osa võtta TalTechi Uni-ID kontoga.&lt;br /&gt;
&lt;br /&gt;
Loengute otseülekanded ja salvestused [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public vaadatavad Echo360-s] või [https://moodle.taltech.ee/course/view.php?id=30646 moodles].&lt;br /&gt;
&amp;lt;!--Õppematerjalid ja uued ülesanded lisanduvad tavaliselt igal kolmapäeval. Selle kohta tuleb ained.ttu.ee kaudu ka teade.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
õppejõud: Priit Järv&lt;br /&gt;
&lt;br /&gt;
kontakt: priit.jarv1 at ttu.ee&lt;br /&gt;
&lt;br /&gt;
== Juhend ==&lt;br /&gt;
&lt;br /&gt;
[[Iti0210juhend2021|LOE SEDA]]. Kuidas aine edukalt ära teha.&lt;br /&gt;
&lt;br /&gt;
Alates 2. nädalast eeldame, et iga üliõpilane on juhendiga tutvunud.&lt;br /&gt;
&lt;br /&gt;
== Õpikud ==&lt;br /&gt;
&lt;br /&gt;
Põhiõpik:&lt;br /&gt;
&lt;br /&gt;
[&#039;&#039;AIMA&#039;&#039;] Russell, S.J and Norvig, P. Artificial intelligence: a modern approach, third edition, Prentice Hall. 2009. [https://www.ester.ee/record=b2881231*est Olemas ülikooli raamatukogus].&lt;br /&gt;
&amp;lt;!--http://aima.cs.berkeley.edu/--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatiiv:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- [&#039;&#039;TI&#039;&#039;]  M. Koit, T. Roosmaa. Tehisintellekt. Tartu, TÜ Kirjastus, 2011.&lt;br /&gt;
http://dspace.ut.ee/handle/10062/28296&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[&#039;&#039;ARTINT&#039;&#039;] Poole, D.L and Mackworth, A. K. Artificial Intelligence: Foundations of Computational Agents,  2nd Edition. Cambridge University Press, 2017. https://artint.info/2e/html/ArtInt2e.html&lt;br /&gt;
&lt;br /&gt;
Kui näed wikis viidet nagu &amp;quot;[&#039;&#039;AIMA&#039;&#039;] 3.2&amp;quot;, siis see tähistab õpikupeatükki või lõiku, mis tuleks läbi lugeda.&lt;br /&gt;
&lt;br /&gt;
== Loengute kava ==&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w1|Sissejuhatus]]&lt;br /&gt;
# [[Iti0210w2|Otsing (tee leidmine eesmärgini)]]&lt;br /&gt;
# [[Iti0210w3|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w45|Lokaalne otsing ja metaheuristikud]]&lt;br /&gt;
# [[Iti0210w6|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210w7|Loogika. Lausearvutus. Järeldumine]]&lt;br /&gt;
# [[Iti0210w72|Tõestusalgoritmid]]&lt;br /&gt;
# [[Iti0210w8|Predikaatloogika]]&lt;br /&gt;
# [[Iti0210w9|Määramatus ja tõenäosus]]&lt;br /&gt;
# [[Iti0210w10|Tõenäosusmudelid]]&lt;br /&gt;
# [[Iti0210w101|Arvutusmeetodid tõenäosusmudelitel: HMM]]&lt;br /&gt;
# [[Iti0210w12|Närvivõrgud]]&lt;br /&gt;
# [[Iti0210w121|Närvivõrgud II]]&lt;br /&gt;
# [[Iti0210w13|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210w15|Erinevad masinõppe mudelid]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# [[Iti0210w11|Masinõpe. Klassifitseerimine otsustuspuuga]]&lt;br /&gt;
# [[Iti0210w141|Lineaarsed mudelid]]&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w45|Otsinguruum ja -strateegiad. Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210w4|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w4|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w62|Kitsendustega ülesanded]]&lt;br /&gt;
# [[Iti0210w92|&amp;quot;Naiivne&amp;quot; Bayes]]&lt;br /&gt;
# [[Iti0210w14|Tehisintellekti eetika]]&lt;br /&gt;
# [[Iti0210w23|Videoloengud otsingualgoritmidest]]&lt;br /&gt;
&lt;br /&gt;
2019 kevade loengute [https://echo360.org.uk/section/6b6d61f2-0fbe-44e7-aea0-51ba77886a64/public videod]. Sisu erineb natuke praegusest kursusest.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Harjutused ==&lt;br /&gt;
&lt;br /&gt;
Kodutööde tutvustamises ja näidetes kasutatakse [https://www.python.org/ Python 3]-e. Kodutöid võib lahendada endale sobivaimas keeles.&lt;br /&gt;
&lt;br /&gt;
Ülesanded esitatakse [https://moodle.taltech.ee/course/view.php?id=30646 moodles], kood pane https://gitlab.cs.ttu.ee (tee üks projekt kus hoiad kõiki kodutöid ja lisa õppejõud &amp;quot;Reporter&amp;quot; õigustega). vt. ka [[Iti0210juhend2021|juhendit]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kodutööd&#039;&#039;&#039;.&lt;br /&gt;
# [[Iti0210lab23|Tee leidmine otsinguga (2-3 nädal)]]&lt;br /&gt;
# [[Iti0210lab42|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210lab63|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab74|Resolutsioonimeetod]]&lt;br /&gt;
# [[Iti0210lab82|Teadmuse esitus predikaatloogikas]]&lt;br /&gt;
# &amp;quot;Naiivne&amp;quot; Bayesi mudel [https://moodle.taltech.ee/mod/assign/view.php?id=372848 moodles]&lt;br /&gt;
# Närvivõrgu visualiseerimine [https://moodle.taltech.ee/mod/assign/view.php?id=376080 moodles]&lt;br /&gt;
# Stiimulõpe [https://moodle.taltech.ee/mod/assign/view.php?id=378558 moodles]&lt;br /&gt;
&amp;lt;!--# [[Iti0210lab91|&amp;quot;Naiivne&amp;quot; Bayesi mudel]]&lt;br /&gt;
# [[Iti0210lab113|Informatsioon treeningandmetes]]&lt;br /&gt;
# [[Iti0210lab142|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210lab1|Intelligentne agent]]&lt;br /&gt;
# [[Iti0210lab2|Esimene katsetus otsinguga]]&lt;br /&gt;
# [[Iti0210lab3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210lab4|Otsingu katsetus &amp;lt;code&amp;gt;aima-python&amp;lt;/code&amp;gt; paketiga]]&lt;br /&gt;
# [https://courses.cs.ttu.ee/pages/ITI0120lab5 Lokaalne otsing]&lt;br /&gt;
# [[Iti0210lab62|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab6|Alpha-beta otsing]]&lt;br /&gt;
# [[Iti0210lab7|Lausearvutuse solver ja teadmusbaas]]&lt;br /&gt;
# [[Iti0210lab8|Teadmusbaas Prologis]]&lt;br /&gt;
# [[Iti0210lab10|Peidetud Markovi mudel]]&lt;br /&gt;
# [[Iti0210lab15|Lineaarsed mudelid]]&lt;br /&gt;
# [[Iti0210lab112|Klassifitseerimine masinõppega]]&lt;br /&gt;
# [[Iti0210lab11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210lab12|Närvivõrk]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Täiendavad harjutused&#039;&#039;&#039; pliiatsi ja paberiga lahendamiseks. Nende tulemusi ei kontrollita&lt;br /&gt;
&lt;br /&gt;
# Intelligentne agent [https://moodle.taltech.ee/mod/quiz/view.php?id=343189 moodles]&lt;br /&gt;
# Heuristiline otsing [https://moodle.taltech.ee/mod/quiz/view.php?id=354935 moodles]&lt;br /&gt;
# [[Iti0210lab42ex|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210ex6|Minimax puu]]&lt;br /&gt;
# [[Iti0210ex7|Loogika ja järeldamine]]&lt;br /&gt;
# [[Iti0210ex72|Konjunktiivne normaalkuju (CNF)]]&lt;br /&gt;
# [[Iti0210ex9|Tinglik tõenäosus]]&lt;br /&gt;
# [[Iti0210ex91|Bayesi valem]]&lt;br /&gt;
# [[Iti0210ex12|Tehisneuron]]&lt;br /&gt;
# Otsustuspuu [https://moodle.taltech.ee/mod/quiz/view.php?id=379144 moodles]&lt;br /&gt;
# Otsustuspuu: tunnuse valik [https://moodle.taltech.ee/mod/quiz/view.php?id=380451 moodles]&lt;br /&gt;
# k-lähima naabri klassifikaator [https://moodle.taltech.ee/mod/quiz/view.php?id=379146 moodles]&lt;br /&gt;
# [[Iti0210ex13|Lineaarne regressioon]]&lt;br /&gt;
&amp;lt;!--# [[Iti0210ex10|Bayesi võrk]]&lt;br /&gt;
# [[Iti0210ex11|Otsustuspuu]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Eksam ==&lt;br /&gt;
&lt;br /&gt;
Aine läbimiseks on vaja saada kodutööde ja eksami peale kokku min. 50 punkti, &amp;quot;5&amp;quot; saamiseks 90 punkti. Rohkem infot [[Iti0210juhend2021| juhendis]]&lt;br /&gt;
&lt;br /&gt;
Ajad (ära unusta ÕIS-is registreerida):&lt;br /&gt;
&lt;br /&gt;
* R 21. mai 2021, 10.00-11.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* R 28. mai 2021, 12.00-13.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* T 1. juuni 2021, 10.00-18.00   (suuline eksam/TalTech MS Teams, 30 kohta)&lt;br /&gt;
&lt;br /&gt;
[[Iti0210ex2020info|Eksami kord]] &amp;lt;--loe seda &#039;&#039;&#039;enne&#039;&#039;&#039; eksamit&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Suuline eksam toimub [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 MS Teams] keskkonnas, kuhu tuleb sisse logida uni-id kontoga. Kontrolli enne eksamit, et sisse logimine õnnestub ja sul on ühendus koos videoga.&lt;br /&gt;
&lt;br /&gt;
Moodle quiz eksami ajal saab [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 Teamsi] keskkonnas küsida chatis küsimusi, aga selle kasutamine pole kohustuslik.&lt;br /&gt;
&lt;br /&gt;
[[Iti0210res2020|Eksamieeldused täidetud]] (18. mai seisuga).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Ettevalmistus ===&lt;br /&gt;
&lt;br /&gt;
[[Kordamisküsimused]]&lt;br /&gt;
&lt;br /&gt;
Mõned kirjalike eksamite näited teistelt tehisintellekti ainetelt: [http://pages.cs.wisc.edu/~jerryzhu/cs540/handouts/f17fs.pdf 1], [http://pages.cs.wisc.edu/~shavlik/cs540.html#previous-exams 2], [http://dijkstra.cs.ttu.ee/~juhan/iti8560/exam_2013_sample.pdf 3]. Neid võib vaadata, et saada ettekujutust, milliseid teadmisi sarnaseid kursuseid lõpetavatelt üliõpilastelt oodatakse.&amp;lt;!-- 2020 kevadel tuleb eksami formaat erinev.&lt;br /&gt;
&lt;br /&gt;
Teemad kattuvad meie kursusega osaliselt (s.t. vaata näiteid pigem formaadi kui sisuga tutvumiseks).&lt;br /&gt;
&lt;br /&gt;
Eksam on ilma materjalideta, aga võid kaasa võtta ühe A4 lehe märkmetega. Kestus 2 tundi.&lt;br /&gt;
&lt;br /&gt;
[https://www.elementsofai.com/ Kordamiseks ja harjutamiseks võid teha sellest kursusest osad 2,3,4]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Kordamisk%C3%BCsimused&amp;diff=18897</id>
		<title>Kordamisküsimused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Kordamisk%C3%BCsimused&amp;diff=18897"/>
		<updated>2021-05-12T05:30:38Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
Eksamiks valmistudes arvesta, et eksami raskusaste eeldab loengute kuulamist, viidatud õpiku osade lugemist ja harjutusülesannete tegemist.&lt;br /&gt;
&lt;br /&gt;
Allolev nimekiri võib veel täieneda ja muutuda.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- # Intelligentne agent. Agendi ülesande PEAS-kirjeldus. --&amp;gt;&lt;br /&gt;
&amp;lt;!--# Algoritmi ajaline keerukus. Suure &amp;quot;O&amp;quot; notatsioon. &#039;&#039;Mis on keerulisem, kas O(n&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;) või O(2&amp;lt;sup&amp;gt;n&amp;lt;/sup&amp;gt;)?&#039;&#039;--&amp;gt;&lt;br /&gt;
# Ülesande keerukus. NP-keerukad ülesanded. &#039;&#039;Miks meid huvitab ülesande keerukusklass?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w1 1] + kogu kursus)&lt;br /&gt;
# Intelligentne agent. Kuidas optimeerida ja mõõta agendi kasulikkust. ([http://lambda.ee/wiki/Iti0210w1 1])&lt;br /&gt;
# Üldine iteratiivne puuotsingu algoritm, selle seos reaalse ülesande olekutega (olekuruumiga). ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# Pimeotsing (laiuti-, sügavuti-). Laiutiotsingu ja sügavutiotsingu ajaline ja ruumiline keerukus. &#039;&#039;Kui mul on hargnemistegur b ja otsing toimub sügavuseni d, mitu tsüklit algoritm teeb?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# Heuristiline otsing. Ahne otsingu ja A* hindamisfunktsioon (i.k. &#039;&#039;evaluation function&#039;&#039;). &#039;&#039;f(n) = ?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# A* optimaalsuse tingimus. &#039;&#039;Kaugus linnulennult ja Manhattan distance. Kas maakaardil on mõlemad optimaalsed?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# Lokaalne otsing. Otsinguruum, mäeronimine, lokaalsed ja globaalsed maksimumid. &#039;&#039;Mis on mäeronimise lõpetamise tingimus? Ruumiline keerukus? Ajaline keerukus?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w45 4] ja mõtle ise)&lt;br /&gt;
# Stohhastiline lokaalne otsing (&#039;&#039;simulated annealing&#039;&#039;). &#039;&#039;Miks peaks lokaalses otsingus kasutama juhuslikkust?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w45 4])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Itereeritud kohaliku otsingu (i.k. &#039;&#039;ILS&#039;&#039;) algoritm.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Strateegia otsing intelligentse vastase vastu. Minimax puu. &#039;&#039;Kuidas jõuavad seisu väärtused puu lehtedest algseisu? Kuidas käik valitakse?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w6 5])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# &#039;&#039;Alpha/beta&#039;&#039; otsing.&lt;br /&gt;
# Kitsendusülesanded. Ülesande teisendus kitsendusülesandeks (muutujad, nende piirkonnad ja kitsenduste formuleerimine).&lt;br /&gt;
# Kitsendusülesande lahendamine rekursiivse otsinguga. Optimeerimise tehnikad (&#039;&#039;MRV&#039;&#039; jne).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Monte Carlo puuotsing (MCTS). &#039;&#039;Kuidas leitakse käigu võiduprotsent ja valitakse käik?&#039;&#039;  ([http://lambda.ee/wiki/Iti0210w6 5])&lt;br /&gt;
&amp;lt;!--# Teadmusbaasil põhineva agendi arhitektuur.--&amp;gt;&lt;br /&gt;
# Teadmusbaasi realiseerimine loogikat kasutades. Järeldumine. &#039;&#039;Kui KB-st järeldub a, mis peavad olema nende tõeväärtused kõigis võimalikes maailmates? KB|-a, KB-&amp;gt;a, KB &amp;amp; -a seos.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w7 6])&lt;br /&gt;
# &#039;&#039;Forward chaining&#039;&#039; algoritm. ([http://lambda.ee/wiki/Iti0210w72 7])&lt;br /&gt;
# Resolutsioonimeetod lausearvutuses. &#039;&#039;Kuidas toimib resolutsioonireegel? Mismoodi saab sellest ühest reeglist teha järeldamise algoritmi?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w72 7])&lt;br /&gt;
# Predikaatloogika (i.k. &#039;&#039;first order logic&#039;&#039;) teadmusbaas. Faktide ja reeglite kirja panek lihtsas süntaksis (nagu logictools). ([http://lambda.ee/wiki/Iti0210w8 8] ja kodutööd)&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Prologi kasutamine predikaatloogika reeglite ja faktide kirjapanekuks. &#039;&#039;Kui on antud Prologi reegel a(X):- b(X), siis mida see tähendab? Pane mingi teadmus kirja Prologis&#039;&#039;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Tinglik tõenäosus. &#039;&#039;P(a,b,c|d,e,f)&#039;&#039; ([http://lambda.ee/wiki/Iti0210w9 9])&lt;br /&gt;
# Diskreetsete juhuslike suuruste ühisjaotus, lausete tõenäosuse arvutamine selle kaudu. &#039;&#039;Kui on antud ühisjaotus, kuidas ma arvutan P(mingi lause)?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w9 9])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Juhuslike suuruste iseseisvus. Bayesi võrk.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Juhuslike suuruste iseseisvus ja tinglik iseseisvus. &#039;&#039;Mis kasu on iseseisvusest tõenäosusmudelite juures?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w10 10])&lt;br /&gt;
# Tõenäosuste statistiline hindamine. &#039;&#039;Kuidas tekivad tõenäosused Naiivse Bayesi valemisse?&#039;&#039; ([http://lambda.ee/wiki/Iti0210ex9 ülesanne])&lt;br /&gt;
# Naiivse Bayesi mudelil arvutamine. &#039;&#039;Tõenäosusjaotuste alusel NB hüpoteesi arvutamine.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w10 10])&lt;br /&gt;
&amp;lt;!--# Tõenäosuste arvutamine Bayesi võrgul, kasutades juhuslikkusel põhinevat simulatsiooni (&#039;&#039;Gibbs sampling&#039;&#039;).--&amp;gt;&lt;br /&gt;
# Peidetud Markovi mudel. &#039;&#039;Kuidas 1st järku Markovi mudel töötab? Mida teevad &amp;quot;smoothing&amp;quot; algoritmi edasi- ja tagasi sammud?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w101 11])&lt;br /&gt;
# EM-algoritmi põhimõte. &#039;&#039;Mis on E ja M sammud?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w101 11])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Bayesi võrgu koostamine.&lt;br /&gt;
# Õppimine - mingile tundmatule funktsioonile lähendi leidmine.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Tehisneuroni tööpõhimõte. &#039;&#039;Sisendid, väljundid, nende vaheline seos&#039;&#039; ([http://lambda.ee/wiki/Iti0210w12 12], [http://lambda.ee/wiki/Iti0210ex12 ülesanne])&lt;br /&gt;
# Tehisnärvivõrkude treenimise põhimõtted. &#039;&#039;Mismoodi saame väljundi veast paranduse närvivõrgu kaaludele?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w121 13])&lt;br /&gt;
# &#039;&#039;Q-learning&#039;&#039;. Käitumise õppimine. &#039;&#039;Q tabeli sisu. Kuidas sinna uusi väärtusi arvutada?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w13 14])&lt;br /&gt;
# k lähima naabri klassifikaator. &#039;&#039;Kuidas leiab k-NN algoritm punktile (andmeobjektile) klassi?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15])&lt;br /&gt;
# Klassifitseerimine otsustuspuu abil. &#039;&#039;Otsustuspuu konstrueerimine, kasutamine otsuse tegemiseks.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15])&lt;br /&gt;
# Informatsiooni koguse hindamine entroopia kaudu. &#039;&#039;Entroopia arvutus ja selle tähendus&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15],[https://moodle.taltech.ee/mod/quiz/view.php?id=380451 ülesanne])&lt;br /&gt;
# Lineaarne regressioon. &#039;&#039;Milleks on vaja kaofunktsiooni? Ühe muutujaga lineaarse regressiooni arvutamine.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Eksistentsiaalne risk. Tehisintellekti eetika.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210juhend2021&amp;diff=18895</id>
		<title>Iti0210juhend2021</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210juhend2021&amp;diff=18895"/>
		<updated>2021-05-11T09:05:30Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* Aine läbimine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Juhend 2021 kevadsemestriks.&lt;br /&gt;
&lt;br /&gt;
== Aine läbimine ==&lt;br /&gt;
&lt;br /&gt;
Aine läbimiseks tuleb koguda semestri jooksul vähemalt 50 punkti.&lt;br /&gt;
&lt;br /&gt;
Punktid ja hinne:&lt;br /&gt;
* 50p-59p - &amp;quot;1&amp;quot;&lt;br /&gt;
* 60p-69p - &amp;quot;2&amp;quot;&lt;br /&gt;
* 70p-79p - &amp;quot;3&amp;quot;&lt;br /&gt;
* 80p-89p - &amp;quot;4&amp;quot;&lt;br /&gt;
* 90p või rohkem: &amp;quot;5&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Maksimaalne kogutav punktisumma on 100, millest kodutööd annavad 30 ja kirjalik või suuline eksam 70 punkti.&lt;br /&gt;
&lt;br /&gt;
Eksamile pääsemiseks tuleb teha vähemalt 1 punkti peale 50% kodutöödest. Rohkema arvu tegemata jätmise korral peab selleks olema mõjuv põhjus. Tööl käimine ja tunniplaani ülekattumine teiste ainetega &#039;&#039;&#039;ei ole&#039;&#039;&#039; mõjuvad põhjused.&lt;br /&gt;
&lt;br /&gt;
== Kodutööd ==&lt;br /&gt;
&lt;br /&gt;
* Esitamise tähtaeg on üldiselt 1-2 nädalat pärast ülesande kätte andmist (sõltub ülesande raskusest). Ülesandeid on kokku 8.&lt;br /&gt;
* Ülesandeid võib esitada väikese hilinemisega, kuid siis saab vähem punkte. Kui hilined palju, läheb ülesanne lukku ja enam esitada ei saa.&lt;br /&gt;
* Ole valmis esitlema ülesannete tulemusi avalikult (MS Teamsi screen share) harjutustunnis.&lt;br /&gt;
&lt;br /&gt;
== Lahenduse nõuded ==&lt;br /&gt;
&lt;br /&gt;
Iga ülesande puhul tuleb esitada:&lt;br /&gt;
# ülesande lahendamiseks kirjutatud programmikood esita gitlabis https://gitlab.cs.ttu.ee&lt;br /&gt;
# link viimasele commitile esita [https://moodle.taltech.ee/course/view.php?id=30646 moodles]. Link peaks välja nägema umbes nii: https://gitlab.cs.ttu.ee/Priit.Jarv1/minukodutood/-/commit/efe77e5b8c2abfca7532e24fba0800ac22a1a68c.&lt;br /&gt;
&lt;br /&gt;
Soovitused esitatud koodile:&lt;br /&gt;
* Tee gitlabis üks repositoorium ja hoia iga ülesande koodi eraldi kaustas. Lisa õppejõule ligipääs sellele repositooriumile (&amp;quot;Reporter&amp;quot; õigustes -- &amp;quot;Guest&amp;quot; ei näe faile ja commite).&lt;br /&gt;
* ära hoia repositooriumis üleliigseid faile (andmefaile, kasutatud teeke vms). Vaja on ainult enda kirjutatud osa.&lt;br /&gt;
* Lisa README.md fail, kus on kirjeldatud töö tulemusi (inimloetav, mitte data dump)&lt;br /&gt;
&lt;br /&gt;
Teiste üliõpilastega koos töötamine on lubatud ja võib isegi olla soovitatav, juhul kui ülesanded tunduvad rasked. &#039;&#039;&#039;Hindamine on individuaalne&#039;&#039;&#039;, see tähendab: tee ise kõik läbi, kirjuta tulemuste kokkuvõte ja ole valmis tööd ette näitama.&lt;br /&gt;
&lt;br /&gt;
=== Hindamine ===&lt;br /&gt;
&lt;br /&gt;
Kodutööd:&lt;br /&gt;
* Tähtajaks esitatud nõuetele vastav lahendus: 4 punkti (osade puhul 3)&lt;br /&gt;
* Lahendus on poolik: -1 punkt&lt;br /&gt;
* Esitatud hilinemisega: -2 punkti&lt;br /&gt;
&lt;br /&gt;
Esitatud töö eest võib saada ka 0 punkti, juhul kui:&lt;br /&gt;
* üliõpilane ei ole harjutustunnis kättesaadav, et tööd esitleda&lt;br /&gt;
* gitlabis olev kood ei ole tõsiseltvõetav katse ülesannet lahendada&lt;br /&gt;
&lt;br /&gt;
== Mida peaks semestri jooksul tegema ==&lt;br /&gt;
&lt;br /&gt;
Võta osa harjutustundidest, sest sind võidakse paluda oma kodutööd &amp;quot;kaitsta&amp;quot;. Kaitsmine on lahenduse ja tulemuste selgitamine õppejõule ja teistele üliõpilastele. Harjutustunnis arutatakse ka ühiselt kodutööde ja muude ülesannete küsimusi.&lt;br /&gt;
&lt;br /&gt;
Eksami raskusaste eeldab, et:&lt;br /&gt;
* Kuulad loenguid&lt;br /&gt;
* Lahendad iseseisvalt, või aktiivselt grupina ülesandeid.&lt;br /&gt;
* Loed iseseisvalt loengute plaanis viidatud õpikupeatükke (eelistatult [&#039;&#039;AIMA&#039;&#039;])&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Kordamisk%C3%BCsimused&amp;diff=18894</id>
		<title>Kordamisküsimused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Kordamisk%C3%BCsimused&amp;diff=18894"/>
		<updated>2021-05-10T17:23:17Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
Eksamiks valmistudes arvesta, et eksami raskusaste eeldab loengute kuulamist, viidatud õpiku osade lugemist ja harjutusülesannete tegemist.&lt;br /&gt;
&lt;br /&gt;
Allolev nimekiri võib veel täieneda ja muutuda.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- # Intelligentne agent. Agendi ülesande PEAS-kirjeldus. --&amp;gt;&lt;br /&gt;
&amp;lt;!--# Algoritmi ajaline keerukus. Suure &amp;quot;O&amp;quot; notatsioon. &#039;&#039;Mis on keerulisem, kas O(n&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;) või O(2&amp;lt;sup&amp;gt;n&amp;lt;/sup&amp;gt;)?&#039;&#039;--&amp;gt;&lt;br /&gt;
# Ülesande keerukus. NP-keerukad ülesanded. &#039;&#039;Miks meid huvitab ülesande keerukusklass?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w1 1] + kogu kursus)&lt;br /&gt;
# Intelligentne agent. Kuidas optimeerida ja mõõta agendi kasulikkust. ([http://lambda.ee/wiki/Iti0210w1 1])&lt;br /&gt;
# Üldine iteratiivne puuotsingu algoritm, selle seos reaalse ülesande olekutega (olekuruumiga). ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# Pimeotsing (laiuti-, sügavuti-). Laiutiotsingu ja sügavutiotsingu ajaline ja ruumiline keerukus. &#039;&#039;Kui mul on hargnemistegur b ja otsing toimub sügavuseni d, mitu tsüklit algoritm teeb?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# Heuristiline otsing. Ahne otsingu ja A* hindamisfunktsioon (i.k. &#039;&#039;evaluation function&#039;&#039;). &#039;&#039;f(n) = ?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# A* optimaalsuse tingimus. &#039;&#039;Kaugus linnulennult ja Manhattan distance. Kas maakaardil on mõlemad optimaalsed?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# Lokaalne otsing. Otsinguruum, mäeronimine, lokaalsed ja globaalsed maksimumid. &#039;&#039;Mis on mäeronimise lõpetamise tingimus? Ruumiline keerukus? Ajaline keerukus?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w45 4] ja mõtle ise)&lt;br /&gt;
# Stohhastiline lokaalne otsing (&#039;&#039;simulated annealing&#039;&#039;). &#039;&#039;Miks peaks lokaalses otsingus kasutama juhuslikkust?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w45 4])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Itereeritud kohaliku otsingu (i.k. &#039;&#039;ILS&#039;&#039;) algoritm.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Strateegia otsing intelligentse vastase vastu. Minimax puu. &#039;&#039;Kuidas jõuavad seisu väärtused puu lehtedest algseisu? Kuidas käik valitakse?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w6 5])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# &#039;&#039;Alpha/beta&#039;&#039; otsing.&lt;br /&gt;
# Kitsendusülesanded. Ülesande teisendus kitsendusülesandeks (muutujad, nende piirkonnad ja kitsenduste formuleerimine).&lt;br /&gt;
# Kitsendusülesande lahendamine rekursiivse otsinguga. Optimeerimise tehnikad (&#039;&#039;MRV&#039;&#039; jne).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Monte Carlo puuotsing (MCTS). &#039;&#039;Kuidas leitakse käigu võiduprotsent ja valitakse käik?&#039;&#039;  ([http://lambda.ee/wiki/Iti0210w6 5])&lt;br /&gt;
&amp;lt;!--# Teadmusbaasil põhineva agendi arhitektuur.--&amp;gt;&lt;br /&gt;
# Teadmusbaasi realiseerimine loogikat kasutades. Järeldumine. &#039;&#039;Kui KB-st järeldub a, mis peavad olema nende tõeväärtused kõigis võimalikes maailmates? KB|-a, KB-&amp;gt;a, KB &amp;amp; -a seos.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w7 6])&lt;br /&gt;
# &#039;&#039;Forward chaining&#039;&#039; algoritm. ([http://lambda.ee/wiki/Iti0210w72 7])&lt;br /&gt;
# Resolutsioonimeetod lausearvutuses. &#039;&#039;Kuidas toimib resolutsioonireegel? Mismoodi saab sellest ühest reeglist teha järeldamise algoritmi?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w72 7])&lt;br /&gt;
# Predikaatloogika (i.k. &#039;&#039;first order logic&#039;&#039;) teadmusbaas. Faktide ja reeglite kirja panek lihtsas süntaksis (nagu logictools). ([http://lambda.ee/wiki/Iti0210w8 8] ja kodutööd)&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Prologi kasutamine predikaatloogika reeglite ja faktide kirjapanekuks. &#039;&#039;Kui on antud Prologi reegel a(X):- b(X), siis mida see tähendab? Pane mingi teadmus kirja Prologis&#039;&#039;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Tinglik tõenäosus. &#039;&#039;P(a,b,c|d,e,f)&#039;&#039; ([http://lambda.ee/wiki/Iti0210w9 9])&lt;br /&gt;
# Diskreetsete juhuslike suuruste ühisjaotus, lausete tõenäosuse arvutamine selle kaudu. &#039;&#039;Kui on antud ühisjaotus, kuidas ma arvutan P(mingi lause)?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w9 9])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Juhuslike suuruste iseseisvus. Bayesi võrk.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Juhuslike suuruste iseseisvus ja tinglik iseseisvus. &#039;&#039;Mis kasu on iseseisvusest tõenäosusmudelite juures?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w10 10])&lt;br /&gt;
# Tõenäosuste statistiline hindamine. &#039;&#039;Kuidas tekivad tõenäosused Naiivse Bayesi valemisse?&#039;&#039; ([http://lambda.ee/wiki/Iti0210ex9 ülesanne])&lt;br /&gt;
# Naiivse Bayesi mudelil arvutamine. &#039;&#039;Tõenäosusjaotuste alusel NB hüpoteesi arvutamine.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w10 10])&lt;br /&gt;
&amp;lt;!--# Tõenäosuste arvutamine Bayesi võrgul, kasutades juhuslikkusel põhinevat simulatsiooni (&#039;&#039;Gibbs sampling&#039;&#039;).--&amp;gt;&lt;br /&gt;
# Peidetud Markovi mudel. &#039;&#039;Kuidas 1st järku Markovi mudel töötab? Mida teeb forward algoritmi üks samm?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w101 11])&lt;br /&gt;
# EM-algoritmi põhimõte. &#039;&#039;Mis on E ja M sammud?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w101 11])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Bayesi võrgu koostamine.&lt;br /&gt;
# Õppimine - mingile tundmatule funktsioonile lähendi leidmine.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Tehisneuroni tööpõhimõte. &#039;&#039;Sisendid, väljundid, nende vaheline seos&#039;&#039; ([http://lambda.ee/wiki/Iti0210w12 12], [http://lambda.ee/wiki/Iti0210ex12 ülesanne])&lt;br /&gt;
# Tehisnärvivõrkude treenimise põhimõtted. &#039;&#039;Mismoodi saame väljundi veast paranduse närvivõrgu kaaludele?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w121 13])&lt;br /&gt;
# &#039;&#039;Q-learning&#039;&#039;. Käitumise õppimine. &#039;&#039;Q tabeli sisu. Kuidas sinna uusi väärtusi arvutada?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w13 14])&lt;br /&gt;
# k lähima naabri klassifikaator. &#039;&#039;Kuidas leiab k-NN algoritm punktile (andmeobjektile) klassi?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15])&lt;br /&gt;
# Klassifitseerimine otsustuspuu abil. &#039;&#039;Otsustuspuu konstrueerimine, kasutamine otsuse tegemiseks.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15])&lt;br /&gt;
# Informatsiooni koguse hindamine entroopia kaudu. &#039;&#039;Entroopia arvutus ja selle tähendus&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15],[https://moodle.taltech.ee/mod/quiz/view.php?id=380451 ülesanne])&lt;br /&gt;
# Lineaarne regressioon. &#039;&#039;Milleks on vaja kaofunktsiooni? Ühe muutujaga lineaarse regressiooni arvutamine.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Eksistentsiaalne risk. Tehisintellekti eetika.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18893</id>
		<title>Tehisintellekti ja masinõppe alused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18893"/>
		<updated>2021-05-09T06:52:42Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* Eksam */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kood: &#039;&#039;&#039;ITI0210&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://ois.ttu.ee/aine/ITI0210 ÕIS ainekaart]&lt;br /&gt;
&lt;br /&gt;
Kursust loetakse Tallinna Tehnikaülikooli informaatika üliõpilastele.&lt;br /&gt;
&lt;br /&gt;
== Toimumiskoht ja aeg (2021) ==&lt;br /&gt;
&lt;br /&gt;
* loeng teisipäev, 12.00 &amp;lt;strike&amp;gt;U06A-229&amp;lt;/strike&amp;gt; distantsõpe - [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public otseülekanne videos] jätkub&amp;lt;!--, 9. veebruari loengu kohale tulemise soov [https://moodle.taltech.ee/mod/reservation/view.php?id=355089 registreeri siin]--&amp;gt;.&lt;br /&gt;
* 11 mai loeng toimub MS Teamsis reaalajas IAIB töörühmas - magistrandid palun liituge [https://moodle.taltech.ee/mod/forum/discuss.php?d=98606 võtmega sellelt lingilt].&lt;br /&gt;
* harjutus IAIB reede, 10.00 MS Teams&lt;br /&gt;
* harjutus IABM, IAPM reede, 12.00 MS Teams&lt;br /&gt;
&lt;br /&gt;
Teamsi harjutustundidest saab osa võtta TalTechi Uni-ID kontoga.&lt;br /&gt;
&lt;br /&gt;
Loengute otseülekanded ja salvestused [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public vaadatavad Echo360-s] või [https://moodle.taltech.ee/course/view.php?id=30646 moodles].&lt;br /&gt;
&amp;lt;!--Õppematerjalid ja uued ülesanded lisanduvad tavaliselt igal kolmapäeval. Selle kohta tuleb ained.ttu.ee kaudu ka teade.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
õppejõud: Priit Järv&lt;br /&gt;
&lt;br /&gt;
kontakt: priit.jarv1 at ttu.ee&lt;br /&gt;
&lt;br /&gt;
== Juhend ==&lt;br /&gt;
&lt;br /&gt;
[[Iti0210juhend2021|LOE SEDA]]. Kuidas aine edukalt ära teha.&lt;br /&gt;
&lt;br /&gt;
Alates 2. nädalast eeldame, et iga üliõpilane on juhendiga tutvunud.&lt;br /&gt;
&lt;br /&gt;
== Õpikud ==&lt;br /&gt;
&lt;br /&gt;
Põhiõpik:&lt;br /&gt;
&lt;br /&gt;
[&#039;&#039;AIMA&#039;&#039;] Russell, S.J and Norvig, P. Artificial intelligence: a modern approach, third edition, Prentice Hall. 2009. [https://www.ester.ee/record=b2881231*est Olemas ülikooli raamatukogus].&lt;br /&gt;
&amp;lt;!--http://aima.cs.berkeley.edu/--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatiiv:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- [&#039;&#039;TI&#039;&#039;]  M. Koit, T. Roosmaa. Tehisintellekt. Tartu, TÜ Kirjastus, 2011.&lt;br /&gt;
http://dspace.ut.ee/handle/10062/28296&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[&#039;&#039;ARTINT&#039;&#039;] Poole, D.L and Mackworth, A. K. Artificial Intelligence: Foundations of Computational Agents,  2nd Edition. Cambridge University Press, 2017. https://artint.info/2e/html/ArtInt2e.html&lt;br /&gt;
&lt;br /&gt;
Kui näed wikis viidet nagu &amp;quot;[&#039;&#039;AIMA&#039;&#039;] 3.2&amp;quot;, siis see tähistab õpikupeatükki või lõiku, mis tuleks läbi lugeda.&lt;br /&gt;
&lt;br /&gt;
== Loengute kava ==&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w1|Sissejuhatus]]&lt;br /&gt;
# [[Iti0210w2|Otsing (tee leidmine eesmärgini)]]&lt;br /&gt;
# [[Iti0210w3|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w45|Lokaalne otsing ja metaheuristikud]]&lt;br /&gt;
# [[Iti0210w6|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210w7|Loogika. Lausearvutus. Järeldumine]]&lt;br /&gt;
# [[Iti0210w72|Tõestusalgoritmid]]&lt;br /&gt;
# [[Iti0210w8|Predikaatloogika]]&lt;br /&gt;
# [[Iti0210w9|Määramatus ja tõenäosus]]&lt;br /&gt;
# [[Iti0210w10|Tõenäosusmudelid]]&lt;br /&gt;
# [[Iti0210w101|Arvutusmeetodid tõenäosusmudelitel: HMM]]&lt;br /&gt;
# [[Iti0210w12|Närvivõrgud]]&lt;br /&gt;
# [[Iti0210w121|Närvivõrgud II]]&lt;br /&gt;
# [[Iti0210w13|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210w15|Erinevad masinõppe mudelid]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# [[Iti0210w11|Masinõpe. Klassifitseerimine otsustuspuuga]]&lt;br /&gt;
# [[Iti0210w141|Lineaarsed mudelid]]&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w45|Otsinguruum ja -strateegiad. Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210w4|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w4|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w62|Kitsendustega ülesanded]]&lt;br /&gt;
# [[Iti0210w92|&amp;quot;Naiivne&amp;quot; Bayes]]&lt;br /&gt;
# [[Iti0210w14|Tehisintellekti eetika]]&lt;br /&gt;
# [[Iti0210w23|Videoloengud otsingualgoritmidest]]&lt;br /&gt;
&lt;br /&gt;
2019 kevade loengute [https://echo360.org.uk/section/6b6d61f2-0fbe-44e7-aea0-51ba77886a64/public videod]. Sisu erineb natuke praegusest kursusest.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Harjutused ==&lt;br /&gt;
&lt;br /&gt;
Kodutööde tutvustamises ja näidetes kasutatakse [https://www.python.org/ Python 3]-e. Kodutöid võib lahendada endale sobivaimas keeles.&lt;br /&gt;
&lt;br /&gt;
Ülesanded esitatakse [https://moodle.taltech.ee/course/view.php?id=30646 moodles], kood pane https://gitlab.cs.ttu.ee (tee üks projekt kus hoiad kõiki kodutöid ja lisa õppejõud &amp;quot;Reporter&amp;quot; õigustega). vt. ka [[Iti0210juhend2021|juhendit]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kodutööd&#039;&#039;&#039;.&lt;br /&gt;
# [[Iti0210lab23|Tee leidmine otsinguga (2-3 nädal)]]&lt;br /&gt;
# [[Iti0210lab42|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210lab63|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab74|Resolutsioonimeetod]]&lt;br /&gt;
# [[Iti0210lab82|Teadmuse esitus predikaatloogikas]]&lt;br /&gt;
# &amp;quot;Naiivne&amp;quot; Bayesi mudel [https://moodle.taltech.ee/mod/assign/view.php?id=372848 moodles]&lt;br /&gt;
# Närvivõrgu visualiseerimine [https://moodle.taltech.ee/mod/assign/view.php?id=376080 moodles]&lt;br /&gt;
# Stiimulõpe [https://moodle.taltech.ee/mod/assign/view.php?id=378558 moodles]&lt;br /&gt;
&amp;lt;!--# [[Iti0210lab91|&amp;quot;Naiivne&amp;quot; Bayesi mudel]]&lt;br /&gt;
# [[Iti0210lab113|Informatsioon treeningandmetes]]&lt;br /&gt;
# [[Iti0210lab142|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210lab1|Intelligentne agent]]&lt;br /&gt;
# [[Iti0210lab2|Esimene katsetus otsinguga]]&lt;br /&gt;
# [[Iti0210lab3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210lab4|Otsingu katsetus &amp;lt;code&amp;gt;aima-python&amp;lt;/code&amp;gt; paketiga]]&lt;br /&gt;
# [https://courses.cs.ttu.ee/pages/ITI0120lab5 Lokaalne otsing]&lt;br /&gt;
# [[Iti0210lab62|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab6|Alpha-beta otsing]]&lt;br /&gt;
# [[Iti0210lab7|Lausearvutuse solver ja teadmusbaas]]&lt;br /&gt;
# [[Iti0210lab8|Teadmusbaas Prologis]]&lt;br /&gt;
# [[Iti0210lab10|Peidetud Markovi mudel]]&lt;br /&gt;
# [[Iti0210lab15|Lineaarsed mudelid]]&lt;br /&gt;
# [[Iti0210lab112|Klassifitseerimine masinõppega]]&lt;br /&gt;
# [[Iti0210lab11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210lab12|Närvivõrk]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Täiendavad harjutused&#039;&#039;&#039; pliiatsi ja paberiga lahendamiseks. Nende tulemusi ei kontrollita&lt;br /&gt;
&lt;br /&gt;
# Intelligentne agent [https://moodle.taltech.ee/mod/quiz/view.php?id=343189 moodles]&lt;br /&gt;
# Heuristiline otsing [https://moodle.taltech.ee/mod/quiz/view.php?id=354935 moodles]&lt;br /&gt;
# [[Iti0210lab42ex|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210ex6|Minimax puu]]&lt;br /&gt;
# [[Iti0210ex7|Loogika ja järeldamine]]&lt;br /&gt;
# [[Iti0210ex72|Konjunktiivne normaalkuju (CNF)]]&lt;br /&gt;
# [[Iti0210ex9|Tinglik tõenäosus]]&lt;br /&gt;
# [[Iti0210ex91|Bayesi valem]]&lt;br /&gt;
# [[Iti0210ex12|Tehisneuron]]&lt;br /&gt;
# Otsustuspuu [https://moodle.taltech.ee/mod/quiz/view.php?id=379144 moodles]&lt;br /&gt;
# Otsustuspuu: tunnuse valik [https://moodle.taltech.ee/mod/quiz/view.php?id=380451 moodles]&lt;br /&gt;
# k-lähima naabri klassifikaator [https://moodle.taltech.ee/mod/quiz/view.php?id=379146 moodles]&lt;br /&gt;
# [[Iti0210ex13|Lineaarne regressioon]]&lt;br /&gt;
&amp;lt;!--# [[Iti0210ex10|Bayesi võrk]]&lt;br /&gt;
# [[Iti0210ex11|Otsustuspuu]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Eksam ==&lt;br /&gt;
&lt;br /&gt;
Aine läbimiseks on vaja saada kodutööde ja eksami peale kokku min. 50 punkti, &amp;quot;5&amp;quot; saamiseks 90 punkti. Rohkem infot [[Iti0210juhend2021| juhendis]]&lt;br /&gt;
&lt;br /&gt;
Ajad (ära unusta ÕIS-is registreerida):&lt;br /&gt;
&lt;br /&gt;
* R 21. mai 2021, 10.00-11.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* R 28. mai 2021, 12.00-13.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* T 1. juuni 2021, 10.00-18.00   (suuline eksam/TalTech MS Teams, 30 kohta)&lt;br /&gt;
&lt;br /&gt;
[[Iti0210ex2020info|Eksami kord]] &amp;lt;--loe seda &#039;&#039;&#039;enne&#039;&#039;&#039; eksamit&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Suuline eksam toimub [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 MS Teams] keskkonnas, kuhu tuleb sisse logida uni-id kontoga. Kontrolli enne eksamit, et sisse logimine õnnestub ja sul on ühendus koos videoga.&lt;br /&gt;
&lt;br /&gt;
Moodle quiz eksami ajal saab [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 Teamsi] keskkonnas küsida chatis küsimusi, aga selle kasutamine pole kohustuslik.&lt;br /&gt;
&lt;br /&gt;
[[Iti0210res2020|Eksamieeldused täidetud]] (18. mai seisuga).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Ettevalmistus ===&lt;br /&gt;
&lt;br /&gt;
[[Kordamisküsimused]]&lt;br /&gt;
&lt;br /&gt;
Mõned kirjalike eksamite näited teistelt tehisintellekti ainetelt: [http://pages.cs.wisc.edu/~jerryzhu/cs540/handouts/f17fs.pdf 1], [http://pages.cs.wisc.edu/~shavlik/cs540.html#previous-exams 2], [http://dijkstra.cs.ttu.ee/~juhan/iti8560/exam_2013_sample.pdf 3]. Neid võib vaadata, et saada ettekujutust, milliseid teadmisi sarnaseid kursuseid lõpetavatelt üliõpilastelt oodatakse.&amp;lt;!-- 2020 kevadel tuleb eksami formaat erinev.&lt;br /&gt;
&lt;br /&gt;
Teemad kattuvad meie kursusega osaliselt (s.t. vaata näiteid pigem formaadi kui sisuga tutvumiseks).&lt;br /&gt;
&lt;br /&gt;
Eksam on ilma materjalideta, aga võid kaasa võtta ühe A4 lehe märkmetega. Kestus 2 tundi.&lt;br /&gt;
&lt;br /&gt;
[https://www.elementsofai.com/ Kordamiseks ja harjutamiseks võid teha sellest kursusest osad 2,3,4]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210ex2020info&amp;diff=18892</id>
		<title>Iti0210ex2020info</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210ex2020info&amp;diff=18892"/>
		<updated>2021-05-09T06:48:38Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Eksami kord =&lt;br /&gt;
&lt;br /&gt;
Eksamiküsimused annavad kokku 70 punkti. Kõik küsimused on võrdse kaaluga.&lt;br /&gt;
&lt;br /&gt;
Iga küsimust hinnatakse eraldi järgmisel skaalal:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| 100% || sügav arusaamine teemast / täielik lahenduskäik&lt;br /&gt;
|-&lt;br /&gt;
| 70-90% || arusaamine teemast väikeste ebatäpsustega / vastus õige aga lahenduskäik osaline / õige lahenduskäik aga lahenduses pisivead&lt;br /&gt;
|-&lt;br /&gt;
| 50% || umbkaudne arusaamine teemast, Internetist on leitud küsimusega enam-vähem seotud informatsiooni / õige vastus ilma lahenduskäiguta / õige lahenduskäik aga palju vigu&lt;br /&gt;
|-&lt;br /&gt;
| 30% || midagi on lahendatud, aga enamus valesti või puudu&lt;br /&gt;
|-&lt;br /&gt;
| 10% || teemast mööda vastus&lt;br /&gt;
|-&lt;br /&gt;
| 0% || küsimusele ei ole vastatud&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Eksam toimub kahes formaadis: moodle quiz ja suuline eksam.&lt;br /&gt;
&lt;br /&gt;
Nendest tuleb sooritada üks. Eri formaadis eksamid on eri päevadel. Endale sobivas formaadis eksamit saab teha valides vastava päeva. Registreeri aeg ka [https://ois2.ttu.ee ÕIS-is].&lt;br /&gt;
&lt;br /&gt;
Üliõpilasel on vaba ligipääs materjalidele ja Internetile. Teiste üliõpilastega koostöö tegemine pole lubatud.&lt;br /&gt;
&lt;br /&gt;
== Moodle quiz ==&lt;br /&gt;
&lt;br /&gt;
7 küsimust, aega 90 minutit.&lt;br /&gt;
&lt;br /&gt;
Vastata saab ainult ette antud kellaaegade vahemikus (21. mai 10:00-11:30 või 28. mai 12:00-13:30).&lt;br /&gt;
&lt;br /&gt;
Soovitused:&lt;br /&gt;
* arvesta ajapiiranguga, ära kuluta rohkem kui 15 min küsimuse peale&lt;br /&gt;
* pane kalkulaator enne eksamit valmis, osades ülesannetes tuleb arvutada&lt;br /&gt;
* ära unusta tuua lahenduskäiku küsimustes, kus on mitme sammuline arvutus või tuletus&lt;br /&gt;
&lt;br /&gt;
Eksami ajal saab küsimusi küsida MS Teams keskkonna kaudu.&lt;br /&gt;
&lt;br /&gt;
Tulemused muutuvad nähtavaks [https://moodle.taltech.ee/course/view.php?id=30646 moodles] peale hindamist.&lt;br /&gt;
&lt;br /&gt;
== Suuline eksam ==&lt;br /&gt;
&lt;br /&gt;
Kaks küsimust või teemat, millele vastamiseks võid valmistuda 10-15 minutit.&lt;br /&gt;
&lt;br /&gt;
Eksam toimub MS Teams keskkonnas &amp;quot;Tehisintellekti alused IAIB&amp;quot; töörühmas (ka nendele, kes ei ole IAIB). Aeg tuleb ette broneerida [https://moodle.taltech.ee/mod/scheduler/view.php?id=377998 siin]. Suulisele eksamile on 30 kohta.&lt;br /&gt;
&lt;br /&gt;
Eksami tegemiseks on &#039;&#039;&#039;kohustuslik&#039;&#039;&#039; kasutada videopilti.&lt;br /&gt;
&lt;br /&gt;
Tulemused märgitakse peale eksami lõppu [https://moodle.taltech.ee/course/view.php?id=30646 moodle-sse].&lt;br /&gt;
&lt;br /&gt;
== Teine katse ==&lt;br /&gt;
&lt;br /&gt;
Eksamit on lubatud teha kaks korda. Arvesse läheb viimane tulemus.&lt;br /&gt;
&lt;br /&gt;
Moodle quiz formaadis eksamiaegu juurde ei tule. Seega, peale 28-ndat saab teist katset teha ainult suuliselt. Vajaduse korral tekitame täiendava eksamipäeva.&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Kordamisk%C3%BCsimused&amp;diff=18891</id>
		<title>Kordamisküsimused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Kordamisk%C3%BCsimused&amp;diff=18891"/>
		<updated>2021-05-06T15:19:36Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
Eksamiks valmistudes arvesta, et eksami raskusaste eeldab loengute kuulamist, viidatud õpiku osade lugemist ja harjutusülesannete tegemist.&lt;br /&gt;
&lt;br /&gt;
Allolev nimekiri võib veel täieneda ja muutuda.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- # Intelligentne agent. Agendi ülesande PEAS-kirjeldus. --&amp;gt;&lt;br /&gt;
&amp;lt;!--# Algoritmi ajaline keerukus. Suure &amp;quot;O&amp;quot; notatsioon. &#039;&#039;Mis on keerulisem, kas O(n&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;) või O(2&amp;lt;sup&amp;gt;n&amp;lt;/sup&amp;gt;)?&#039;&#039;--&amp;gt;&lt;br /&gt;
# Ülesande keerukus. NP-keerukad ülesanded. &#039;&#039;Miks meid huvitab ülesande keerukusklass?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w1 1] + kogu kursus)&lt;br /&gt;
# Üldine iteratiivne puuotsingu algoritm, selle seos reaalse ülesande olekutega (olekuruumiga). ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# Pimeotsing (laiuti-, sügavuti-). Laiutiotsingu ja sügavutiotsingu ajaline ja ruumiline keerukus. &#039;&#039;Kui mul on hargnemistegur b ja otsing toimub sügavuseni d, mitu tsüklit algoritm teeb?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# Heuristiline otsing. Ahne otsingu ja A* hindamisfunktsioon (i.k. &#039;&#039;evaluation function&#039;&#039;). &#039;&#039;f(n) = ?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# A* optimaalsuse tingimus. &#039;&#039;Kaugus linnulennult ja Manhattan distance. Kas maakaardil on mõlemad optimaalsed?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# Lokaalne otsing. Otsinguruum, mäeronimine, lokaalsed ja globaalsed maksimumid. &#039;&#039;Mis on mäeronimise lõpetamise tingimus? Ruumiline keerukus? Ajaline keerukus?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w45 4] ja mõtle ise)&lt;br /&gt;
# Stohhastiline lokaalne otsing (&#039;&#039;simulated annealing&#039;&#039;). &#039;&#039;Miks peaks lokaalses otsingus kasutama juhuslikkust?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w45 4])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Itereeritud kohaliku otsingu (i.k. &#039;&#039;ILS&#039;&#039;) algoritm.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Strateegia otsing intelligentse vastase vastu. Minimax puu. &#039;&#039;Kuidas jõuavad seisu väärtused puu lehtedest algseisu? Kuidas käik valitakse?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w6 5])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# &#039;&#039;Alpha/beta&#039;&#039; otsing.&lt;br /&gt;
# Kitsendusülesanded. Ülesande teisendus kitsendusülesandeks (muutujad, nende piirkonnad ja kitsenduste formuleerimine).&lt;br /&gt;
# Kitsendusülesande lahendamine rekursiivse otsinguga. Optimeerimise tehnikad (&#039;&#039;MRV&#039;&#039; jne).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Monte Carlo puuotsing (MCTS). &#039;&#039;Kuidas leitakse käigu võiduprotsent ja valitakse käik?&#039;&#039;  ([http://lambda.ee/wiki/Iti0210w6 5])&lt;br /&gt;
&amp;lt;!--# Teadmusbaasil põhineva agendi arhitektuur.--&amp;gt;&lt;br /&gt;
# Teadmusbaasi realiseerimine loogikat kasutades. Järeldumine. &#039;&#039;Kui KB-st järeldub a, mis peavad olema nende tõeväärtused kõigis võimalikes maailmates? KB|-a, KB-&amp;gt;a, KB &amp;amp; -a seos.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w7 6])&lt;br /&gt;
# &#039;&#039;Forward chaining&#039;&#039; algoritm. ([http://lambda.ee/wiki/Iti0210w72 7])&lt;br /&gt;
# Resolutsioonimeetod lausearvutuses. &#039;&#039;Kuidas toimib resolutsioonireegel? Mismoodi saab sellest ühest reeglist teha järeldamise algoritmi?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w72 7])&lt;br /&gt;
# Predikaatloogika (i.k. &#039;&#039;first order logic&#039;&#039;) teadmusbaas. Faktide ja reeglite kirja panek lihtsas süntaksis (nagu logictools). ([http://lambda.ee/wiki/Iti0210w8 8] ja kodutööd)&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Prologi kasutamine predikaatloogika reeglite ja faktide kirjapanekuks. &#039;&#039;Kui on antud Prologi reegel a(X):- b(X), siis mida see tähendab? Pane mingi teadmus kirja Prologis&#039;&#039;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Tinglik tõenäosus. &#039;&#039;P(a,b,c|d,e,f)&#039;&#039; ([http://lambda.ee/wiki/Iti0210w9 9])&lt;br /&gt;
# Diskreetsete juhuslike suuruste ühisjaotus, lausete tõenäosuse arvutamine selle kaudu. &#039;&#039;Kui on antud ühisjaotus, kuidas ma arvutan P(mingi lause)?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w9 9])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Juhuslike suuruste iseseisvus. Bayesi võrk.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Juhuslike suuruste iseseisvus ja tinglik iseseisvus. &#039;&#039;Mis kasu on iseseisvusest tõenäosusmudelite juures?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w10 10])&lt;br /&gt;
# Tõenäosuste statistiline hindamine. &#039;&#039;Kuidas tekivad tõenäosused Naiivse Bayesi valemisse?&#039;&#039; ([http://lambda.ee/wiki/Iti0210ex9 ülesanne])&lt;br /&gt;
# Naiivse Bayesi mudelil arvutamine. &#039;&#039;Tõenäosusjaotuste alusel NB hüpoteesi arvutamine.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w10 10])&lt;br /&gt;
&amp;lt;!--# Tõenäosuste arvutamine Bayesi võrgul, kasutades juhuslikkusel põhinevat simulatsiooni (&#039;&#039;Gibbs sampling&#039;&#039;).--&amp;gt;&lt;br /&gt;
# Peidetud Markovi mudel. &#039;&#039;Kuidas 1st järku Markovi mudel töötab? Mida teeb forward algoritmi üks samm?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w101 11])&lt;br /&gt;
# EM-algoritmi põhimõte. &#039;&#039;Mis on E ja M sammud?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w101 11])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Bayesi võrgu koostamine.&lt;br /&gt;
# Õppimine - mingile tundmatule funktsioonile lähendi leidmine.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Tehisneuroni tööpõhimõte. &#039;&#039;Sisendid, väljundid, nende vaheline seos&#039;&#039; ([http://lambda.ee/wiki/Iti0210w12 12], [http://lambda.ee/wiki/Iti0210ex12 ülesanne])&lt;br /&gt;
# Tehisnärvivõrkude treenimise põhimõtted. &#039;&#039;Mismoodi saame väljundi veast paranduse närvivõrgu kaaludele?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w121 13])&lt;br /&gt;
# &#039;&#039;Q-learning&#039;&#039;. Käitumise õppimine. &#039;&#039;Q tabeli sisu. Kuidas sinna uusi väärtusi arvutada?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w13 14])&lt;br /&gt;
# k lähima naabri klassifikaator. &#039;&#039;Kuidas leiab k-NN algoritm punktile (andmeobjektile) klassi?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15])&lt;br /&gt;
# Klassifitseerimine otsustuspuu abil. &#039;&#039;Otsustuspuu konstrueerimine, kasutamine otsuse tegemiseks.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15])&lt;br /&gt;
# Informatsiooni koguse hindamine entroopia kaudu. &#039;&#039;Entroopia arvutus ja selle tähendus&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15],[https://moodle.taltech.ee/mod/quiz/view.php?id=380451 ülesanne])&lt;br /&gt;
# Lineaarne regressioon. &#039;&#039;Milleks on vaja kaofunktsiooni? Ühe muutujaga lineaarse regressiooni arvutamine.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Eksistentsiaalne risk. Tehisintellekti eetika.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Kordamisk%C3%BCsimused&amp;diff=18890</id>
		<title>Kordamisküsimused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Kordamisk%C3%BCsimused&amp;diff=18890"/>
		<updated>2021-05-06T15:18:01Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
Eksamiks valmistudes arvesta, et eksami raskusaste eeldab loengute kuulamist, viidatud õpiku osade lugemist ja harjutusülesannete tegemist.&lt;br /&gt;
&lt;br /&gt;
Allolev nimekiri võib veel täieneda ja muutuda.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- # Intelligentne agent. Agendi ülesande PEAS-kirjeldus. --&amp;gt;&lt;br /&gt;
&amp;lt;!--# Algoritmi ajaline keerukus. Suure &amp;quot;O&amp;quot; notatsioon. &#039;&#039;Mis on keerulisem, kas O(n&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;) või O(2&amp;lt;sup&amp;gt;n&amp;lt;/sup&amp;gt;)?&#039;&#039;--&amp;gt;&lt;br /&gt;
# Ülesande keerukus. NP-keerukad ülesanded. &#039;&#039;Miks meid huvitab ülesande keerukusklass?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w1 1] + kogu kursus)&lt;br /&gt;
# Üldine iteratiivne puuotsingu algoritm, selle seos reaalse ülesande olekutega (olekuruumiga). ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# Pimeotsing (laiuti-, sügavuti-). Laiutiotsingu ja sügavutiotsingu ajaline ja ruumiline keerukus. &#039;&#039;Kui mul on hargnemistegur b ja otsing toimub sügavuseni d, mitu tsüklit algoritm teeb?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# Heuristiline otsing. Ahne otsingu ja A* hindamisfunktsioon (i.k. &#039;&#039;evaluation function&#039;&#039;). &#039;&#039;f(n) = ?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# A* optimaalsuse tingimus. &#039;&#039;Kaugus linnulennult ja Manhattan distance. Kas maakaardil on mõlemad optimaalsed?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w3 3])&lt;br /&gt;
# Lokaalne otsing. Otsinguruum, mäeronimine, lokaalsed ja globaalsed maksimumid. &#039;&#039;Mis on mäeronimise lõpetamise tingimus? Ruumiline keerukus? Ajaline keerukus?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w45 4] ja mõtle ise)&lt;br /&gt;
# Stohhastiline lokaalne otsing (&#039;&#039;simulated annealing&#039;&#039;). &#039;&#039;Miks peaks lokaalses otsingus kasutama juhuslikkust?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w45 4])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Itereeritud kohaliku otsingu (i.k. &#039;&#039;ILS&#039;&#039;) algoritm.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Strateegia otsing intelligentse vastase vastu. Minimax puu. &#039;&#039;Kuidas jõuavad seisu väärtused puu lehtedest algseisu? Kuidas käik valitakse?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w6 5])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# &#039;&#039;Alpha/beta&#039;&#039; otsing.&lt;br /&gt;
# Kitsendusülesanded. Ülesande teisendus kitsendusülesandeks (muutujad, nende piirkonnad ja kitsenduste formuleerimine).&lt;br /&gt;
# Kitsendusülesande lahendamine rekursiivse otsinguga. Optimeerimise tehnikad (&#039;&#039;MRV&#039;&#039; jne).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Monte Carlo puuotsing (MCTS). &#039;&#039;Kuidas leitakse käigu võiduprotsent ja valitakse käik?&#039;&#039;  ([http://lambda.ee/wiki/Iti0210w6 5])&lt;br /&gt;
# Teadmusbaasil põhineva agendi arhitektuur.&lt;br /&gt;
# Teadmusbaasi realiseerimine loogikat kasutades. Järeldumine. &#039;&#039;Kui KB-st järeldub a, mis peavad olema nende tõeväärtused kõigis võimalikes maailmates? KB|-a, KB-&amp;gt;a, KB &amp;amp; -a seos.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w7 6])&lt;br /&gt;
# &#039;&#039;Forward chaining&#039;&#039; algoritm. ([http://lambda.ee/wiki/Iti0210w72 7])&lt;br /&gt;
# Resolutsioonimeetod lausearvutuses. &#039;&#039;Kuidas toimib resolutsioonireegel? Mismoodi saab sellest ühest reeglist teha järeldamise algoritmi?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w72 7])&lt;br /&gt;
# Predikaatloogika (i.k. &#039;&#039;first order logic&#039;&#039;) teadmusbaas. Faktide ja reeglite kirja panek lihtsas süntaksis (nagu logictools). ([http://lambda.ee/wiki/Iti0210w8 8] ja kodutööd)&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Prologi kasutamine predikaatloogika reeglite ja faktide kirjapanekuks. &#039;&#039;Kui on antud Prologi reegel a(X):- b(X), siis mida see tähendab? Pane mingi teadmus kirja Prologis&#039;&#039;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Tinglik tõenäosus. &#039;&#039;P(a,b,c|d,e,f)&#039;&#039; ([http://lambda.ee/wiki/Iti0210w9 9])&lt;br /&gt;
# Diskreetsete juhuslike suuruste ühisjaotus, lausete tõenäosuse arvutamine selle kaudu. &#039;&#039;Kui on antud ühisjaotus, kuidas ma arvutan P(mingi lause)?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w9 9])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Juhuslike suuruste iseseisvus. Bayesi võrk.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Juhuslike suuruste iseseisvus ja tinglik iseseisvus. &#039;&#039;Mis kasu on iseseisvusest tõenäosusmudelite juures?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w10 10])&lt;br /&gt;
# Tõenäosuste statistiline hindamine. &#039;&#039;Kuidas tekivad tõenäosused Naiivse Bayesi valemisse?&#039;&#039; ([http://lambda.ee/wiki/Iti0210ex9 ülesanne])&lt;br /&gt;
# Naiivse Bayesi mudelil arvutamine. &#039;&#039;Tõenäosusjaotuste alusel NB hüpoteesi arvutamine.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w10 10])&lt;br /&gt;
&amp;lt;!--# Tõenäosuste arvutamine Bayesi võrgul, kasutades juhuslikkusel põhinevat simulatsiooni (&#039;&#039;Gibbs sampling&#039;&#039;).--&amp;gt;&lt;br /&gt;
# Peidetud Markovi mudel. &#039;&#039;Kuidas 1st järku Markovi mudel töötab? Mida teeb forward algoritmi üks samm?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w101 11])&lt;br /&gt;
# EM-algoritmi põhimõte. &#039;&#039;Mis on E ja M sammud?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w101 11])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Bayesi võrgu koostamine.&lt;br /&gt;
# Õppimine - mingile tundmatule funktsioonile lähendi leidmine.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Tehisneuroni tööpõhimõte. &#039;&#039;Sisendid, väljundid, nende vaheline seos&#039;&#039; ([http://lambda.ee/wiki/Iti0210w12 12], [http://lambda.ee/wiki/Iti0210ex12 ülesanne])&lt;br /&gt;
# Tehisnärvivõrkude treenimise põhimõtted. &#039;&#039;Mismoodi saame väljundi veast paranduse närvivõrgu kaaludele?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w121 13])&lt;br /&gt;
# &#039;&#039;Q-learning&#039;&#039;. Käitumise õppimine. &#039;&#039;Q tabeli sisu. Kuidas sinna uusi väärtusi arvutada?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w13 14])&lt;br /&gt;
# k lähima naabri klassifikaator. &#039;&#039;Kuidas leiab k-NN algoritm punktile (andmeobjektile) klassi?&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15])&lt;br /&gt;
# Klassifitseerimine otsustuspuu abil. &#039;&#039;Otsustuspuu konstrueerimine, kasutamine otsuse tegemiseks.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15])&lt;br /&gt;
# Informatsiooni koguse hindamine entroopia kaudu. &#039;&#039;Entroopia arvutus ja selle tähendus&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15],[https://moodle.taltech.ee/mod/quiz/view.php?id=380451 ülesanne])&lt;br /&gt;
# Lineaarne regressioon. &#039;&#039;Milleks on vaja kaofunktsiooni? Ühe muutujaga lineaarse regressiooni arvutamine.&#039;&#039; ([http://lambda.ee/wiki/Iti0210w15 15])&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Eksistentsiaalne risk. Tehisintellekti eetika.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Kordamisk%C3%BCsimused&amp;diff=18889</id>
		<title>Kordamisküsimused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Kordamisk%C3%BCsimused&amp;diff=18889"/>
		<updated>2021-05-06T15:02:22Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
Eksamiks valmistudes arvesta, et eksami raskusaste eeldab loengute kuulamist, viidatud õpiku osade lugemist ja harjutusülesannete tegemist.&lt;br /&gt;
&lt;br /&gt;
Allolev nimekiri võib veel täieneda ja muutuda.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- # Intelligentne agent. Agendi ülesande PEAS-kirjeldus. --&amp;gt;&lt;br /&gt;
&amp;lt;!--# Algoritmi ajaline keerukus. Suure &amp;quot;O&amp;quot; notatsioon. &#039;&#039;Mis on keerulisem, kas O(n&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;) või O(2&amp;lt;sup&amp;gt;n&amp;lt;/sup&amp;gt;)?&#039;&#039;--&amp;gt;&lt;br /&gt;
# Ülesande keerukus. NP-keerukad ülesanded. &#039;&#039;Miks meid huvitab ülesande keerukusklass?&#039;&#039;&lt;br /&gt;
# Üldine iteratiivne puuotsingu algoritm, selle seos reaalse ülesande olekutega (olekuruumiga).&lt;br /&gt;
# Pimeotsing (laiuti-, sügavuti-). Laiutiotsingu ja sügavutiotsingu ajaline ja ruumiline keerukus. &#039;&#039;Kui mul on hargnemistegur b ja otsing toimub sügavuseni d, mitu tsüklit algoritm teeb?&#039;&#039;&lt;br /&gt;
# Heuristiline otsing. Ahne otsingu ja A* hindamisfunktsioon (i.k. &#039;&#039;evaluation function&#039;&#039;). &#039;&#039;f(n) = ?&#039;&#039;&lt;br /&gt;
# A* optimaalsuse tingimus. &#039;&#039;Kaugus linnulennult ja Manhattan distance. Kas maakaardil on mõlemad optimaalsed?&#039;&#039;&lt;br /&gt;
# Lokaalne otsing. Otsinguruum, mäeronimine, lokaalsed ja globaalsed maksimumid. &#039;&#039;Mis on mäeronimise lõpetamise tingimus? Ruumiline keerukus? Ajaline keerukus?&#039;&#039;&lt;br /&gt;
# Stohhastiline lokaalne otsing (&#039;&#039;simulated annealing&#039;&#039;). &#039;&#039;Miks peaks lokaalses otsingus kasutama juhuslikkust?&#039;&#039;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Itereeritud kohaliku otsingu (i.k. &#039;&#039;ILS&#039;&#039;) algoritm.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Strateegia otsing intelligentse vastase vastu. Minimax puu. &#039;&#039;Kuidas jõuavad seisu väärtused puu lehtedest algseisu? Kuidas käik valitakse?&#039;&#039;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# &#039;&#039;Alpha/beta&#039;&#039; otsing.&lt;br /&gt;
# Kitsendusülesanded. Ülesande teisendus kitsendusülesandeks (muutujad, nende piirkonnad ja kitsenduste formuleerimine).&lt;br /&gt;
# Kitsendusülesande lahendamine rekursiivse otsinguga. Optimeerimise tehnikad (&#039;&#039;MRV&#039;&#039; jne).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Monte Carlo puuotsing (MCTS). &#039;&#039;Kuidas leitakse käigu võiduprotsent ja valitakse käik?&#039;&#039;&lt;br /&gt;
# Teadmusbaasil põhineva agendi arhitektuur.&lt;br /&gt;
# Teadmusbaasi realiseerimine loogikat kasutades. Järeldumine. &#039;&#039;Kui KB-st järeldub a, mis peavad olema nende tõeväärtused kõigis võimalikes maailmates? KB|-a, KB-&amp;gt;a, KB &amp;amp; -a seos.&#039;&#039;&lt;br /&gt;
# &#039;&#039;Forward chaining&#039;&#039; algoritm.&lt;br /&gt;
# Resolutsioonimeetod lausearvutuses. &#039;&#039;Kuidas toimib resolutsioonireegel? Mismoodi saab sellest ühest reeglist teha järeldamise algoritmi?&#039;&#039;&lt;br /&gt;
# Predikaatloogika (i.k. &#039;&#039;first order logic&#039;&#039;) teadmusbaas. Faktide ja reeglite kirja panek lihtsas süntaksis (nagu logictools).&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Prologi kasutamine predikaatloogika reeglite ja faktide kirjapanekuks. &#039;&#039;Kui on antud Prologi reegel a(X):- b(X), siis mida see tähendab? Pane mingi teadmus kirja Prologis&#039;&#039;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Tinglik tõenäosus. &#039;&#039;P(a,b,c|d,e,f)&#039;&#039;&lt;br /&gt;
# Diskreetsete juhuslike suuruste ühisjaotus, lausete tõenäosuse arvutamine selle kaudu. &#039;&#039;Kui on antud ühisjaotus, kuidas ma arvutan P(mingi lause)?&#039;&#039;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Juhuslike suuruste iseseisvus. Bayesi võrk.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Juhuslike suuruste iseseisvus ja tinglik iseseisvus. &#039;&#039;Mis kasu on iseseisvusest tõenäosusmudelite juures?&#039;&#039;&lt;br /&gt;
# Tõenäosuste statistiline hindamine. &#039;&#039;Kuidas tekivad tõenäosused Naiivse Bayesi valemisse?&#039;&#039;&lt;br /&gt;
# Naiivse Bayesi mudelil arvutamine. &#039;&#039;Tõenäosusjaotuste alusel NB hüpoteesi arvutamine.&#039;&#039;&lt;br /&gt;
&amp;lt;!--# Tõenäosuste arvutamine Bayesi võrgul, kasutades juhuslikkusel põhinevat simulatsiooni (&#039;&#039;Gibbs sampling&#039;&#039;).--&amp;gt;&lt;br /&gt;
# Peidetud Markovi mudel. &#039;&#039;Kuidas 1st järku Markovi mudel töötab? Mida teeb forward algoritmi üks samm?&#039;&#039;&lt;br /&gt;
# EM-algoritmi põhimõte. &#039;&#039;Mis on E ja M sammud?&#039;&#039;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Bayesi võrgu koostamine.&lt;br /&gt;
# Õppimine - mingile tundmatule funktsioonile lähendi leidmine.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
# Tehisneuroni tööpõhimõte. &#039;&#039;Sisendid, väljundid, nende vaheline seos&#039;&#039;&lt;br /&gt;
# Tehisnärvivõrkude treenimise põhimõtted. &#039;&#039;Mismoodi saame väljundi veast paranduse närvivõrgu kaaludele?&#039;&#039;&lt;br /&gt;
# &#039;&#039;Q-learning&#039;&#039;. Käitumise õppimine. &#039;&#039;Q tabeli sisu. Kuidas sinna uusi väärtusi arvutada?&#039;&#039;&lt;br /&gt;
# k lähima naabri klassifikaator. &#039;&#039;Kuidas leiab k-NN algoritm punktile (andmeobjektile) klassi?&#039;&#039;&lt;br /&gt;
# Klassifitseerimine otsustuspuu abil. &#039;&#039;Otsustuspuu konstrueerimine, kasutamine otsuse tegemiseks.&#039;&#039;&lt;br /&gt;
# Informatsiooni koguse hindamine entroopia kaudu. &#039;&#039;Entroopia arvutus ja selle tähendus&#039;&#039;&lt;br /&gt;
# Lineaarne regressioon. &#039;&#039;Milleks on vaja kaofunktsiooni? Ühe muutujaga lineaarse regressiooni arvutamine.&#039;&#039;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# Eksistentsiaalne risk. Tehisintellekti eetika.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18888</id>
		<title>Tehisintellekti ja masinõppe alused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18888"/>
		<updated>2021-05-06T14:46:08Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* Harjutused */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kood: &#039;&#039;&#039;ITI0210&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://ois.ttu.ee/aine/ITI0210 ÕIS ainekaart]&lt;br /&gt;
&lt;br /&gt;
Kursust loetakse Tallinna Tehnikaülikooli informaatika üliõpilastele.&lt;br /&gt;
&lt;br /&gt;
== Toimumiskoht ja aeg (2021) ==&lt;br /&gt;
&lt;br /&gt;
* loeng teisipäev, 12.00 &amp;lt;strike&amp;gt;U06A-229&amp;lt;/strike&amp;gt; distantsõpe - [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public otseülekanne videos] jätkub&amp;lt;!--, 9. veebruari loengu kohale tulemise soov [https://moodle.taltech.ee/mod/reservation/view.php?id=355089 registreeri siin]--&amp;gt;.&lt;br /&gt;
* 11 mai loeng toimub MS Teamsis reaalajas IAIB töörühmas - magistrandid palun liituge [https://moodle.taltech.ee/mod/forum/discuss.php?d=98606 võtmega sellelt lingilt].&lt;br /&gt;
* harjutus IAIB reede, 10.00 MS Teams&lt;br /&gt;
* harjutus IABM, IAPM reede, 12.00 MS Teams&lt;br /&gt;
&lt;br /&gt;
Teamsi harjutustundidest saab osa võtta TalTechi Uni-ID kontoga.&lt;br /&gt;
&lt;br /&gt;
Loengute otseülekanded ja salvestused [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public vaadatavad Echo360-s] või [https://moodle.taltech.ee/course/view.php?id=30646 moodles].&lt;br /&gt;
&amp;lt;!--Õppematerjalid ja uued ülesanded lisanduvad tavaliselt igal kolmapäeval. Selle kohta tuleb ained.ttu.ee kaudu ka teade.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
õppejõud: Priit Järv&lt;br /&gt;
&lt;br /&gt;
kontakt: priit.jarv1 at ttu.ee&lt;br /&gt;
&lt;br /&gt;
== Juhend ==&lt;br /&gt;
&lt;br /&gt;
[[Iti0210juhend2021|LOE SEDA]]. Kuidas aine edukalt ära teha.&lt;br /&gt;
&lt;br /&gt;
Alates 2. nädalast eeldame, et iga üliõpilane on juhendiga tutvunud.&lt;br /&gt;
&lt;br /&gt;
== Õpikud ==&lt;br /&gt;
&lt;br /&gt;
Põhiõpik:&lt;br /&gt;
&lt;br /&gt;
[&#039;&#039;AIMA&#039;&#039;] Russell, S.J and Norvig, P. Artificial intelligence: a modern approach, third edition, Prentice Hall. 2009. [https://www.ester.ee/record=b2881231*est Olemas ülikooli raamatukogus].&lt;br /&gt;
&amp;lt;!--http://aima.cs.berkeley.edu/--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatiiv:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- [&#039;&#039;TI&#039;&#039;]  M. Koit, T. Roosmaa. Tehisintellekt. Tartu, TÜ Kirjastus, 2011.&lt;br /&gt;
http://dspace.ut.ee/handle/10062/28296&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[&#039;&#039;ARTINT&#039;&#039;] Poole, D.L and Mackworth, A. K. Artificial Intelligence: Foundations of Computational Agents,  2nd Edition. Cambridge University Press, 2017. https://artint.info/2e/html/ArtInt2e.html&lt;br /&gt;
&lt;br /&gt;
Kui näed wikis viidet nagu &amp;quot;[&#039;&#039;AIMA&#039;&#039;] 3.2&amp;quot;, siis see tähistab õpikupeatükki või lõiku, mis tuleks läbi lugeda.&lt;br /&gt;
&lt;br /&gt;
== Loengute kava ==&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w1|Sissejuhatus]]&lt;br /&gt;
# [[Iti0210w2|Otsing (tee leidmine eesmärgini)]]&lt;br /&gt;
# [[Iti0210w3|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w45|Lokaalne otsing ja metaheuristikud]]&lt;br /&gt;
# [[Iti0210w6|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210w7|Loogika. Lausearvutus. Järeldumine]]&lt;br /&gt;
# [[Iti0210w72|Tõestusalgoritmid]]&lt;br /&gt;
# [[Iti0210w8|Predikaatloogika]]&lt;br /&gt;
# [[Iti0210w9|Määramatus ja tõenäosus]]&lt;br /&gt;
# [[Iti0210w10|Tõenäosusmudelid]]&lt;br /&gt;
# [[Iti0210w101|Arvutusmeetodid tõenäosusmudelitel: HMM]]&lt;br /&gt;
# [[Iti0210w12|Närvivõrgud]]&lt;br /&gt;
# [[Iti0210w121|Närvivõrgud II]]&lt;br /&gt;
# [[Iti0210w13|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210w15|Erinevad masinõppe mudelid]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# [[Iti0210w11|Masinõpe. Klassifitseerimine otsustuspuuga]]&lt;br /&gt;
# [[Iti0210w141|Lineaarsed mudelid]]&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w45|Otsinguruum ja -strateegiad. Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210w4|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w4|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w62|Kitsendustega ülesanded]]&lt;br /&gt;
# [[Iti0210w92|&amp;quot;Naiivne&amp;quot; Bayes]]&lt;br /&gt;
# [[Iti0210w14|Tehisintellekti eetika]]&lt;br /&gt;
# [[Iti0210w23|Videoloengud otsingualgoritmidest]]&lt;br /&gt;
&lt;br /&gt;
2019 kevade loengute [https://echo360.org.uk/section/6b6d61f2-0fbe-44e7-aea0-51ba77886a64/public videod]. Sisu erineb natuke praegusest kursusest.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Harjutused ==&lt;br /&gt;
&lt;br /&gt;
Kodutööde tutvustamises ja näidetes kasutatakse [https://www.python.org/ Python 3]-e. Kodutöid võib lahendada endale sobivaimas keeles.&lt;br /&gt;
&lt;br /&gt;
Ülesanded esitatakse [https://moodle.taltech.ee/course/view.php?id=30646 moodles], kood pane https://gitlab.cs.ttu.ee (tee üks projekt kus hoiad kõiki kodutöid ja lisa õppejõud &amp;quot;Reporter&amp;quot; õigustega). vt. ka [[Iti0210juhend2021|juhendit]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kodutööd&#039;&#039;&#039;.&lt;br /&gt;
# [[Iti0210lab23|Tee leidmine otsinguga (2-3 nädal)]]&lt;br /&gt;
# [[Iti0210lab42|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210lab63|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab74|Resolutsioonimeetod]]&lt;br /&gt;
# [[Iti0210lab82|Teadmuse esitus predikaatloogikas]]&lt;br /&gt;
# &amp;quot;Naiivne&amp;quot; Bayesi mudel [https://moodle.taltech.ee/mod/assign/view.php?id=372848 moodles]&lt;br /&gt;
# Närvivõrgu visualiseerimine [https://moodle.taltech.ee/mod/assign/view.php?id=376080 moodles]&lt;br /&gt;
# Stiimulõpe [https://moodle.taltech.ee/mod/assign/view.php?id=378558 moodles]&lt;br /&gt;
&amp;lt;!--# [[Iti0210lab91|&amp;quot;Naiivne&amp;quot; Bayesi mudel]]&lt;br /&gt;
# [[Iti0210lab113|Informatsioon treeningandmetes]]&lt;br /&gt;
# [[Iti0210lab142|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210lab1|Intelligentne agent]]&lt;br /&gt;
# [[Iti0210lab2|Esimene katsetus otsinguga]]&lt;br /&gt;
# [[Iti0210lab3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210lab4|Otsingu katsetus &amp;lt;code&amp;gt;aima-python&amp;lt;/code&amp;gt; paketiga]]&lt;br /&gt;
# [https://courses.cs.ttu.ee/pages/ITI0120lab5 Lokaalne otsing]&lt;br /&gt;
# [[Iti0210lab62|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab6|Alpha-beta otsing]]&lt;br /&gt;
# [[Iti0210lab7|Lausearvutuse solver ja teadmusbaas]]&lt;br /&gt;
# [[Iti0210lab8|Teadmusbaas Prologis]]&lt;br /&gt;
# [[Iti0210lab10|Peidetud Markovi mudel]]&lt;br /&gt;
# [[Iti0210lab15|Lineaarsed mudelid]]&lt;br /&gt;
# [[Iti0210lab112|Klassifitseerimine masinõppega]]&lt;br /&gt;
# [[Iti0210lab11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210lab12|Närvivõrk]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Täiendavad harjutused&#039;&#039;&#039; pliiatsi ja paberiga lahendamiseks. Nende tulemusi ei kontrollita&lt;br /&gt;
&lt;br /&gt;
# Intelligentne agent [https://moodle.taltech.ee/mod/quiz/view.php?id=343189 moodles]&lt;br /&gt;
# Heuristiline otsing [https://moodle.taltech.ee/mod/quiz/view.php?id=354935 moodles]&lt;br /&gt;
# [[Iti0210lab42ex|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210ex6|Minimax puu]]&lt;br /&gt;
# [[Iti0210ex7|Loogika ja järeldamine]]&lt;br /&gt;
# [[Iti0210ex72|Konjunktiivne normaalkuju (CNF)]]&lt;br /&gt;
# [[Iti0210ex9|Tinglik tõenäosus]]&lt;br /&gt;
# [[Iti0210ex91|Bayesi valem]]&lt;br /&gt;
# [[Iti0210ex12|Tehisneuron]]&lt;br /&gt;
# Otsustuspuu [https://moodle.taltech.ee/mod/quiz/view.php?id=379144 moodles]&lt;br /&gt;
# Otsustuspuu: tunnuse valik [https://moodle.taltech.ee/mod/quiz/view.php?id=380451 moodles]&lt;br /&gt;
# k-lähima naabri klassifikaator [https://moodle.taltech.ee/mod/quiz/view.php?id=379146 moodles]&lt;br /&gt;
# [[Iti0210ex13|Lineaarne regressioon]]&lt;br /&gt;
&amp;lt;!--# [[Iti0210ex10|Bayesi võrk]]&lt;br /&gt;
# [[Iti0210ex11|Otsustuspuu]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Eksam ==&lt;br /&gt;
&lt;br /&gt;
Aine läbimiseks on vaja saada kodutööde ja eksami peale kokku min. 50 punkti, &amp;quot;5&amp;quot; saamiseks 90 punkti. Rohkem infot [[Iti0210juhend2021| juhendis]]&lt;br /&gt;
&lt;br /&gt;
Ajad (ära unusta ÕIS-is registreerida):&lt;br /&gt;
&lt;br /&gt;
* R 21. mai 2021, 10.00-11.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* R 28. mai 2021, 12.00-13.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* T 1. juuni 2021, 10.00-18.00   (suuline eksam/TalTech MS Teams, 30 kohta)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Suuline eksam toimub [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 MS Teams] keskkonnas, kuhu tuleb sisse logida uni-id kontoga. Kontrolli enne eksamit, et sisse logimine õnnestub ja sul on ühendus koos videoga.&lt;br /&gt;
&lt;br /&gt;
Moodle quiz eksami ajal saab [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 Teamsi] keskkonnas küsida chatis küsimusi, aga selle kasutamine pole kohustuslik.&lt;br /&gt;
&lt;br /&gt;
[[Iti0210ex2020info|Eksami kord]] &#039;&#039;&#039;&amp;lt;-- iga üliõpilane peab teadma&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Iti0210res2020|Eksamieeldused täidetud]] (18. mai seisuga).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Ettevalmistus ===&lt;br /&gt;
&lt;br /&gt;
[[Kordamisküsimused]]&lt;br /&gt;
&lt;br /&gt;
Mõned kirjalike eksamite näited teistelt tehisintellekti ainetelt: [http://pages.cs.wisc.edu/~jerryzhu/cs540/handouts/f17fs.pdf 1], [http://pages.cs.wisc.edu/~shavlik/cs540.html#previous-exams 2], [http://dijkstra.cs.ttu.ee/~juhan/iti8560/exam_2013_sample.pdf 3]. Neid võib vaadata, et saada ettekujutust, milliseid teadmisi sarnaseid kursuseid lõpetavatelt üliõpilastelt oodatakse.&amp;lt;!-- 2020 kevadel tuleb eksami formaat erinev.&lt;br /&gt;
&lt;br /&gt;
Teemad kattuvad meie kursusega osaliselt (s.t. vaata näiteid pigem formaadi kui sisuga tutvumiseks).&lt;br /&gt;
&lt;br /&gt;
Eksam on ilma materjalideta, aga võid kaasa võtta ühe A4 lehe märkmetega. Kestus 2 tundi.&lt;br /&gt;
&lt;br /&gt;
[https://www.elementsofai.com/ Kordamiseks ja harjutamiseks võid teha sellest kursusest osad 2,3,4]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w15&amp;diff=18865</id>
		<title>Iti0210w15</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w15&amp;diff=18865"/>
		<updated>2021-05-04T13:29:32Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* 15. Nädal */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 15. Nädal =&lt;br /&gt;
&lt;br /&gt;
k-NN, otsustuspuu, lineaarne regressioon. [&#039;&#039;AIMA&#039;&#039;] 18.3-18.3.4, 18.6, 18.8-18.8.2;  [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch7.S3.html 7.3], [https://artint.info/2e/html/ArtInt2e.Ch7.S7.html 7.7],[https://artint.info/2e/html/ArtInt2e.Ch12.S9.html 12.9]&lt;br /&gt;
&lt;br /&gt;
Rekurrentsed närvivõrgud. [https://cs.stanford.edu/people/karpathy/recurrentjs/ Väike LSTM demo].&lt;br /&gt;
&lt;br /&gt;
DQN - sügavate närvivõrkudega Q-õppimine.&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:Iti0210_w15.pdf|PDF]]&lt;br /&gt;
&lt;br /&gt;
[https://echo360.org.uk/media/9e777e8e-6e34-4fe5-b2b9-71cf36ea41ae/public loengu salvestus]&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w15&amp;diff=18861</id>
		<title>Iti0210w15</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w15&amp;diff=18861"/>
		<updated>2021-05-03T14:25:40Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* 15. Nädal */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 15. Nädal =&lt;br /&gt;
&lt;br /&gt;
k-NN, otsustuspuu, lineaarne regressioon. [&#039;&#039;AIMA&#039;&#039;] 18.3-18.3.4, 18.6, 18.8-18.8.2;  [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch7.S3.html 7.3], [https://artint.info/2e/html/ArtInt2e.Ch7.S7.html 7.7],[https://artint.info/2e/html/ArtInt2e.Ch12.S9.html 12.9]&lt;br /&gt;
&lt;br /&gt;
Rekurrentsed närvivõrgud. [https://cs.stanford.edu/people/karpathy/recurrentjs/ Väike LSTM demo].&lt;br /&gt;
&lt;br /&gt;
DQN - sügavate närvivõrkudega Q-õppimine.&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:Iti0210_w15.pdf|PDF]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18858</id>
		<title>Tehisintellekti ja masinõppe alused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18858"/>
		<updated>2021-05-02T17:22:30Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* Loengute kava */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kood: &#039;&#039;&#039;ITI0210&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://ois.ttu.ee/aine/ITI0210 ÕIS ainekaart]&lt;br /&gt;
&lt;br /&gt;
Kursust loetakse Tallinna Tehnikaülikooli informaatika üliõpilastele.&lt;br /&gt;
&lt;br /&gt;
== Toimumiskoht ja aeg (2021) ==&lt;br /&gt;
&lt;br /&gt;
* loeng teisipäev, 12.00 &amp;lt;strike&amp;gt;U06A-229&amp;lt;/strike&amp;gt; distantsõpe - [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public otseülekanne videos] jätkub&amp;lt;!--, 9. veebruari loengu kohale tulemise soov [https://moodle.taltech.ee/mod/reservation/view.php?id=355089 registreeri siin]--&amp;gt;.&lt;br /&gt;
* 11 mai loeng toimub MS Teamsis reaalajas IAIB töörühmas - magistrandid palun liituge [https://moodle.taltech.ee/mod/forum/discuss.php?d=98606 võtmega sellelt lingilt].&lt;br /&gt;
* harjutus IAIB reede, 10.00 MS Teams&lt;br /&gt;
* harjutus IABM, IAPM reede, 12.00 MS Teams&lt;br /&gt;
&lt;br /&gt;
Teamsi harjutustundidest saab osa võtta TalTechi Uni-ID kontoga.&lt;br /&gt;
&lt;br /&gt;
Loengute otseülekanded ja salvestused [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public vaadatavad Echo360-s] või [https://moodle.taltech.ee/course/view.php?id=30646 moodles].&lt;br /&gt;
&amp;lt;!--Õppematerjalid ja uued ülesanded lisanduvad tavaliselt igal kolmapäeval. Selle kohta tuleb ained.ttu.ee kaudu ka teade.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
õppejõud: Priit Järv&lt;br /&gt;
&lt;br /&gt;
kontakt: priit.jarv1 at ttu.ee&lt;br /&gt;
&lt;br /&gt;
== Juhend ==&lt;br /&gt;
&lt;br /&gt;
[[Iti0210juhend2021|LOE SEDA]]. Kuidas aine edukalt ära teha.&lt;br /&gt;
&lt;br /&gt;
Alates 2. nädalast eeldame, et iga üliõpilane on juhendiga tutvunud.&lt;br /&gt;
&lt;br /&gt;
== Õpikud ==&lt;br /&gt;
&lt;br /&gt;
Põhiõpik:&lt;br /&gt;
&lt;br /&gt;
[&#039;&#039;AIMA&#039;&#039;] Russell, S.J and Norvig, P. Artificial intelligence: a modern approach, third edition, Prentice Hall. 2009. [https://www.ester.ee/record=b2881231*est Olemas ülikooli raamatukogus].&lt;br /&gt;
&amp;lt;!--http://aima.cs.berkeley.edu/--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatiiv:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- [&#039;&#039;TI&#039;&#039;]  M. Koit, T. Roosmaa. Tehisintellekt. Tartu, TÜ Kirjastus, 2011.&lt;br /&gt;
http://dspace.ut.ee/handle/10062/28296&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[&#039;&#039;ARTINT&#039;&#039;] Poole, D.L and Mackworth, A. K. Artificial Intelligence: Foundations of Computational Agents,  2nd Edition. Cambridge University Press, 2017. https://artint.info/2e/html/ArtInt2e.html&lt;br /&gt;
&lt;br /&gt;
Kui näed wikis viidet nagu &amp;quot;[&#039;&#039;AIMA&#039;&#039;] 3.2&amp;quot;, siis see tähistab õpikupeatükki või lõiku, mis tuleks läbi lugeda.&lt;br /&gt;
&lt;br /&gt;
== Loengute kava ==&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w1|Sissejuhatus]]&lt;br /&gt;
# [[Iti0210w2|Otsing (tee leidmine eesmärgini)]]&lt;br /&gt;
# [[Iti0210w3|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w45|Lokaalne otsing ja metaheuristikud]]&lt;br /&gt;
# [[Iti0210w6|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210w7|Loogika. Lausearvutus. Järeldumine]]&lt;br /&gt;
# [[Iti0210w72|Tõestusalgoritmid]]&lt;br /&gt;
# [[Iti0210w8|Predikaatloogika]]&lt;br /&gt;
# [[Iti0210w9|Määramatus ja tõenäosus]]&lt;br /&gt;
# [[Iti0210w10|Tõenäosusmudelid]]&lt;br /&gt;
# [[Iti0210w101|Arvutusmeetodid tõenäosusmudelitel: HMM]]&lt;br /&gt;
# [[Iti0210w12|Närvivõrgud]]&lt;br /&gt;
# [[Iti0210w121|Närvivõrgud II]]&lt;br /&gt;
# [[Iti0210w13|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210w15|Erinevad masinõppe mudelid]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# [[Iti0210w11|Masinõpe. Klassifitseerimine otsustuspuuga]]&lt;br /&gt;
# [[Iti0210w141|Lineaarsed mudelid]]&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w45|Otsinguruum ja -strateegiad. Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210w4|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w4|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w62|Kitsendustega ülesanded]]&lt;br /&gt;
# [[Iti0210w92|&amp;quot;Naiivne&amp;quot; Bayes]]&lt;br /&gt;
# [[Iti0210w14|Tehisintellekti eetika]]&lt;br /&gt;
# [[Iti0210w23|Videoloengud otsingualgoritmidest]]&lt;br /&gt;
&lt;br /&gt;
2019 kevade loengute [https://echo360.org.uk/section/6b6d61f2-0fbe-44e7-aea0-51ba77886a64/public videod]. Sisu erineb natuke praegusest kursusest.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Harjutused ==&lt;br /&gt;
&lt;br /&gt;
Kodutööde tutvustamises ja näidetes kasutatakse [https://www.python.org/ Python 3]-e. Kodutöid võib lahendada endale sobivaimas keeles.&lt;br /&gt;
&lt;br /&gt;
Ülesanded esitatakse [https://moodle.taltech.ee/course/view.php?id=30646 moodles], kood pane https://gitlab.cs.ttu.ee (tee üks projekt kus hoiad kõiki kodutöid ja lisa õppejõud &amp;quot;Reporter&amp;quot; õigustega). vt. ka [[Iti0210juhend2021|juhendit]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kodutööd&#039;&#039;&#039;.&lt;br /&gt;
# [[Iti0210lab23|Tee leidmine otsinguga (2-3 nädal)]]&lt;br /&gt;
# [[Iti0210lab42|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210lab63|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab74|Resolutsioonimeetod]]&lt;br /&gt;
# [[Iti0210lab82|Teadmuse esitus predikaatloogikas]]&lt;br /&gt;
# &amp;quot;Naiivne&amp;quot; Bayesi mudel [https://moodle.taltech.ee/mod/assign/view.php?id=372848 moodles]&lt;br /&gt;
# Närvivõrgu visualiseerimine [https://moodle.taltech.ee/mod/assign/view.php?id=376080 moodles]&lt;br /&gt;
# Stiimulõpe [https://moodle.taltech.ee/mod/assign/view.php?id=378558 moodles]&lt;br /&gt;
&amp;lt;!--# [[Iti0210lab91|&amp;quot;Naiivne&amp;quot; Bayesi mudel]]&lt;br /&gt;
# [[Iti0210lab113|Informatsioon treeningandmetes]]&lt;br /&gt;
# [[Iti0210lab142|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210lab1|Intelligentne agent]]&lt;br /&gt;
# [[Iti0210lab2|Esimene katsetus otsinguga]]&lt;br /&gt;
# [[Iti0210lab3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210lab4|Otsingu katsetus &amp;lt;code&amp;gt;aima-python&amp;lt;/code&amp;gt; paketiga]]&lt;br /&gt;
# [https://courses.cs.ttu.ee/pages/ITI0120lab5 Lokaalne otsing]&lt;br /&gt;
# [[Iti0210lab62|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab6|Alpha-beta otsing]]&lt;br /&gt;
# [[Iti0210lab7|Lausearvutuse solver ja teadmusbaas]]&lt;br /&gt;
# [[Iti0210lab8|Teadmusbaas Prologis]]&lt;br /&gt;
# [[Iti0210lab10|Peidetud Markovi mudel]]&lt;br /&gt;
# [[Iti0210lab15|Lineaarsed mudelid]]&lt;br /&gt;
# [[Iti0210lab112|Klassifitseerimine masinõppega]]&lt;br /&gt;
# [[Iti0210lab11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210lab12|Närvivõrk]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Täiendavad harjutused&#039;&#039;&#039; pliiatsi ja paberiga lahendamiseks. Nende tulemusi ei kontrollita&lt;br /&gt;
&lt;br /&gt;
# Intelligentne agent [https://moodle.taltech.ee/mod/quiz/view.php?id=343189 moodles]&lt;br /&gt;
# Heuristiline otsing [https://moodle.taltech.ee/mod/quiz/view.php?id=354935 moodles]&lt;br /&gt;
# [[Iti0210lab42ex|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210ex6|Minimax puu]]&lt;br /&gt;
# [[Iti0210ex7|Loogika ja järeldamine]]&lt;br /&gt;
# [[Iti0210ex72|Konjunktiivne normaalkuju (CNF)]]&lt;br /&gt;
# [[Iti0210ex9|Tinglik tõenäosus]]&lt;br /&gt;
# [[Iti0210ex91|Bayesi valem]]&lt;br /&gt;
# [[Iti0210ex12|Tehisneuron]]&lt;br /&gt;
&amp;lt;!--# [[Iti0210ex13|Lineaarne regressioon]]&lt;br /&gt;
# Otsustuspuu [https://moodle.taltech.ee/mod/quiz/view.php?id=379144 moodles]&lt;br /&gt;
# k-lähima naabri klassifikaator [https://moodle.taltech.ee/mod/quiz/view.php?id=379146 moodles]&lt;br /&gt;
# [[Iti0210ex10|Bayesi võrk]]&lt;br /&gt;
# [[Iti0210ex11|Otsustuspuu]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Eksam ==&lt;br /&gt;
&lt;br /&gt;
Aine läbimiseks on vaja saada kodutööde ja eksami peale kokku min. 50 punkti, &amp;quot;5&amp;quot; saamiseks 90 punkti. Rohkem infot [[Iti0210juhend2021| juhendis]]&lt;br /&gt;
&lt;br /&gt;
Ajad (ära unusta ÕIS-is registreerida):&lt;br /&gt;
&lt;br /&gt;
* R 21. mai 2021, 10.00-11.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* R 28. mai 2021, 12.00-13.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* T 1. juuni 2021, 10.00-18.00   (suuline eksam/TalTech MS Teams, 30 kohta)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Suuline eksam toimub [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 MS Teams] keskkonnas, kuhu tuleb sisse logida uni-id kontoga. Kontrolli enne eksamit, et sisse logimine õnnestub ja sul on ühendus koos videoga.&lt;br /&gt;
&lt;br /&gt;
Moodle quiz eksami ajal saab [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 Teamsi] keskkonnas küsida chatis küsimusi, aga selle kasutamine pole kohustuslik.&lt;br /&gt;
&lt;br /&gt;
[[Iti0210ex2020info|Eksami kord]] &#039;&#039;&#039;&amp;lt;-- iga üliõpilane peab teadma&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Iti0210res2020|Eksamieeldused täidetud]] (18. mai seisuga).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Ettevalmistus ===&lt;br /&gt;
&lt;br /&gt;
[[Kordamisküsimused]]&lt;br /&gt;
&lt;br /&gt;
Mõned kirjalike eksamite näited teistelt tehisintellekti ainetelt: [http://pages.cs.wisc.edu/~jerryzhu/cs540/handouts/f17fs.pdf 1], [http://pages.cs.wisc.edu/~shavlik/cs540.html#previous-exams 2], [http://dijkstra.cs.ttu.ee/~juhan/iti8560/exam_2013_sample.pdf 3]. Neid võib vaadata, et saada ettekujutust, milliseid teadmisi sarnaseid kursuseid lõpetavatelt üliõpilastelt oodatakse.&amp;lt;!-- 2020 kevadel tuleb eksami formaat erinev.&lt;br /&gt;
&lt;br /&gt;
Teemad kattuvad meie kursusega osaliselt (s.t. vaata näiteid pigem formaadi kui sisuga tutvumiseks).&lt;br /&gt;
&lt;br /&gt;
Eksam on ilma materjalideta, aga võid kaasa võtta ühe A4 lehe märkmetega. Kestus 2 tundi.&lt;br /&gt;
&lt;br /&gt;
[https://www.elementsofai.com/ Kordamiseks ja harjutamiseks võid teha sellest kursusest osad 2,3,4]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Fail:Iti0210_w15.pdf&amp;diff=18857</id>
		<title>Fail:Iti0210 w15.pdf</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Fail:Iti0210_w15.pdf&amp;diff=18857"/>
		<updated>2021-05-02T17:22:14Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w15&amp;diff=18856</id>
		<title>Iti0210w15</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w15&amp;diff=18856"/>
		<updated>2021-05-02T16:24:09Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: Uus lehekülg: &amp;#039;= 15. Nädal =  k-NN, otsustuspuu, lineaarne regressioon. [&amp;#039;&amp;#039;AIMA&amp;#039;&amp;#039;] 18.3-18.3.4, 18.6, 18.8-18.8.2;  [&amp;#039;&amp;#039;ARTINT&amp;#039;&amp;#039;] [https://artint.info/2e/html/ArtInt2e.Ch7.S3.html 7.3], [https:...&amp;#039;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 15. Nädal =&lt;br /&gt;
&lt;br /&gt;
k-NN, otsustuspuu, lineaarne regressioon. [&#039;&#039;AIMA&#039;&#039;] 18.3-18.3.4, 18.6, 18.8-18.8.2;  [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch7.S3.html 7.3], [https://artint.info/2e/html/ArtInt2e.Ch7.S7.html 7.7],[https://artint.info/2e/html/ArtInt2e.Ch12.S9.html 12.9]&lt;br /&gt;
&lt;br /&gt;
Rekurrentsed närvivõrgud. [https://cs.stanford.edu/people/karpathy/recurrentjs/ Väike LSTM demo].&lt;br /&gt;
&lt;br /&gt;
DQN - sügavate närvivõrkudega Q-õppimine. [&#039;&#039;ARTINT&#039;&#039;] &lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:Iti0210_w15.pdf|PDF]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18855</id>
		<title>Tehisintellekti ja masinõppe alused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18855"/>
		<updated>2021-05-02T16:08:23Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* Harjutused */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kood: &#039;&#039;&#039;ITI0210&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://ois.ttu.ee/aine/ITI0210 ÕIS ainekaart]&lt;br /&gt;
&lt;br /&gt;
Kursust loetakse Tallinna Tehnikaülikooli informaatika üliõpilastele.&lt;br /&gt;
&lt;br /&gt;
== Toimumiskoht ja aeg (2021) ==&lt;br /&gt;
&lt;br /&gt;
* loeng teisipäev, 12.00 &amp;lt;strike&amp;gt;U06A-229&amp;lt;/strike&amp;gt; distantsõpe - [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public otseülekanne videos] jätkub&amp;lt;!--, 9. veebruari loengu kohale tulemise soov [https://moodle.taltech.ee/mod/reservation/view.php?id=355089 registreeri siin]--&amp;gt;.&lt;br /&gt;
* 11 mai loeng toimub MS Teamsis reaalajas IAIB töörühmas - magistrandid palun liituge [https://moodle.taltech.ee/mod/forum/discuss.php?d=98606 võtmega sellelt lingilt].&lt;br /&gt;
* harjutus IAIB reede, 10.00 MS Teams&lt;br /&gt;
* harjutus IABM, IAPM reede, 12.00 MS Teams&lt;br /&gt;
&lt;br /&gt;
Teamsi harjutustundidest saab osa võtta TalTechi Uni-ID kontoga.&lt;br /&gt;
&lt;br /&gt;
Loengute otseülekanded ja salvestused [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public vaadatavad Echo360-s] või [https://moodle.taltech.ee/course/view.php?id=30646 moodles].&lt;br /&gt;
&amp;lt;!--Õppematerjalid ja uued ülesanded lisanduvad tavaliselt igal kolmapäeval. Selle kohta tuleb ained.ttu.ee kaudu ka teade.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
õppejõud: Priit Järv&lt;br /&gt;
&lt;br /&gt;
kontakt: priit.jarv1 at ttu.ee&lt;br /&gt;
&lt;br /&gt;
== Juhend ==&lt;br /&gt;
&lt;br /&gt;
[[Iti0210juhend2021|LOE SEDA]]. Kuidas aine edukalt ära teha.&lt;br /&gt;
&lt;br /&gt;
Alates 2. nädalast eeldame, et iga üliõpilane on juhendiga tutvunud.&lt;br /&gt;
&lt;br /&gt;
== Õpikud ==&lt;br /&gt;
&lt;br /&gt;
Põhiõpik:&lt;br /&gt;
&lt;br /&gt;
[&#039;&#039;AIMA&#039;&#039;] Russell, S.J and Norvig, P. Artificial intelligence: a modern approach, third edition, Prentice Hall. 2009. [https://www.ester.ee/record=b2881231*est Olemas ülikooli raamatukogus].&lt;br /&gt;
&amp;lt;!--http://aima.cs.berkeley.edu/--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatiiv:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- [&#039;&#039;TI&#039;&#039;]  M. Koit, T. Roosmaa. Tehisintellekt. Tartu, TÜ Kirjastus, 2011.&lt;br /&gt;
http://dspace.ut.ee/handle/10062/28296&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[&#039;&#039;ARTINT&#039;&#039;] Poole, D.L and Mackworth, A. K. Artificial Intelligence: Foundations of Computational Agents,  2nd Edition. Cambridge University Press, 2017. https://artint.info/2e/html/ArtInt2e.html&lt;br /&gt;
&lt;br /&gt;
Kui näed wikis viidet nagu &amp;quot;[&#039;&#039;AIMA&#039;&#039;] 3.2&amp;quot;, siis see tähistab õpikupeatükki või lõiku, mis tuleks läbi lugeda.&lt;br /&gt;
&lt;br /&gt;
== Loengute kava ==&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w1|Sissejuhatus]]&lt;br /&gt;
# [[Iti0210w2|Otsing (tee leidmine eesmärgini)]]&lt;br /&gt;
# [[Iti0210w3|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w45|Lokaalne otsing ja metaheuristikud]]&lt;br /&gt;
# [[Iti0210w6|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210w7|Loogika. Lausearvutus. Järeldumine]]&lt;br /&gt;
# [[Iti0210w72|Tõestusalgoritmid]]&lt;br /&gt;
# [[Iti0210w8|Predikaatloogika]]&lt;br /&gt;
# [[Iti0210w9|Määramatus ja tõenäosus]]&lt;br /&gt;
# [[Iti0210w10|Tõenäosusmudelid]]&lt;br /&gt;
# [[Iti0210w101|Arvutusmeetodid tõenäosusmudelitel: HMM]]&lt;br /&gt;
# [[Iti0210w12|Närvivõrgud]]&lt;br /&gt;
# [[Iti0210w121|Närvivõrgud II]]&lt;br /&gt;
# [[Iti0210w13|Stiimulõpe]]&lt;br /&gt;
# Erinevad masinõppe mudelid&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# [[Iti0210w11|Masinõpe. Klassifitseerimine otsustuspuuga]]&lt;br /&gt;
# [[Iti0210w141|Lineaarsed mudelid]]&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w45|Otsinguruum ja -strateegiad. Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210w4|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w4|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w62|Kitsendustega ülesanded]]&lt;br /&gt;
# [[Iti0210w92|&amp;quot;Naiivne&amp;quot; Bayes]]&lt;br /&gt;
# [[Iti0210w14|Tehisintellekti eetika]]&lt;br /&gt;
# [[Iti0210w23|Videoloengud otsingualgoritmidest]]&lt;br /&gt;
&lt;br /&gt;
2019 kevade loengute [https://echo360.org.uk/section/6b6d61f2-0fbe-44e7-aea0-51ba77886a64/public videod]. Sisu erineb natuke praegusest kursusest.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Harjutused ==&lt;br /&gt;
&lt;br /&gt;
Kodutööde tutvustamises ja näidetes kasutatakse [https://www.python.org/ Python 3]-e. Kodutöid võib lahendada endale sobivaimas keeles.&lt;br /&gt;
&lt;br /&gt;
Ülesanded esitatakse [https://moodle.taltech.ee/course/view.php?id=30646 moodles], kood pane https://gitlab.cs.ttu.ee (tee üks projekt kus hoiad kõiki kodutöid ja lisa õppejõud &amp;quot;Reporter&amp;quot; õigustega). vt. ka [[Iti0210juhend2021|juhendit]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kodutööd&#039;&#039;&#039;.&lt;br /&gt;
# [[Iti0210lab23|Tee leidmine otsinguga (2-3 nädal)]]&lt;br /&gt;
# [[Iti0210lab42|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210lab63|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab74|Resolutsioonimeetod]]&lt;br /&gt;
# [[Iti0210lab82|Teadmuse esitus predikaatloogikas]]&lt;br /&gt;
# &amp;quot;Naiivne&amp;quot; Bayesi mudel [https://moodle.taltech.ee/mod/assign/view.php?id=372848 moodles]&lt;br /&gt;
# Närvivõrgu visualiseerimine [https://moodle.taltech.ee/mod/assign/view.php?id=376080 moodles]&lt;br /&gt;
# Stiimulõpe [https://moodle.taltech.ee/mod/assign/view.php?id=378558 moodles]&lt;br /&gt;
&amp;lt;!--# [[Iti0210lab91|&amp;quot;Naiivne&amp;quot; Bayesi mudel]]&lt;br /&gt;
# [[Iti0210lab113|Informatsioon treeningandmetes]]&lt;br /&gt;
# [[Iti0210lab142|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210lab1|Intelligentne agent]]&lt;br /&gt;
# [[Iti0210lab2|Esimene katsetus otsinguga]]&lt;br /&gt;
# [[Iti0210lab3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210lab4|Otsingu katsetus &amp;lt;code&amp;gt;aima-python&amp;lt;/code&amp;gt; paketiga]]&lt;br /&gt;
# [https://courses.cs.ttu.ee/pages/ITI0120lab5 Lokaalne otsing]&lt;br /&gt;
# [[Iti0210lab62|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab6|Alpha-beta otsing]]&lt;br /&gt;
# [[Iti0210lab7|Lausearvutuse solver ja teadmusbaas]]&lt;br /&gt;
# [[Iti0210lab8|Teadmusbaas Prologis]]&lt;br /&gt;
# [[Iti0210lab10|Peidetud Markovi mudel]]&lt;br /&gt;
# [[Iti0210lab15|Lineaarsed mudelid]]&lt;br /&gt;
# [[Iti0210lab112|Klassifitseerimine masinõppega]]&lt;br /&gt;
# [[Iti0210lab11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210lab12|Närvivõrk]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Täiendavad harjutused&#039;&#039;&#039; pliiatsi ja paberiga lahendamiseks. Nende tulemusi ei kontrollita&lt;br /&gt;
&lt;br /&gt;
# Intelligentne agent [https://moodle.taltech.ee/mod/quiz/view.php?id=343189 moodles]&lt;br /&gt;
# Heuristiline otsing [https://moodle.taltech.ee/mod/quiz/view.php?id=354935 moodles]&lt;br /&gt;
# [[Iti0210lab42ex|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210ex6|Minimax puu]]&lt;br /&gt;
# [[Iti0210ex7|Loogika ja järeldamine]]&lt;br /&gt;
# [[Iti0210ex72|Konjunktiivne normaalkuju (CNF)]]&lt;br /&gt;
# [[Iti0210ex9|Tinglik tõenäosus]]&lt;br /&gt;
# [[Iti0210ex91|Bayesi valem]]&lt;br /&gt;
# [[Iti0210ex12|Tehisneuron]]&lt;br /&gt;
&amp;lt;!--# [[Iti0210ex13|Lineaarne regressioon]]&lt;br /&gt;
# Otsustuspuu [https://moodle.taltech.ee/mod/quiz/view.php?id=379144 moodles]&lt;br /&gt;
# k-lähima naabri klassifikaator [https://moodle.taltech.ee/mod/quiz/view.php?id=379146 moodles]&lt;br /&gt;
# [[Iti0210ex10|Bayesi võrk]]&lt;br /&gt;
# [[Iti0210ex11|Otsustuspuu]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Eksam ==&lt;br /&gt;
&lt;br /&gt;
Aine läbimiseks on vaja saada kodutööde ja eksami peale kokku min. 50 punkti, &amp;quot;5&amp;quot; saamiseks 90 punkti. Rohkem infot [[Iti0210juhend2021| juhendis]]&lt;br /&gt;
&lt;br /&gt;
Ajad (ära unusta ÕIS-is registreerida):&lt;br /&gt;
&lt;br /&gt;
* R 21. mai 2021, 10.00-11.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* R 28. mai 2021, 12.00-13.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* T 1. juuni 2021, 10.00-18.00   (suuline eksam/TalTech MS Teams, 30 kohta)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Suuline eksam toimub [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 MS Teams] keskkonnas, kuhu tuleb sisse logida uni-id kontoga. Kontrolli enne eksamit, et sisse logimine õnnestub ja sul on ühendus koos videoga.&lt;br /&gt;
&lt;br /&gt;
Moodle quiz eksami ajal saab [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 Teamsi] keskkonnas küsida chatis küsimusi, aga selle kasutamine pole kohustuslik.&lt;br /&gt;
&lt;br /&gt;
[[Iti0210ex2020info|Eksami kord]] &#039;&#039;&#039;&amp;lt;-- iga üliõpilane peab teadma&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Iti0210res2020|Eksamieeldused täidetud]] (18. mai seisuga).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Ettevalmistus ===&lt;br /&gt;
&lt;br /&gt;
[[Kordamisküsimused]]&lt;br /&gt;
&lt;br /&gt;
Mõned kirjalike eksamite näited teistelt tehisintellekti ainetelt: [http://pages.cs.wisc.edu/~jerryzhu/cs540/handouts/f17fs.pdf 1], [http://pages.cs.wisc.edu/~shavlik/cs540.html#previous-exams 2], [http://dijkstra.cs.ttu.ee/~juhan/iti8560/exam_2013_sample.pdf 3]. Neid võib vaadata, et saada ettekujutust, milliseid teadmisi sarnaseid kursuseid lõpetavatelt üliõpilastelt oodatakse.&amp;lt;!-- 2020 kevadel tuleb eksami formaat erinev.&lt;br /&gt;
&lt;br /&gt;
Teemad kattuvad meie kursusega osaliselt (s.t. vaata näiteid pigem formaadi kui sisuga tutvumiseks).&lt;br /&gt;
&lt;br /&gt;
Eksam on ilma materjalideta, aga võid kaasa võtta ühe A4 lehe märkmetega. Kestus 2 tundi.&lt;br /&gt;
&lt;br /&gt;
[https://www.elementsofai.com/ Kordamiseks ja harjutamiseks võid teha sellest kursusest osad 2,3,4]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210ex13&amp;diff=18854</id>
		<title>Iti0210ex13</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210ex13&amp;diff=18854"/>
		<updated>2021-05-02T16:04:09Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* Lineaarne regressioon */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Lineaarne regressioon =&lt;br /&gt;
&lt;br /&gt;
Sama ülesanne [https://moodle.taltech.ee/mod/quiz/view.php?id=379143 moodles].&lt;br /&gt;
&lt;br /&gt;
[[Image:Iti0210_ex13_graph.png|Esialgne mudel]]&lt;br /&gt;
&lt;br /&gt;
Tabelis on andmete paarid x&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt;, y&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt;. Soovime andmetega sobitada lineaarse mudeli &#039;&#039;ax + b&#039;&#039;. Hetkel on mudeli parameetrid &#039;&#039;a=3&#039;&#039; ja &#039;&#039;b=-3&#039;&#039;. Tabelis &#039;&#039;&amp;amp;#375;&#039;&#039; ja graafikul oranz joon vastavad sellele mudelile.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! j || x&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt; || y&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt; || &amp;amp;#375;&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 1 || 1 || 0 || 0&lt;br /&gt;
|-&lt;br /&gt;
| 2 || 2 || 3 || 3&lt;br /&gt;
|-&lt;br /&gt;
| 3 || 3 || 2 || 6&lt;br /&gt;
|-&lt;br /&gt;
| 4 || 4 || 7 || 9&lt;br /&gt;
|-&lt;br /&gt;
| 5 || 5 || 8 || 12&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Kaofunktsioon ==&lt;br /&gt;
&lt;br /&gt;
Arvuta kadu praeguse mudeli parameetrite korral:&lt;br /&gt;
&lt;br /&gt;
[[Image:Iti0210_ex13_loss.png|Kaofunktsioon]]&lt;br /&gt;
&lt;br /&gt;
== Gradientlaskumine ==&lt;br /&gt;
&lt;br /&gt;
Tee üks gradientlaskumise samm, arvutades uued &#039;&#039;a&#039;&#039; ja &#039;&#039;b&#039;&#039; nende valemitega:&lt;br /&gt;
&lt;br /&gt;
[[Image:Iti0210_ex13_gda.png|a update]]&lt;br /&gt;
&lt;br /&gt;
[[Image:Iti0210_ex13_gdb.png|b update]]&lt;br /&gt;
&lt;br /&gt;
Kasuta &amp;amp;alpha; = 0.01.&lt;br /&gt;
&lt;br /&gt;
Kuidas muutuvad &#039;&#039;a&#039;&#039; ja &#039;&#039;b&#039;&#039; ning mis suunas liigub selle tulemusena mudelile vastava funktsiooni graafik (oranz joon)?&lt;br /&gt;
&lt;br /&gt;
== Õppimise kiirus ==&lt;br /&gt;
&lt;br /&gt;
Kui &amp;amp;alpha; on õppimise kiirus, siis võiks vist seda suurendada, et kiiremini õppida? Proovi eelmises arvutuses asendada &amp;amp;alpha; = 0.5. Millised &#039;&#039;a&#039;&#039; ja &#039;&#039;b&#039;&#039; siis oleks saadud? Proovi joonistada, kuidas saadud mudelile vastava sirgjoone graafik paikneks algandmete suhtes.&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210ex11&amp;diff=18853</id>
		<title>Iti0210ex11</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210ex11&amp;diff=18853"/>
		<updated>2021-05-02T16:03:11Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* Otsustuspuu */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Otsustuspuu =&lt;br /&gt;
&lt;br /&gt;
Järgnevas tabelis on liikide nimed, 5 tunnust ja klassifikatsioon, kas see on putukas või mitte (&#039;&#039;yes/no&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! name || airborne || aquatic || predator || venomous || legs || insect&lt;br /&gt;
|-&lt;br /&gt;
| flea || 0 || 0 || 0 || 0 || 6 || yes&lt;br /&gt;
|-&lt;br /&gt;
| gnat || 1 || 0 || 0 || 0 || 6 || yes&lt;br /&gt;
|-&lt;br /&gt;
| honeybee || 1 || 0 || 0 || 1 || 6 || yes&lt;br /&gt;
|-&lt;br /&gt;
| housefly || 1 || 0 || 0 || 0 || 6 || yes&lt;br /&gt;
|-&lt;br /&gt;
| ladybird || 1 || 0 || 1 || 0 || 6 || yes&lt;br /&gt;
|-&lt;br /&gt;
| moth || 1 || 0 || 0 || 0 || 6 || yes&lt;br /&gt;
|-&lt;br /&gt;
| termite || 0 || 0 || 0 || 0 || 6 || yes&lt;br /&gt;
|-&lt;br /&gt;
| wasp || 1 || 0 || 0 || 1 || 6 || yes&lt;br /&gt;
|-&lt;br /&gt;
| clam || 0 || 0 || 1 || 0 || 0 || no&lt;br /&gt;
|-&lt;br /&gt;
| crab || 0 || 1 || 1 || 0 || 4 || no&lt;br /&gt;
|-&lt;br /&gt;
| crayfish || 0 || 1 || 1 || 0 || 6 || no&lt;br /&gt;
|-&lt;br /&gt;
| lobster || 0 || 1 || 1 || 0 || 6 || no&lt;br /&gt;
|-&lt;br /&gt;
| octopus || 0 || 1 || 1 || 0 || 8 || no&lt;br /&gt;
|-&lt;br /&gt;
| scorpion || 0 || 0 || 1 || 1 || 8 || no&lt;br /&gt;
|-&lt;br /&gt;
| seawasp || 0 || 1 || 1 || 1 || 0 || no&lt;br /&gt;
|-&lt;br /&gt;
| slug || 0 || 0 || 0 || 0 || 0 || no&lt;br /&gt;
|-&lt;br /&gt;
| starfish || 0 || 1 || 1 || 0 || 5 || no&lt;br /&gt;
|-&lt;br /&gt;
| worm || 0 || 0 || 0 || 0 || 0 || no&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
# Koosta otsustuspuu, mis klassifitseerib tunnuste &amp;quot;airborne&amp;quot;, &amp;quot;aquatic&amp;quot; jne alusel kas antud liik on putukas. Proovi leida selline tunnuste järjekord, et puu tuleks võimalikult väike.&lt;br /&gt;
# Võrdluseks proovi teha otsustuspuu, valides tunnused tabeli järjekorras: esimesena vaadatakse tunnust &amp;quot;airborne&amp;quot;. järgmisena &amp;quot;aquatic&amp;quot; jne.&lt;br /&gt;
&lt;br /&gt;
[https://moodle.taltech.ee/mod/quiz/view.php?id=379144 Sama teemaga ülesanne moodles]&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18842</id>
		<title>Tehisintellekti ja masinõppe alused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18842"/>
		<updated>2021-04-29T08:51:02Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* Harjutused */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kood: &#039;&#039;&#039;ITI0210&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://ois.ttu.ee/aine/ITI0210 ÕIS ainekaart]&lt;br /&gt;
&lt;br /&gt;
Kursust loetakse Tallinna Tehnikaülikooli informaatika üliõpilastele.&lt;br /&gt;
&lt;br /&gt;
== Toimumiskoht ja aeg (2021) ==&lt;br /&gt;
&lt;br /&gt;
* loeng teisipäev, 12.00 &amp;lt;strike&amp;gt;U06A-229&amp;lt;/strike&amp;gt; distantsõpe - [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public otseülekanne videos] jätkub&amp;lt;!--, 9. veebruari loengu kohale tulemise soov [https://moodle.taltech.ee/mod/reservation/view.php?id=355089 registreeri siin]--&amp;gt;.&lt;br /&gt;
* 11 mai loeng toimub MS Teamsis reaalajas IAIB töörühmas - magistrandid palun liituge [https://moodle.taltech.ee/mod/forum/discuss.php?d=98606 võtmega sellelt lingilt].&lt;br /&gt;
* harjutus IAIB reede, 10.00 MS Teams&lt;br /&gt;
* harjutus IABM, IAPM reede, 12.00 MS Teams&lt;br /&gt;
&lt;br /&gt;
Teamsi harjutustundidest saab osa võtta TalTechi Uni-ID kontoga.&lt;br /&gt;
&lt;br /&gt;
Loengute otseülekanded ja salvestused [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public vaadatavad Echo360-s] või [https://moodle.taltech.ee/course/view.php?id=30646 moodles].&lt;br /&gt;
&amp;lt;!--Õppematerjalid ja uued ülesanded lisanduvad tavaliselt igal kolmapäeval. Selle kohta tuleb ained.ttu.ee kaudu ka teade.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
õppejõud: Priit Järv&lt;br /&gt;
&lt;br /&gt;
kontakt: priit.jarv1 at ttu.ee&lt;br /&gt;
&lt;br /&gt;
== Juhend ==&lt;br /&gt;
&lt;br /&gt;
[[Iti0210juhend2021|LOE SEDA]]. Kuidas aine edukalt ära teha.&lt;br /&gt;
&lt;br /&gt;
Alates 2. nädalast eeldame, et iga üliõpilane on juhendiga tutvunud.&lt;br /&gt;
&lt;br /&gt;
== Õpikud ==&lt;br /&gt;
&lt;br /&gt;
Põhiõpik:&lt;br /&gt;
&lt;br /&gt;
[&#039;&#039;AIMA&#039;&#039;] Russell, S.J and Norvig, P. Artificial intelligence: a modern approach, third edition, Prentice Hall. 2009. [https://www.ester.ee/record=b2881231*est Olemas ülikooli raamatukogus].&lt;br /&gt;
&amp;lt;!--http://aima.cs.berkeley.edu/--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatiiv:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- [&#039;&#039;TI&#039;&#039;]  M. Koit, T. Roosmaa. Tehisintellekt. Tartu, TÜ Kirjastus, 2011.&lt;br /&gt;
http://dspace.ut.ee/handle/10062/28296&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[&#039;&#039;ARTINT&#039;&#039;] Poole, D.L and Mackworth, A. K. Artificial Intelligence: Foundations of Computational Agents,  2nd Edition. Cambridge University Press, 2017. https://artint.info/2e/html/ArtInt2e.html&lt;br /&gt;
&lt;br /&gt;
Kui näed wikis viidet nagu &amp;quot;[&#039;&#039;AIMA&#039;&#039;] 3.2&amp;quot;, siis see tähistab õpikupeatükki või lõiku, mis tuleks läbi lugeda.&lt;br /&gt;
&lt;br /&gt;
== Loengute kava ==&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w1|Sissejuhatus]]&lt;br /&gt;
# [[Iti0210w2|Otsing (tee leidmine eesmärgini)]]&lt;br /&gt;
# [[Iti0210w3|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w45|Lokaalne otsing ja metaheuristikud]]&lt;br /&gt;
# [[Iti0210w6|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210w7|Loogika. Lausearvutus. Järeldumine]]&lt;br /&gt;
# [[Iti0210w72|Tõestusalgoritmid]]&lt;br /&gt;
# [[Iti0210w8|Predikaatloogika]]&lt;br /&gt;
# [[Iti0210w9|Määramatus ja tõenäosus]]&lt;br /&gt;
# [[Iti0210w10|Tõenäosusmudelid]]&lt;br /&gt;
# [[Iti0210w101|Arvutusmeetodid tõenäosusmudelitel: HMM]]&lt;br /&gt;
# [[Iti0210w12|Närvivõrgud]]&lt;br /&gt;
# [[Iti0210w121|Närvivõrgud II]]&lt;br /&gt;
# [[Iti0210w13|Stiimulõpe]]&lt;br /&gt;
# Erinevad masinõppe mudelid&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# [[Iti0210w11|Masinõpe. Klassifitseerimine otsustuspuuga]]&lt;br /&gt;
# [[Iti0210w141|Lineaarsed mudelid]]&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w45|Otsinguruum ja -strateegiad. Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210w4|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w4|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w62|Kitsendustega ülesanded]]&lt;br /&gt;
# [[Iti0210w92|&amp;quot;Naiivne&amp;quot; Bayes]]&lt;br /&gt;
# [[Iti0210w14|Tehisintellekti eetika]]&lt;br /&gt;
# [[Iti0210w23|Videoloengud otsingualgoritmidest]]&lt;br /&gt;
&lt;br /&gt;
2019 kevade loengute [https://echo360.org.uk/section/6b6d61f2-0fbe-44e7-aea0-51ba77886a64/public videod]. Sisu erineb natuke praegusest kursusest.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Harjutused ==&lt;br /&gt;
&lt;br /&gt;
Kodutööde tutvustamises ja näidetes kasutatakse [https://www.python.org/ Python 3]-e. Kodutöid võib lahendada endale sobivaimas keeles.&lt;br /&gt;
&lt;br /&gt;
Ülesanded esitatakse [https://moodle.taltech.ee/course/view.php?id=30646 moodles], kood pane https://gitlab.cs.ttu.ee (tee üks projekt kus hoiad kõiki kodutöid ja lisa õppejõud &amp;quot;Reporter&amp;quot; õigustega). vt. ka [[Iti0210juhend2021|juhendit]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kodutööd&#039;&#039;&#039;.&lt;br /&gt;
# [[Iti0210lab23|Tee leidmine otsinguga (2-3 nädal)]]&lt;br /&gt;
# [[Iti0210lab42|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210lab63|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab74|Resolutsioonimeetod]]&lt;br /&gt;
# [[Iti0210lab82|Teadmuse esitus predikaatloogikas]]&lt;br /&gt;
# &amp;quot;Naiivne&amp;quot; Bayesi mudel [https://moodle.taltech.ee/mod/assign/view.php?id=372848 moodles]&lt;br /&gt;
# Närvivõrgu visualiseerimine [https://moodle.taltech.ee/mod/assign/view.php?id=376080 moodles]&lt;br /&gt;
# Stiimulõpe [https://moodle.taltech.ee/mod/assign/view.php?id=378558 moodles]&lt;br /&gt;
&amp;lt;!--# [[Iti0210lab91|&amp;quot;Naiivne&amp;quot; Bayesi mudel]]&lt;br /&gt;
# [[Iti0210lab113|Informatsioon treeningandmetes]]&lt;br /&gt;
# [[Iti0210lab142|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210lab1|Intelligentne agent]]&lt;br /&gt;
# [[Iti0210lab2|Esimene katsetus otsinguga]]&lt;br /&gt;
# [[Iti0210lab3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210lab4|Otsingu katsetus &amp;lt;code&amp;gt;aima-python&amp;lt;/code&amp;gt; paketiga]]&lt;br /&gt;
# [https://courses.cs.ttu.ee/pages/ITI0120lab5 Lokaalne otsing]&lt;br /&gt;
# [[Iti0210lab62|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab6|Alpha-beta otsing]]&lt;br /&gt;
# [[Iti0210lab7|Lausearvutuse solver ja teadmusbaas]]&lt;br /&gt;
# [[Iti0210lab8|Teadmusbaas Prologis]]&lt;br /&gt;
# [[Iti0210lab10|Peidetud Markovi mudel]]&lt;br /&gt;
# [[Iti0210lab15|Lineaarsed mudelid]]&lt;br /&gt;
# [[Iti0210lab112|Klassifitseerimine masinõppega]]&lt;br /&gt;
# [[Iti0210lab11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210lab12|Närvivõrk]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Täiendavad harjutused&#039;&#039;&#039; pliiatsi ja paberiga lahendamiseks. Nende tulemusi ei kontrollita&lt;br /&gt;
&lt;br /&gt;
# Intelligentne agent [https://moodle.taltech.ee/mod/quiz/view.php?id=343189 moodles]&lt;br /&gt;
# Heuristiline otsing [https://moodle.taltech.ee/mod/quiz/view.php?id=354935 moodles]&lt;br /&gt;
# [[Iti0210lab42ex|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210ex6|Minimax puu]]&lt;br /&gt;
# [[Iti0210ex7|Loogika ja järeldamine]]&lt;br /&gt;
# [[Iti0210ex72|Konjunktiivne normaalkuju (CNF)]]&lt;br /&gt;
# [[Iti0210ex9|Tinglik tõenäosus]]&lt;br /&gt;
# [[Iti0210ex91|Bayesi valem]]&lt;br /&gt;
# [[Iti0210ex12|Tehisneuron]]&lt;br /&gt;
&amp;lt;!--# [[Iti0210ex10|Bayesi võrk]]&lt;br /&gt;
# [[Iti0210ex11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210ex13|Lineaarne regressioon]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Eksam ==&lt;br /&gt;
&lt;br /&gt;
Aine läbimiseks on vaja saada kodutööde ja eksami peale kokku min. 50 punkti, &amp;quot;5&amp;quot; saamiseks 90 punkti. Rohkem infot [[Iti0210juhend2021| juhendis]]&lt;br /&gt;
&lt;br /&gt;
Ajad (ära unusta ÕIS-is registreerida):&lt;br /&gt;
&lt;br /&gt;
* R 21. mai 2021, 10.00-11.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* R 28. mai 2021, 12.00-13.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* T 1. juuni 2021, 10.00-18.00   (suuline eksam/TalTech MS Teams, 30 kohta)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Suuline eksam toimub [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 MS Teams] keskkonnas, kuhu tuleb sisse logida uni-id kontoga. Kontrolli enne eksamit, et sisse logimine õnnestub ja sul on ühendus koos videoga.&lt;br /&gt;
&lt;br /&gt;
Moodle quiz eksami ajal saab [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 Teamsi] keskkonnas küsida chatis küsimusi, aga selle kasutamine pole kohustuslik.&lt;br /&gt;
&lt;br /&gt;
[[Iti0210ex2020info|Eksami kord]] &#039;&#039;&#039;&amp;lt;-- iga üliõpilane peab teadma&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Iti0210res2020|Eksamieeldused täidetud]] (18. mai seisuga).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Ettevalmistus ===&lt;br /&gt;
&lt;br /&gt;
[[Kordamisküsimused]]&lt;br /&gt;
&lt;br /&gt;
Mõned kirjalike eksamite näited teistelt tehisintellekti ainetelt: [http://pages.cs.wisc.edu/~jerryzhu/cs540/handouts/f17fs.pdf 1], [http://pages.cs.wisc.edu/~shavlik/cs540.html#previous-exams 2], [http://dijkstra.cs.ttu.ee/~juhan/iti8560/exam_2013_sample.pdf 3]. Neid võib vaadata, et saada ettekujutust, milliseid teadmisi sarnaseid kursuseid lõpetavatelt üliõpilastelt oodatakse.&amp;lt;!-- 2020 kevadel tuleb eksami formaat erinev.&lt;br /&gt;
&lt;br /&gt;
Teemad kattuvad meie kursusega osaliselt (s.t. vaata näiteid pigem formaadi kui sisuga tutvumiseks).&lt;br /&gt;
&lt;br /&gt;
Eksam on ilma materjalideta, aga võid kaasa võtta ühe A4 lehe märkmetega. Kestus 2 tundi.&lt;br /&gt;
&lt;br /&gt;
[https://www.elementsofai.com/ Kordamiseks ja harjutamiseks võid teha sellest kursusest osad 2,3,4]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18841</id>
		<title>Tehisintellekti ja masinõppe alused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18841"/>
		<updated>2021-04-29T08:26:22Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* Toimumiskoht ja aeg (2021) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kood: &#039;&#039;&#039;ITI0210&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://ois.ttu.ee/aine/ITI0210 ÕIS ainekaart]&lt;br /&gt;
&lt;br /&gt;
Kursust loetakse Tallinna Tehnikaülikooli informaatika üliõpilastele.&lt;br /&gt;
&lt;br /&gt;
== Toimumiskoht ja aeg (2021) ==&lt;br /&gt;
&lt;br /&gt;
* loeng teisipäev, 12.00 &amp;lt;strike&amp;gt;U06A-229&amp;lt;/strike&amp;gt; distantsõpe - [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public otseülekanne videos] jätkub&amp;lt;!--, 9. veebruari loengu kohale tulemise soov [https://moodle.taltech.ee/mod/reservation/view.php?id=355089 registreeri siin]--&amp;gt;.&lt;br /&gt;
* 11 mai loeng toimub MS Teamsis reaalajas IAIB töörühmas - magistrandid palun liituge [https://moodle.taltech.ee/mod/forum/discuss.php?d=98606 võtmega sellelt lingilt].&lt;br /&gt;
* harjutus IAIB reede, 10.00 MS Teams&lt;br /&gt;
* harjutus IABM, IAPM reede, 12.00 MS Teams&lt;br /&gt;
&lt;br /&gt;
Teamsi harjutustundidest saab osa võtta TalTechi Uni-ID kontoga.&lt;br /&gt;
&lt;br /&gt;
Loengute otseülekanded ja salvestused [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public vaadatavad Echo360-s] või [https://moodle.taltech.ee/course/view.php?id=30646 moodles].&lt;br /&gt;
&amp;lt;!--Õppematerjalid ja uued ülesanded lisanduvad tavaliselt igal kolmapäeval. Selle kohta tuleb ained.ttu.ee kaudu ka teade.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
õppejõud: Priit Järv&lt;br /&gt;
&lt;br /&gt;
kontakt: priit.jarv1 at ttu.ee&lt;br /&gt;
&lt;br /&gt;
== Juhend ==&lt;br /&gt;
&lt;br /&gt;
[[Iti0210juhend2021|LOE SEDA]]. Kuidas aine edukalt ära teha.&lt;br /&gt;
&lt;br /&gt;
Alates 2. nädalast eeldame, et iga üliõpilane on juhendiga tutvunud.&lt;br /&gt;
&lt;br /&gt;
== Õpikud ==&lt;br /&gt;
&lt;br /&gt;
Põhiõpik:&lt;br /&gt;
&lt;br /&gt;
[&#039;&#039;AIMA&#039;&#039;] Russell, S.J and Norvig, P. Artificial intelligence: a modern approach, third edition, Prentice Hall. 2009. [https://www.ester.ee/record=b2881231*est Olemas ülikooli raamatukogus].&lt;br /&gt;
&amp;lt;!--http://aima.cs.berkeley.edu/--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatiiv:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- [&#039;&#039;TI&#039;&#039;]  M. Koit, T. Roosmaa. Tehisintellekt. Tartu, TÜ Kirjastus, 2011.&lt;br /&gt;
http://dspace.ut.ee/handle/10062/28296&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[&#039;&#039;ARTINT&#039;&#039;] Poole, D.L and Mackworth, A. K. Artificial Intelligence: Foundations of Computational Agents,  2nd Edition. Cambridge University Press, 2017. https://artint.info/2e/html/ArtInt2e.html&lt;br /&gt;
&lt;br /&gt;
Kui näed wikis viidet nagu &amp;quot;[&#039;&#039;AIMA&#039;&#039;] 3.2&amp;quot;, siis see tähistab õpikupeatükki või lõiku, mis tuleks läbi lugeda.&lt;br /&gt;
&lt;br /&gt;
== Loengute kava ==&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w1|Sissejuhatus]]&lt;br /&gt;
# [[Iti0210w2|Otsing (tee leidmine eesmärgini)]]&lt;br /&gt;
# [[Iti0210w3|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w45|Lokaalne otsing ja metaheuristikud]]&lt;br /&gt;
# [[Iti0210w6|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210w7|Loogika. Lausearvutus. Järeldumine]]&lt;br /&gt;
# [[Iti0210w72|Tõestusalgoritmid]]&lt;br /&gt;
# [[Iti0210w8|Predikaatloogika]]&lt;br /&gt;
# [[Iti0210w9|Määramatus ja tõenäosus]]&lt;br /&gt;
# [[Iti0210w10|Tõenäosusmudelid]]&lt;br /&gt;
# [[Iti0210w101|Arvutusmeetodid tõenäosusmudelitel: HMM]]&lt;br /&gt;
# [[Iti0210w12|Närvivõrgud]]&lt;br /&gt;
# [[Iti0210w121|Närvivõrgud II]]&lt;br /&gt;
# [[Iti0210w13|Stiimulõpe]]&lt;br /&gt;
# Erinevad masinõppe mudelid&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# [[Iti0210w11|Masinõpe. Klassifitseerimine otsustuspuuga]]&lt;br /&gt;
# [[Iti0210w141|Lineaarsed mudelid]]&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w45|Otsinguruum ja -strateegiad. Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210w4|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w4|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w62|Kitsendustega ülesanded]]&lt;br /&gt;
# [[Iti0210w92|&amp;quot;Naiivne&amp;quot; Bayes]]&lt;br /&gt;
# [[Iti0210w14|Tehisintellekti eetika]]&lt;br /&gt;
# [[Iti0210w23|Videoloengud otsingualgoritmidest]]&lt;br /&gt;
&lt;br /&gt;
2019 kevade loengute [https://echo360.org.uk/section/6b6d61f2-0fbe-44e7-aea0-51ba77886a64/public videod]. Sisu erineb natuke praegusest kursusest.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Harjutused ==&lt;br /&gt;
&lt;br /&gt;
Kodutööde tutvustamises ja näidetes kasutatakse [https://www.python.org/ Python 3]-e. Kodutöid võib lahendada endale sobivaimas keeles.&lt;br /&gt;
&lt;br /&gt;
Ülesanded esitatakse [https://moodle.taltech.ee/course/view.php?id=30646 moodles], kood pane https://gitlab.cs.ttu.ee (tee üks projekt kus hoiad kõiki kodutöid ja lisa õppejõud &amp;quot;Reporter&amp;quot; õigustega). vt. ka [[Iti0210juhend2021|juhendit]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kodutööd&#039;&#039;&#039;.&lt;br /&gt;
# [[Iti0210lab23|Tee leidmine otsinguga (2-3 nädal)]]&lt;br /&gt;
# [[Iti0210lab42|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210lab63|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab74|Resolutsioonimeetod]]&lt;br /&gt;
# [[Iti0210lab82|Teadmuse esitus predikaatloogikas]]&lt;br /&gt;
# &amp;quot;Naiivne&amp;quot; Bayesi mudel [https://moodle.taltech.ee/mod/assign/view.php?id=372848 moodles]&lt;br /&gt;
# Närvivõrgu visualiseerimine [https://moodle.taltech.ee/mod/assign/view.php?id=376080 moodles]&lt;br /&gt;
&amp;lt;!--# [[Iti0210lab91|&amp;quot;Naiivne&amp;quot; Bayesi mudel]]&lt;br /&gt;
# [[Iti0210lab113|Informatsioon treeningandmetes]]&lt;br /&gt;
# [[Iti0210lab142|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210lab1|Intelligentne agent]]&lt;br /&gt;
# [[Iti0210lab2|Esimene katsetus otsinguga]]&lt;br /&gt;
# [[Iti0210lab3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210lab4|Otsingu katsetus &amp;lt;code&amp;gt;aima-python&amp;lt;/code&amp;gt; paketiga]]&lt;br /&gt;
# [https://courses.cs.ttu.ee/pages/ITI0120lab5 Lokaalne otsing]&lt;br /&gt;
# [[Iti0210lab62|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab6|Alpha-beta otsing]]&lt;br /&gt;
# [[Iti0210lab7|Lausearvutuse solver ja teadmusbaas]]&lt;br /&gt;
# [[Iti0210lab8|Teadmusbaas Prologis]]&lt;br /&gt;
# [[Iti0210lab10|Peidetud Markovi mudel]]&lt;br /&gt;
# [[Iti0210lab15|Lineaarsed mudelid]]&lt;br /&gt;
# [[Iti0210lab112|Klassifitseerimine masinõppega]]&lt;br /&gt;
# [[Iti0210lab11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210lab12|Närvivõrk]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Täiendavad harjutused&#039;&#039;&#039; pliiatsi ja paberiga lahendamiseks. Nende tulemusi ei kontrollita&lt;br /&gt;
&lt;br /&gt;
# Intelligentne agent [https://moodle.taltech.ee/mod/quiz/view.php?id=343189 moodles]&lt;br /&gt;
# Heuristiline otsing [https://moodle.taltech.ee/mod/quiz/view.php?id=354935 moodles]&lt;br /&gt;
# [[Iti0210lab42ex|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210ex6|Minimax puu]]&lt;br /&gt;
# [[Iti0210ex7|Loogika ja järeldamine]]&lt;br /&gt;
# [[Iti0210ex72|Konjunktiivne normaalkuju (CNF)]]&lt;br /&gt;
# [[Iti0210ex9|Tinglik tõenäosus]]&lt;br /&gt;
# [[Iti0210ex91|Bayesi valem]]&lt;br /&gt;
# [[Iti0210ex12|Tehisneuron]]&lt;br /&gt;
&amp;lt;!--# [[Iti0210ex10|Bayesi võrk]]&lt;br /&gt;
# [[Iti0210ex11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210ex13|Lineaarne regressioon]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Eksam ==&lt;br /&gt;
&lt;br /&gt;
Aine läbimiseks on vaja saada kodutööde ja eksami peale kokku min. 50 punkti, &amp;quot;5&amp;quot; saamiseks 90 punkti. Rohkem infot [[Iti0210juhend2021| juhendis]]&lt;br /&gt;
&lt;br /&gt;
Ajad (ära unusta ÕIS-is registreerida):&lt;br /&gt;
&lt;br /&gt;
* R 21. mai 2021, 10.00-11.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* R 28. mai 2021, 12.00-13.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* T 1. juuni 2021, 10.00-18.00   (suuline eksam/TalTech MS Teams, 30 kohta)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Suuline eksam toimub [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 MS Teams] keskkonnas, kuhu tuleb sisse logida uni-id kontoga. Kontrolli enne eksamit, et sisse logimine õnnestub ja sul on ühendus koos videoga.&lt;br /&gt;
&lt;br /&gt;
Moodle quiz eksami ajal saab [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 Teamsi] keskkonnas küsida chatis küsimusi, aga selle kasutamine pole kohustuslik.&lt;br /&gt;
&lt;br /&gt;
[[Iti0210ex2020info|Eksami kord]] &#039;&#039;&#039;&amp;lt;-- iga üliõpilane peab teadma&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Iti0210res2020|Eksamieeldused täidetud]] (18. mai seisuga).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Ettevalmistus ===&lt;br /&gt;
&lt;br /&gt;
[[Kordamisküsimused]]&lt;br /&gt;
&lt;br /&gt;
Mõned kirjalike eksamite näited teistelt tehisintellekti ainetelt: [http://pages.cs.wisc.edu/~jerryzhu/cs540/handouts/f17fs.pdf 1], [http://pages.cs.wisc.edu/~shavlik/cs540.html#previous-exams 2], [http://dijkstra.cs.ttu.ee/~juhan/iti8560/exam_2013_sample.pdf 3]. Neid võib vaadata, et saada ettekujutust, milliseid teadmisi sarnaseid kursuseid lõpetavatelt üliõpilastelt oodatakse.&amp;lt;!-- 2020 kevadel tuleb eksami formaat erinev.&lt;br /&gt;
&lt;br /&gt;
Teemad kattuvad meie kursusega osaliselt (s.t. vaata näiteid pigem formaadi kui sisuga tutvumiseks).&lt;br /&gt;
&lt;br /&gt;
Eksam on ilma materjalideta, aga võid kaasa võtta ühe A4 lehe märkmetega. Kestus 2 tundi.&lt;br /&gt;
&lt;br /&gt;
[https://www.elementsofai.com/ Kordamiseks ja harjutamiseks võid teha sellest kursusest osad 2,3,4]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18814</id>
		<title>Tehisintellekti ja masinõppe alused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18814"/>
		<updated>2021-04-27T12:45:41Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* Eksam */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kood: &#039;&#039;&#039;ITI0210&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://ois.ttu.ee/aine/ITI0210 ÕIS ainekaart]&lt;br /&gt;
&lt;br /&gt;
Kursust loetakse Tallinna Tehnikaülikooli informaatika üliõpilastele.&lt;br /&gt;
&lt;br /&gt;
== Toimumiskoht ja aeg (2021) ==&lt;br /&gt;
&lt;br /&gt;
* loeng teisipäev, 12.00 &amp;lt;strike&amp;gt;U06A-229&amp;lt;/strike&amp;gt; distantsõpe - [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public otseülekanne videos] jätkub&amp;lt;!--, 9. veebruari loengu kohale tulemise soov [https://moodle.taltech.ee/mod/reservation/view.php?id=355089 registreeri siin]--&amp;gt;.&lt;br /&gt;
* harjutus IAIB reede, 10.00 MS Teams&lt;br /&gt;
* harjutus IABM, IAPM reede, 12.00 MS Teams&lt;br /&gt;
&lt;br /&gt;
Teamsi harjutustundidest saab osa võtta TalTechi Uni-ID kontoga.&lt;br /&gt;
&lt;br /&gt;
Loengute otseülekanded ja salvestused [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public vaadatavad Echo360-s] või [https://moodle.taltech.ee/course/view.php?id=30646 moodles].&lt;br /&gt;
&amp;lt;!--Õppematerjalid ja uued ülesanded lisanduvad tavaliselt igal kolmapäeval. Selle kohta tuleb ained.ttu.ee kaudu ka teade.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
õppejõud: Priit Järv&lt;br /&gt;
&lt;br /&gt;
kontakt: priit.jarv1 at ttu.ee&lt;br /&gt;
&lt;br /&gt;
== Juhend ==&lt;br /&gt;
&lt;br /&gt;
[[Iti0210juhend2021|LOE SEDA]]. Kuidas aine edukalt ära teha.&lt;br /&gt;
&lt;br /&gt;
Alates 2. nädalast eeldame, et iga üliõpilane on juhendiga tutvunud.&lt;br /&gt;
&lt;br /&gt;
== Õpikud ==&lt;br /&gt;
&lt;br /&gt;
Põhiõpik:&lt;br /&gt;
&lt;br /&gt;
[&#039;&#039;AIMA&#039;&#039;] Russell, S.J and Norvig, P. Artificial intelligence: a modern approach, third edition, Prentice Hall. 2009. [https://www.ester.ee/record=b2881231*est Olemas ülikooli raamatukogus].&lt;br /&gt;
&amp;lt;!--http://aima.cs.berkeley.edu/--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatiiv:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- [&#039;&#039;TI&#039;&#039;]  M. Koit, T. Roosmaa. Tehisintellekt. Tartu, TÜ Kirjastus, 2011.&lt;br /&gt;
http://dspace.ut.ee/handle/10062/28296&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[&#039;&#039;ARTINT&#039;&#039;] Poole, D.L and Mackworth, A. K. Artificial Intelligence: Foundations of Computational Agents,  2nd Edition. Cambridge University Press, 2017. https://artint.info/2e/html/ArtInt2e.html&lt;br /&gt;
&lt;br /&gt;
Kui näed wikis viidet nagu &amp;quot;[&#039;&#039;AIMA&#039;&#039;] 3.2&amp;quot;, siis see tähistab õpikupeatükki või lõiku, mis tuleks läbi lugeda.&lt;br /&gt;
&lt;br /&gt;
== Loengute kava ==&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w1|Sissejuhatus]]&lt;br /&gt;
# [[Iti0210w2|Otsing (tee leidmine eesmärgini)]]&lt;br /&gt;
# [[Iti0210w3|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w45|Lokaalne otsing ja metaheuristikud]]&lt;br /&gt;
# [[Iti0210w6|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210w7|Loogika. Lausearvutus. Järeldumine]]&lt;br /&gt;
# [[Iti0210w72|Tõestusalgoritmid]]&lt;br /&gt;
# [[Iti0210w8|Predikaatloogika]]&lt;br /&gt;
# [[Iti0210w9|Määramatus ja tõenäosus]]&lt;br /&gt;
# [[Iti0210w10|Tõenäosusmudelid]]&lt;br /&gt;
# [[Iti0210w101|Arvutusmeetodid tõenäosusmudelitel: HMM]]&lt;br /&gt;
# [[Iti0210w12|Närvivõrgud]]&lt;br /&gt;
# [[Iti0210w121|Närvivõrgud II]]&lt;br /&gt;
# [[Iti0210w13|Stiimulõpe]]&lt;br /&gt;
# Erinevad masinõppe mudelid&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# [[Iti0210w11|Masinõpe. Klassifitseerimine otsustuspuuga]]&lt;br /&gt;
# [[Iti0210w141|Lineaarsed mudelid]]&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w45|Otsinguruum ja -strateegiad. Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210w4|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w4|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w62|Kitsendustega ülesanded]]&lt;br /&gt;
# [[Iti0210w92|&amp;quot;Naiivne&amp;quot; Bayes]]&lt;br /&gt;
# [[Iti0210w14|Tehisintellekti eetika]]&lt;br /&gt;
# [[Iti0210w23|Videoloengud otsingualgoritmidest]]&lt;br /&gt;
&lt;br /&gt;
2019 kevade loengute [https://echo360.org.uk/section/6b6d61f2-0fbe-44e7-aea0-51ba77886a64/public videod]. Sisu erineb natuke praegusest kursusest.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Harjutused ==&lt;br /&gt;
&lt;br /&gt;
Kodutööde tutvustamises ja näidetes kasutatakse [https://www.python.org/ Python 3]-e. Kodutöid võib lahendada endale sobivaimas keeles.&lt;br /&gt;
&lt;br /&gt;
Ülesanded esitatakse [https://moodle.taltech.ee/course/view.php?id=30646 moodles], kood pane https://gitlab.cs.ttu.ee (tee üks projekt kus hoiad kõiki kodutöid ja lisa õppejõud &amp;quot;Reporter&amp;quot; õigustega). vt. ka [[Iti0210juhend2021|juhendit]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kodutööd&#039;&#039;&#039;.&lt;br /&gt;
# [[Iti0210lab23|Tee leidmine otsinguga (2-3 nädal)]]&lt;br /&gt;
# [[Iti0210lab42|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210lab63|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab74|Resolutsioonimeetod]]&lt;br /&gt;
# [[Iti0210lab82|Teadmuse esitus predikaatloogikas]]&lt;br /&gt;
# &amp;quot;Naiivne&amp;quot; Bayesi mudel [https://moodle.taltech.ee/mod/assign/view.php?id=372848 moodles]&lt;br /&gt;
# Närvivõrgu visualiseerimine [https://moodle.taltech.ee/mod/assign/view.php?id=376080 moodles]&lt;br /&gt;
&amp;lt;!--# [[Iti0210lab91|&amp;quot;Naiivne&amp;quot; Bayesi mudel]]&lt;br /&gt;
# [[Iti0210lab113|Informatsioon treeningandmetes]]&lt;br /&gt;
# [[Iti0210lab142|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210lab1|Intelligentne agent]]&lt;br /&gt;
# [[Iti0210lab2|Esimene katsetus otsinguga]]&lt;br /&gt;
# [[Iti0210lab3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210lab4|Otsingu katsetus &amp;lt;code&amp;gt;aima-python&amp;lt;/code&amp;gt; paketiga]]&lt;br /&gt;
# [https://courses.cs.ttu.ee/pages/ITI0120lab5 Lokaalne otsing]&lt;br /&gt;
# [[Iti0210lab62|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab6|Alpha-beta otsing]]&lt;br /&gt;
# [[Iti0210lab7|Lausearvutuse solver ja teadmusbaas]]&lt;br /&gt;
# [[Iti0210lab8|Teadmusbaas Prologis]]&lt;br /&gt;
# [[Iti0210lab10|Peidetud Markovi mudel]]&lt;br /&gt;
# [[Iti0210lab15|Lineaarsed mudelid]]&lt;br /&gt;
# [[Iti0210lab112|Klassifitseerimine masinõppega]]&lt;br /&gt;
# [[Iti0210lab11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210lab12|Närvivõrk]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Täiendavad harjutused&#039;&#039;&#039; pliiatsi ja paberiga lahendamiseks. Nende tulemusi ei kontrollita&lt;br /&gt;
&lt;br /&gt;
# Intelligentne agent [https://moodle.taltech.ee/mod/quiz/view.php?id=343189 moodles]&lt;br /&gt;
# Heuristiline otsing [https://moodle.taltech.ee/mod/quiz/view.php?id=354935 moodles]&lt;br /&gt;
# [[Iti0210lab42ex|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210ex6|Minimax puu]]&lt;br /&gt;
# [[Iti0210ex7|Loogika ja järeldamine]]&lt;br /&gt;
# [[Iti0210ex72|Konjunktiivne normaalkuju (CNF)]]&lt;br /&gt;
# [[Iti0210ex9|Tinglik tõenäosus]]&lt;br /&gt;
# [[Iti0210ex91|Bayesi valem]]&lt;br /&gt;
# [[Iti0210ex12|Tehisneuron]]&lt;br /&gt;
&amp;lt;!--# [[Iti0210ex10|Bayesi võrk]]&lt;br /&gt;
# [[Iti0210ex11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210ex13|Lineaarne regressioon]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Eksam ==&lt;br /&gt;
&lt;br /&gt;
Aine läbimiseks on vaja saada kodutööde ja eksami peale kokku min. 50 punkti, &amp;quot;5&amp;quot; saamiseks 90 punkti. Rohkem infot [[Iti0210juhend2021| juhendis]]&lt;br /&gt;
&lt;br /&gt;
Ajad (ära unusta ÕIS-is registreerida):&lt;br /&gt;
&lt;br /&gt;
* R 21. mai 2021, 10.00-11.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* R 28. mai 2021, 12.00-13.30  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* T 1. juuni 2021, 10.00-18.00   (suuline eksam/TalTech MS Teams, 30 kohta)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Suuline eksam toimub [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 MS Teams] keskkonnas, kuhu tuleb sisse logida uni-id kontoga. Kontrolli enne eksamit, et sisse logimine õnnestub ja sul on ühendus koos videoga.&lt;br /&gt;
&lt;br /&gt;
Moodle quiz eksami ajal saab [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 Teamsi] keskkonnas küsida chatis küsimusi, aga selle kasutamine pole kohustuslik.&lt;br /&gt;
&lt;br /&gt;
[[Iti0210ex2020info|Eksami kord]] &#039;&#039;&#039;&amp;lt;-- iga üliõpilane peab teadma&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Iti0210res2020|Eksamieeldused täidetud]] (18. mai seisuga).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Ettevalmistus ===&lt;br /&gt;
&lt;br /&gt;
[[Kordamisküsimused]]&lt;br /&gt;
&lt;br /&gt;
Mõned kirjalike eksamite näited teistelt tehisintellekti ainetelt: [http://pages.cs.wisc.edu/~jerryzhu/cs540/handouts/f17fs.pdf 1], [http://pages.cs.wisc.edu/~shavlik/cs540.html#previous-exams 2], [http://dijkstra.cs.ttu.ee/~juhan/iti8560/exam_2013_sample.pdf 3]. Neid võib vaadata, et saada ettekujutust, milliseid teadmisi sarnaseid kursuseid lõpetavatelt üliõpilastelt oodatakse.&amp;lt;!-- 2020 kevadel tuleb eksami formaat erinev.&lt;br /&gt;
&lt;br /&gt;
Teemad kattuvad meie kursusega osaliselt (s.t. vaata näiteid pigem formaadi kui sisuga tutvumiseks).&lt;br /&gt;
&lt;br /&gt;
Eksam on ilma materjalideta, aga võid kaasa võtta ühe A4 lehe märkmetega. Kestus 2 tundi.&lt;br /&gt;
&lt;br /&gt;
[https://www.elementsofai.com/ Kordamiseks ja harjutamiseks võid teha sellest kursusest osad 2,3,4]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w13&amp;diff=18813</id>
		<title>Iti0210w13</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w13&amp;diff=18813"/>
		<updated>2021-04-27T12:42:20Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* 14. Nädal */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 14. Nädal =&lt;br /&gt;
&lt;br /&gt;
Hüvitisega õppimine ehk stiimulõpe. &#039;&#039;Q-Learning&#039;&#039;. [&#039;&#039;AIMA&#039;&#039;] 21.3.2, [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch12.S4.html 12.4]-12.5.&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:Iti0210_w14.pdf|PDF]]&lt;br /&gt;
&lt;br /&gt;
[https://blog.valohai.com/reinforcement-learning-tutorial-part-1-q-learning Sissejuhatus Q-õppesse], loe 1. osa lõpuni, järgmiseid osasid pole tarvis.&lt;br /&gt;
&lt;br /&gt;
[http://www.youtube.com/watch?v=f2nIKFMyfSg Reinforcement Learning: Example and Tutorial]&lt;br /&gt;
&lt;br /&gt;
[https://echo360.org.uk/media/ceb0f4d5-3bac-4310-84d6-c338809b27fc/public loengu salvestus]&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18812</id>
		<title>Tehisintellekti ja masinõppe alused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18812"/>
		<updated>2021-04-26T20:28:55Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* Loengute kava */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kood: &#039;&#039;&#039;ITI0210&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://ois.ttu.ee/aine/ITI0210 ÕIS ainekaart]&lt;br /&gt;
&lt;br /&gt;
Kursust loetakse Tallinna Tehnikaülikooli informaatika üliõpilastele.&lt;br /&gt;
&lt;br /&gt;
== Toimumiskoht ja aeg (2021) ==&lt;br /&gt;
&lt;br /&gt;
* loeng teisipäev, 12.00 &amp;lt;strike&amp;gt;U06A-229&amp;lt;/strike&amp;gt; distantsõpe - [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public otseülekanne videos] jätkub&amp;lt;!--, 9. veebruari loengu kohale tulemise soov [https://moodle.taltech.ee/mod/reservation/view.php?id=355089 registreeri siin]--&amp;gt;.&lt;br /&gt;
* harjutus IAIB reede, 10.00 MS Teams&lt;br /&gt;
* harjutus IABM, IAPM reede, 12.00 MS Teams&lt;br /&gt;
&lt;br /&gt;
Teamsi harjutustundidest saab osa võtta TalTechi Uni-ID kontoga.&lt;br /&gt;
&lt;br /&gt;
Loengute otseülekanded ja salvestused [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public vaadatavad Echo360-s] või [https://moodle.taltech.ee/course/view.php?id=30646 moodles].&lt;br /&gt;
&amp;lt;!--Õppematerjalid ja uued ülesanded lisanduvad tavaliselt igal kolmapäeval. Selle kohta tuleb ained.ttu.ee kaudu ka teade.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
õppejõud: Priit Järv&lt;br /&gt;
&lt;br /&gt;
kontakt: priit.jarv1 at ttu.ee&lt;br /&gt;
&lt;br /&gt;
== Juhend ==&lt;br /&gt;
&lt;br /&gt;
[[Iti0210juhend2021|LOE SEDA]]. Kuidas aine edukalt ära teha.&lt;br /&gt;
&lt;br /&gt;
Alates 2. nädalast eeldame, et iga üliõpilane on juhendiga tutvunud.&lt;br /&gt;
&lt;br /&gt;
== Õpikud ==&lt;br /&gt;
&lt;br /&gt;
Põhiõpik:&lt;br /&gt;
&lt;br /&gt;
[&#039;&#039;AIMA&#039;&#039;] Russell, S.J and Norvig, P. Artificial intelligence: a modern approach, third edition, Prentice Hall. 2009. [https://www.ester.ee/record=b2881231*est Olemas ülikooli raamatukogus].&lt;br /&gt;
&amp;lt;!--http://aima.cs.berkeley.edu/--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatiiv:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- [&#039;&#039;TI&#039;&#039;]  M. Koit, T. Roosmaa. Tehisintellekt. Tartu, TÜ Kirjastus, 2011.&lt;br /&gt;
http://dspace.ut.ee/handle/10062/28296&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[&#039;&#039;ARTINT&#039;&#039;] Poole, D.L and Mackworth, A. K. Artificial Intelligence: Foundations of Computational Agents,  2nd Edition. Cambridge University Press, 2017. https://artint.info/2e/html/ArtInt2e.html&lt;br /&gt;
&lt;br /&gt;
Kui näed wikis viidet nagu &amp;quot;[&#039;&#039;AIMA&#039;&#039;] 3.2&amp;quot;, siis see tähistab õpikupeatükki või lõiku, mis tuleks läbi lugeda.&lt;br /&gt;
&lt;br /&gt;
== Loengute kava ==&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w1|Sissejuhatus]]&lt;br /&gt;
# [[Iti0210w2|Otsing (tee leidmine eesmärgini)]]&lt;br /&gt;
# [[Iti0210w3|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w45|Lokaalne otsing ja metaheuristikud]]&lt;br /&gt;
# [[Iti0210w6|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210w7|Loogika. Lausearvutus. Järeldumine]]&lt;br /&gt;
# [[Iti0210w72|Tõestusalgoritmid]]&lt;br /&gt;
# [[Iti0210w8|Predikaatloogika]]&lt;br /&gt;
# [[Iti0210w9|Määramatus ja tõenäosus]]&lt;br /&gt;
# [[Iti0210w10|Tõenäosusmudelid]]&lt;br /&gt;
# [[Iti0210w101|Arvutusmeetodid tõenäosusmudelitel: HMM]]&lt;br /&gt;
# [[Iti0210w12|Närvivõrgud]]&lt;br /&gt;
# [[Iti0210w121|Närvivõrgud II]]&lt;br /&gt;
# [[Iti0210w13|Stiimulõpe]]&lt;br /&gt;
# Erinevad masinõppe mudelid&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# [[Iti0210w11|Masinõpe. Klassifitseerimine otsustuspuuga]]&lt;br /&gt;
# [[Iti0210w141|Lineaarsed mudelid]]&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w45|Otsinguruum ja -strateegiad. Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210w4|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w4|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w62|Kitsendustega ülesanded]]&lt;br /&gt;
# [[Iti0210w92|&amp;quot;Naiivne&amp;quot; Bayes]]&lt;br /&gt;
# [[Iti0210w14|Tehisintellekti eetika]]&lt;br /&gt;
# [[Iti0210w23|Videoloengud otsingualgoritmidest]]&lt;br /&gt;
&lt;br /&gt;
2019 kevade loengute [https://echo360.org.uk/section/6b6d61f2-0fbe-44e7-aea0-51ba77886a64/public videod]. Sisu erineb natuke praegusest kursusest.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Harjutused ==&lt;br /&gt;
&lt;br /&gt;
Kodutööde tutvustamises ja näidetes kasutatakse [https://www.python.org/ Python 3]-e. Kodutöid võib lahendada endale sobivaimas keeles.&lt;br /&gt;
&lt;br /&gt;
Ülesanded esitatakse [https://moodle.taltech.ee/course/view.php?id=30646 moodles], kood pane https://gitlab.cs.ttu.ee (tee üks projekt kus hoiad kõiki kodutöid ja lisa õppejõud &amp;quot;Reporter&amp;quot; õigustega). vt. ka [[Iti0210juhend2021|juhendit]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kodutööd&#039;&#039;&#039;.&lt;br /&gt;
# [[Iti0210lab23|Tee leidmine otsinguga (2-3 nädal)]]&lt;br /&gt;
# [[Iti0210lab42|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210lab63|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab74|Resolutsioonimeetod]]&lt;br /&gt;
# [[Iti0210lab82|Teadmuse esitus predikaatloogikas]]&lt;br /&gt;
# &amp;quot;Naiivne&amp;quot; Bayesi mudel [https://moodle.taltech.ee/mod/assign/view.php?id=372848 moodles]&lt;br /&gt;
# Närvivõrgu visualiseerimine [https://moodle.taltech.ee/mod/assign/view.php?id=376080 moodles]&lt;br /&gt;
&amp;lt;!--# [[Iti0210lab91|&amp;quot;Naiivne&amp;quot; Bayesi mudel]]&lt;br /&gt;
# [[Iti0210lab113|Informatsioon treeningandmetes]]&lt;br /&gt;
# [[Iti0210lab142|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210lab1|Intelligentne agent]]&lt;br /&gt;
# [[Iti0210lab2|Esimene katsetus otsinguga]]&lt;br /&gt;
# [[Iti0210lab3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210lab4|Otsingu katsetus &amp;lt;code&amp;gt;aima-python&amp;lt;/code&amp;gt; paketiga]]&lt;br /&gt;
# [https://courses.cs.ttu.ee/pages/ITI0120lab5 Lokaalne otsing]&lt;br /&gt;
# [[Iti0210lab62|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab6|Alpha-beta otsing]]&lt;br /&gt;
# [[Iti0210lab7|Lausearvutuse solver ja teadmusbaas]]&lt;br /&gt;
# [[Iti0210lab8|Teadmusbaas Prologis]]&lt;br /&gt;
# [[Iti0210lab10|Peidetud Markovi mudel]]&lt;br /&gt;
# [[Iti0210lab15|Lineaarsed mudelid]]&lt;br /&gt;
# [[Iti0210lab112|Klassifitseerimine masinõppega]]&lt;br /&gt;
# [[Iti0210lab11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210lab12|Närvivõrk]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Täiendavad harjutused&#039;&#039;&#039; pliiatsi ja paberiga lahendamiseks. Nende tulemusi ei kontrollita&lt;br /&gt;
&lt;br /&gt;
# Intelligentne agent [https://moodle.taltech.ee/mod/quiz/view.php?id=343189 moodles]&lt;br /&gt;
# Heuristiline otsing [https://moodle.taltech.ee/mod/quiz/view.php?id=354935 moodles]&lt;br /&gt;
# [[Iti0210lab42ex|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210ex6|Minimax puu]]&lt;br /&gt;
# [[Iti0210ex7|Loogika ja järeldamine]]&lt;br /&gt;
# [[Iti0210ex72|Konjunktiivne normaalkuju (CNF)]]&lt;br /&gt;
# [[Iti0210ex9|Tinglik tõenäosus]]&lt;br /&gt;
# [[Iti0210ex91|Bayesi valem]]&lt;br /&gt;
# [[Iti0210ex12|Tehisneuron]]&lt;br /&gt;
&amp;lt;!--# [[Iti0210ex10|Bayesi võrk]]&lt;br /&gt;
# [[Iti0210ex11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210ex13|Lineaarne regressioon]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Eksam ==&lt;br /&gt;
&lt;br /&gt;
Aine läbimiseks on vaja saada kodutööde ja eksami peale kokku min. 50 punkti, &amp;quot;5&amp;quot; saamiseks 90 punkti. Rohkem infot [[Iti0210juhend2021| juhendis]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Ajad (ära unusta ÕIS-is registreerida):&lt;br /&gt;
&lt;br /&gt;
* K 20. mai 2020, 10.00-11.00  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* K 27. mai 2020, 10.00-11.00  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* K 3. juuni 2020, 10.00-13.00   (suuline eksam/TalTech MS Teams, 12 kohta)&lt;br /&gt;
&lt;br /&gt;
Suuline eksam toimub [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 MS Teams] keskkonnas, kuhu tuleb sisse logida uni-id kontoga. Kontrolli enne eksamit, et sisse logimine õnnestub ja sul on ühendus koos videoga.&lt;br /&gt;
&lt;br /&gt;
Moodle quiz eksami ajal saab [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 Teamsi] keskkonnas küsida chatis küsimusi, aga selle kasutamine pole kohustuslik.&lt;br /&gt;
&lt;br /&gt;
[[Iti0210ex2020info|Eksami kord]] &#039;&#039;&#039;&amp;lt;-- iga üliõpilane peab teadma&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Iti0210res2020|Eksamieeldused täidetud]] (18. mai seisuga).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Ettevalmistus ===&lt;br /&gt;
&lt;br /&gt;
[[Kordamisküsimused]]&lt;br /&gt;
&lt;br /&gt;
Mõned kirjalike eksamite näited teistelt tehisintellekti ainetelt: [http://pages.cs.wisc.edu/~jerryzhu/cs540/handouts/f17fs.pdf 1], [http://pages.cs.wisc.edu/~shavlik/cs540.html#previous-exams 2], [http://dijkstra.cs.ttu.ee/~juhan/iti8560/exam_2013_sample.pdf 3]. Neid võib vaadata, et saada ettekujutust, milliseid teadmisi sarnaseid kursuseid lõpetavatelt üliõpilastelt oodatakse.&amp;lt;!-- 2020 kevadel tuleb eksami formaat erinev.&lt;br /&gt;
&lt;br /&gt;
Teemad kattuvad meie kursusega osaliselt (s.t. vaata näiteid pigem formaadi kui sisuga tutvumiseks).&lt;br /&gt;
&lt;br /&gt;
Eksam on ilma materjalideta, aga võid kaasa võtta ühe A4 lehe märkmetega. Kestus 2 tundi.&lt;br /&gt;
&lt;br /&gt;
[https://www.elementsofai.com/ Kordamiseks ja harjutamiseks võid teha sellest kursusest osad 2,3,4]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w13&amp;diff=18811</id>
		<title>Iti0210w13</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w13&amp;diff=18811"/>
		<updated>2021-04-26T20:20:49Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 14. Nädal =&lt;br /&gt;
&lt;br /&gt;
Hüvitisega õppimine ehk stiimulõpe. &#039;&#039;Q-Learning&#039;&#039;. [&#039;&#039;AIMA&#039;&#039;] 21.3.2, [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch12.S4.html 12.4]-12.5.&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:Iti0210_w14.pdf|PDF]]&lt;br /&gt;
&lt;br /&gt;
[https://blog.valohai.com/reinforcement-learning-tutorial-part-1-q-learning Sissejuhatus Q-õppesse], loe 1. osa lõpuni, järgmiseid osasid pole tarvis.&lt;br /&gt;
&lt;br /&gt;
[http://www.youtube.com/watch?v=f2nIKFMyfSg Reinforcement Learning: Example and Tutorial]&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Fail:Iti0210_w14.pdf&amp;diff=18810</id>
		<title>Fail:Iti0210 w14.pdf</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Fail:Iti0210_w14.pdf&amp;diff=18810"/>
		<updated>2021-04-26T20:20:43Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18809</id>
		<title>Tehisintellekti ja masinõppe alused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18809"/>
		<updated>2021-04-23T05:37:02Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* Harjutused */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kood: &#039;&#039;&#039;ITI0210&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://ois.ttu.ee/aine/ITI0210 ÕIS ainekaart]&lt;br /&gt;
&lt;br /&gt;
Kursust loetakse Tallinna Tehnikaülikooli informaatika üliõpilastele.&lt;br /&gt;
&lt;br /&gt;
== Toimumiskoht ja aeg (2021) ==&lt;br /&gt;
&lt;br /&gt;
* loeng teisipäev, 12.00 &amp;lt;strike&amp;gt;U06A-229&amp;lt;/strike&amp;gt; distantsõpe - [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public otseülekanne videos] jätkub&amp;lt;!--, 9. veebruari loengu kohale tulemise soov [https://moodle.taltech.ee/mod/reservation/view.php?id=355089 registreeri siin]--&amp;gt;.&lt;br /&gt;
* harjutus IAIB reede, 10.00 MS Teams&lt;br /&gt;
* harjutus IABM, IAPM reede, 12.00 MS Teams&lt;br /&gt;
&lt;br /&gt;
Teamsi harjutustundidest saab osa võtta TalTechi Uni-ID kontoga.&lt;br /&gt;
&lt;br /&gt;
Loengute otseülekanded ja salvestused [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public vaadatavad Echo360-s] või [https://moodle.taltech.ee/course/view.php?id=30646 moodles].&lt;br /&gt;
&amp;lt;!--Õppematerjalid ja uued ülesanded lisanduvad tavaliselt igal kolmapäeval. Selle kohta tuleb ained.ttu.ee kaudu ka teade.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
õppejõud: Priit Järv&lt;br /&gt;
&lt;br /&gt;
kontakt: priit.jarv1 at ttu.ee&lt;br /&gt;
&lt;br /&gt;
== Juhend ==&lt;br /&gt;
&lt;br /&gt;
[[Iti0210juhend2021|LOE SEDA]]. Kuidas aine edukalt ära teha.&lt;br /&gt;
&lt;br /&gt;
Alates 2. nädalast eeldame, et iga üliõpilane on juhendiga tutvunud.&lt;br /&gt;
&lt;br /&gt;
== Õpikud ==&lt;br /&gt;
&lt;br /&gt;
Põhiõpik:&lt;br /&gt;
&lt;br /&gt;
[&#039;&#039;AIMA&#039;&#039;] Russell, S.J and Norvig, P. Artificial intelligence: a modern approach, third edition, Prentice Hall. 2009. [https://www.ester.ee/record=b2881231*est Olemas ülikooli raamatukogus].&lt;br /&gt;
&amp;lt;!--http://aima.cs.berkeley.edu/--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatiiv:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- [&#039;&#039;TI&#039;&#039;]  M. Koit, T. Roosmaa. Tehisintellekt. Tartu, TÜ Kirjastus, 2011.&lt;br /&gt;
http://dspace.ut.ee/handle/10062/28296&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[&#039;&#039;ARTINT&#039;&#039;] Poole, D.L and Mackworth, A. K. Artificial Intelligence: Foundations of Computational Agents,  2nd Edition. Cambridge University Press, 2017. https://artint.info/2e/html/ArtInt2e.html&lt;br /&gt;
&lt;br /&gt;
Kui näed wikis viidet nagu &amp;quot;[&#039;&#039;AIMA&#039;&#039;] 3.2&amp;quot;, siis see tähistab õpikupeatükki või lõiku, mis tuleks läbi lugeda.&lt;br /&gt;
&lt;br /&gt;
== Loengute kava ==&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w1|Sissejuhatus]]&lt;br /&gt;
# [[Iti0210w2|Otsing (tee leidmine eesmärgini)]]&lt;br /&gt;
# [[Iti0210w3|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w45|Lokaalne otsing ja metaheuristikud]]&lt;br /&gt;
# [[Iti0210w6|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210w7|Loogika. Lausearvutus. Järeldumine]]&lt;br /&gt;
# [[Iti0210w72|Tõestusalgoritmid]]&lt;br /&gt;
# [[Iti0210w8|Predikaatloogika]]&lt;br /&gt;
# [[Iti0210w9|Määramatus ja tõenäosus]]&lt;br /&gt;
# [[Iti0210w10|Tõenäosusmudelid]]&lt;br /&gt;
# [[Iti0210w101|Arvutusmeetodid tõenäosusmudelitel: HMM]]&lt;br /&gt;
# [[Iti0210w12|Närvivõrgud]]&lt;br /&gt;
# [[Iti0210w121|Närvivõrgud II]]&lt;br /&gt;
# Stiimulõpe&lt;br /&gt;
# Erinevad masinõppe mudelid&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# [[Iti0210w11|Masinõpe. Klassifitseerimine otsustuspuuga]]&lt;br /&gt;
# [[Iti0210w13|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210w141|Lineaarsed mudelid]]&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w45|Otsinguruum ja -strateegiad. Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210w4|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w4|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w62|Kitsendustega ülesanded]]&lt;br /&gt;
# [[Iti0210w92|&amp;quot;Naiivne&amp;quot; Bayes]]&lt;br /&gt;
# [[Iti0210w14|Tehisintellekti eetika]]&lt;br /&gt;
# [[Iti0210w23|Videoloengud otsingualgoritmidest]]&lt;br /&gt;
&lt;br /&gt;
2019 kevade loengute [https://echo360.org.uk/section/6b6d61f2-0fbe-44e7-aea0-51ba77886a64/public videod]. Sisu erineb natuke praegusest kursusest.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Harjutused ==&lt;br /&gt;
&lt;br /&gt;
Kodutööde tutvustamises ja näidetes kasutatakse [https://www.python.org/ Python 3]-e. Kodutöid võib lahendada endale sobivaimas keeles.&lt;br /&gt;
&lt;br /&gt;
Ülesanded esitatakse [https://moodle.taltech.ee/course/view.php?id=30646 moodles], kood pane https://gitlab.cs.ttu.ee (tee üks projekt kus hoiad kõiki kodutöid ja lisa õppejõud &amp;quot;Reporter&amp;quot; õigustega). vt. ka [[Iti0210juhend2021|juhendit]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kodutööd&#039;&#039;&#039;.&lt;br /&gt;
# [[Iti0210lab23|Tee leidmine otsinguga (2-3 nädal)]]&lt;br /&gt;
# [[Iti0210lab42|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210lab63|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab74|Resolutsioonimeetod]]&lt;br /&gt;
# [[Iti0210lab82|Teadmuse esitus predikaatloogikas]]&lt;br /&gt;
# &amp;quot;Naiivne&amp;quot; Bayesi mudel [https://moodle.taltech.ee/mod/assign/view.php?id=372848 moodles]&lt;br /&gt;
# Närvivõrgu visualiseerimine [https://moodle.taltech.ee/mod/assign/view.php?id=376080 moodles]&lt;br /&gt;
&amp;lt;!--# [[Iti0210lab91|&amp;quot;Naiivne&amp;quot; Bayesi mudel]]&lt;br /&gt;
# [[Iti0210lab113|Informatsioon treeningandmetes]]&lt;br /&gt;
# [[Iti0210lab142|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210lab1|Intelligentne agent]]&lt;br /&gt;
# [[Iti0210lab2|Esimene katsetus otsinguga]]&lt;br /&gt;
# [[Iti0210lab3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210lab4|Otsingu katsetus &amp;lt;code&amp;gt;aima-python&amp;lt;/code&amp;gt; paketiga]]&lt;br /&gt;
# [https://courses.cs.ttu.ee/pages/ITI0120lab5 Lokaalne otsing]&lt;br /&gt;
# [[Iti0210lab62|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab6|Alpha-beta otsing]]&lt;br /&gt;
# [[Iti0210lab7|Lausearvutuse solver ja teadmusbaas]]&lt;br /&gt;
# [[Iti0210lab8|Teadmusbaas Prologis]]&lt;br /&gt;
# [[Iti0210lab10|Peidetud Markovi mudel]]&lt;br /&gt;
# [[Iti0210lab15|Lineaarsed mudelid]]&lt;br /&gt;
# [[Iti0210lab112|Klassifitseerimine masinõppega]]&lt;br /&gt;
# [[Iti0210lab11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210lab12|Närvivõrk]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Täiendavad harjutused&#039;&#039;&#039; pliiatsi ja paberiga lahendamiseks. Nende tulemusi ei kontrollita&lt;br /&gt;
&lt;br /&gt;
# Intelligentne agent [https://moodle.taltech.ee/mod/quiz/view.php?id=343189 moodles]&lt;br /&gt;
# Heuristiline otsing [https://moodle.taltech.ee/mod/quiz/view.php?id=354935 moodles]&lt;br /&gt;
# [[Iti0210lab42ex|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210ex6|Minimax puu]]&lt;br /&gt;
# [[Iti0210ex7|Loogika ja järeldamine]]&lt;br /&gt;
# [[Iti0210ex72|Konjunktiivne normaalkuju (CNF)]]&lt;br /&gt;
# [[Iti0210ex9|Tinglik tõenäosus]]&lt;br /&gt;
# [[Iti0210ex91|Bayesi valem]]&lt;br /&gt;
# [[Iti0210ex12|Tehisneuron]]&lt;br /&gt;
&amp;lt;!--# [[Iti0210ex10|Bayesi võrk]]&lt;br /&gt;
# [[Iti0210ex11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210ex13|Lineaarne regressioon]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Eksam ==&lt;br /&gt;
&lt;br /&gt;
Aine läbimiseks on vaja saada kodutööde ja eksami peale kokku min. 50 punkti, &amp;quot;5&amp;quot; saamiseks 90 punkti. Rohkem infot [[Iti0210juhend2021| juhendis]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Ajad (ära unusta ÕIS-is registreerida):&lt;br /&gt;
&lt;br /&gt;
* K 20. mai 2020, 10.00-11.00  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* K 27. mai 2020, 10.00-11.00  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* K 3. juuni 2020, 10.00-13.00   (suuline eksam/TalTech MS Teams, 12 kohta)&lt;br /&gt;
&lt;br /&gt;
Suuline eksam toimub [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 MS Teams] keskkonnas, kuhu tuleb sisse logida uni-id kontoga. Kontrolli enne eksamit, et sisse logimine õnnestub ja sul on ühendus koos videoga.&lt;br /&gt;
&lt;br /&gt;
Moodle quiz eksami ajal saab [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 Teamsi] keskkonnas küsida chatis küsimusi, aga selle kasutamine pole kohustuslik.&lt;br /&gt;
&lt;br /&gt;
[[Iti0210ex2020info|Eksami kord]] &#039;&#039;&#039;&amp;lt;-- iga üliõpilane peab teadma&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Iti0210res2020|Eksamieeldused täidetud]] (18. mai seisuga).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Ettevalmistus ===&lt;br /&gt;
&lt;br /&gt;
[[Kordamisküsimused]]&lt;br /&gt;
&lt;br /&gt;
Mõned kirjalike eksamite näited teistelt tehisintellekti ainetelt: [http://pages.cs.wisc.edu/~jerryzhu/cs540/handouts/f17fs.pdf 1], [http://pages.cs.wisc.edu/~shavlik/cs540.html#previous-exams 2], [http://dijkstra.cs.ttu.ee/~juhan/iti8560/exam_2013_sample.pdf 3]. Neid võib vaadata, et saada ettekujutust, milliseid teadmisi sarnaseid kursuseid lõpetavatelt üliõpilastelt oodatakse.&amp;lt;!-- 2020 kevadel tuleb eksami formaat erinev.&lt;br /&gt;
&lt;br /&gt;
Teemad kattuvad meie kursusega osaliselt (s.t. vaata näiteid pigem formaadi kui sisuga tutvumiseks).&lt;br /&gt;
&lt;br /&gt;
Eksam on ilma materjalideta, aga võid kaasa võtta ühe A4 lehe märkmetega. Kestus 2 tundi.&lt;br /&gt;
&lt;br /&gt;
[https://www.elementsofai.com/ Kordamiseks ja harjutamiseks võid teha sellest kursusest osad 2,3,4]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w121&amp;diff=18792</id>
		<title>Iti0210w121</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w121&amp;diff=18792"/>
		<updated>2021-04-20T15:08:28Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 13. Nädal =&lt;br /&gt;
&lt;br /&gt;
Närvivõrkude treenimine. [&#039;&#039;AIMA&#039;&#039;] 18.2, 18.7.4 [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch7.S5.html 7.1], 7.4-7.5&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:Iti0210_w13.pdf|PDF]]&lt;br /&gt;
&lt;br /&gt;
[https://cs.stanford.edu/people/karpathy/convnetjs/demo/mnist.html Andrej Karpathy CNN demo] MNIST andmestikul.&lt;br /&gt;
&lt;br /&gt;
[https://echo360.org.uk/media/91ca8b31-365c-4177-b71b-62196d189f73/public loengu salvestus]&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Iti0210w12&amp;diff=18791</id>
		<title>Iti0210w12</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Iti0210w12&amp;diff=18791"/>
		<updated>2021-04-20T15:05:49Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 12. Nädal =&lt;br /&gt;
&lt;br /&gt;
Närvivõrgud. [&#039;&#039;AIMA&#039;&#039;] 18.7-18.7.3 [&#039;&#039;ARTINT&#039;&#039;] [https://artint.info/2e/html/ArtInt2e.Ch7.S5.html 7.5]&lt;br /&gt;
&lt;br /&gt;
Loenguslaidid: [[Media:Iti0210_w12.pdf|PDF]]&lt;br /&gt;
&lt;br /&gt;
[https://playground.tensorflow.org/ Tensorflow Playground] väikeste võrkude katsetamiseks&lt;br /&gt;
&lt;br /&gt;
[https://echo360.org.uk/media/93d2817d-c259-42c0-8f42-21215acc1219/public loengu salvestus]&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18790</id>
		<title>Tehisintellekti ja masinõppe alused</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Tehisintellekti_ja_masin%C3%B5ppe_alused&amp;diff=18790"/>
		<updated>2021-04-19T13:52:40Z</updated>

		<summary type="html">&lt;p&gt;PriitJ: /* Harjutused */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kood: &#039;&#039;&#039;ITI0210&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://ois.ttu.ee/aine/ITI0210 ÕIS ainekaart]&lt;br /&gt;
&lt;br /&gt;
Kursust loetakse Tallinna Tehnikaülikooli informaatika üliõpilastele.&lt;br /&gt;
&lt;br /&gt;
== Toimumiskoht ja aeg (2021) ==&lt;br /&gt;
&lt;br /&gt;
* loeng teisipäev, 12.00 &amp;lt;strike&amp;gt;U06A-229&amp;lt;/strike&amp;gt; distantsõpe - [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public otseülekanne videos] jätkub&amp;lt;!--, 9. veebruari loengu kohale tulemise soov [https://moodle.taltech.ee/mod/reservation/view.php?id=355089 registreeri siin]--&amp;gt;.&lt;br /&gt;
* harjutus IAIB reede, 10.00 MS Teams&lt;br /&gt;
* harjutus IABM, IAPM reede, 12.00 MS Teams&lt;br /&gt;
&lt;br /&gt;
Teamsi harjutustundidest saab osa võtta TalTechi Uni-ID kontoga.&lt;br /&gt;
&lt;br /&gt;
Loengute otseülekanded ja salvestused [https://echo360.org.uk/section/7cd7af19-f206-4a04-878e-3cff9918ade5/public vaadatavad Echo360-s] või [https://moodle.taltech.ee/course/view.php?id=30646 moodles].&lt;br /&gt;
&amp;lt;!--Õppematerjalid ja uued ülesanded lisanduvad tavaliselt igal kolmapäeval. Selle kohta tuleb ained.ttu.ee kaudu ka teade.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
õppejõud: Priit Järv&lt;br /&gt;
&lt;br /&gt;
kontakt: priit.jarv1 at ttu.ee&lt;br /&gt;
&lt;br /&gt;
== Juhend ==&lt;br /&gt;
&lt;br /&gt;
[[Iti0210juhend2021|LOE SEDA]]. Kuidas aine edukalt ära teha.&lt;br /&gt;
&lt;br /&gt;
Alates 2. nädalast eeldame, et iga üliõpilane on juhendiga tutvunud.&lt;br /&gt;
&lt;br /&gt;
== Õpikud ==&lt;br /&gt;
&lt;br /&gt;
Põhiõpik:&lt;br /&gt;
&lt;br /&gt;
[&#039;&#039;AIMA&#039;&#039;] Russell, S.J and Norvig, P. Artificial intelligence: a modern approach, third edition, Prentice Hall. 2009. [https://www.ester.ee/record=b2881231*est Olemas ülikooli raamatukogus].&lt;br /&gt;
&amp;lt;!--http://aima.cs.berkeley.edu/--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatiiv:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- [&#039;&#039;TI&#039;&#039;]  M. Koit, T. Roosmaa. Tehisintellekt. Tartu, TÜ Kirjastus, 2011.&lt;br /&gt;
http://dspace.ut.ee/handle/10062/28296&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[&#039;&#039;ARTINT&#039;&#039;] Poole, D.L and Mackworth, A. K. Artificial Intelligence: Foundations of Computational Agents,  2nd Edition. Cambridge University Press, 2017. https://artint.info/2e/html/ArtInt2e.html&lt;br /&gt;
&lt;br /&gt;
Kui näed wikis viidet nagu &amp;quot;[&#039;&#039;AIMA&#039;&#039;] 3.2&amp;quot;, siis see tähistab õpikupeatükki või lõiku, mis tuleks läbi lugeda.&lt;br /&gt;
&lt;br /&gt;
== Loengute kava ==&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w1|Sissejuhatus]]&lt;br /&gt;
# [[Iti0210w2|Otsing (tee leidmine eesmärgini)]]&lt;br /&gt;
# [[Iti0210w3|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w45|Lokaalne otsing ja metaheuristikud]]&lt;br /&gt;
# [[Iti0210w6|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210w7|Loogika. Lausearvutus. Järeldumine]]&lt;br /&gt;
# [[Iti0210w72|Tõestusalgoritmid]]&lt;br /&gt;
# [[Iti0210w8|Predikaatloogika]]&lt;br /&gt;
# [[Iti0210w9|Määramatus ja tõenäosus]]&lt;br /&gt;
# [[Iti0210w10|Tõenäosusmudelid]]&lt;br /&gt;
# [[Iti0210w101|Arvutusmeetodid tõenäosusmudelitel: HMM]]&lt;br /&gt;
# [[Iti0210w12|Närvivõrgud]]&lt;br /&gt;
# [[Iti0210w121|Närvivõrgud II]]&lt;br /&gt;
# Stiimulõpe&lt;br /&gt;
# Erinevad masinõppe mudelid&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
# [[Iti0210w11|Masinõpe. Klassifitseerimine otsustuspuuga]]&lt;br /&gt;
# [[Iti0210w13|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210w141|Lineaarsed mudelid]]&lt;br /&gt;
&lt;br /&gt;
# [[Iti0210w3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w45|Otsinguruum ja -strateegiad. Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210w4|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210w4|Otsinguruum ja -strateegiad]]&lt;br /&gt;
# [[Iti0210w62|Kitsendustega ülesanded]]&lt;br /&gt;
# [[Iti0210w92|&amp;quot;Naiivne&amp;quot; Bayes]]&lt;br /&gt;
# [[Iti0210w14|Tehisintellekti eetika]]&lt;br /&gt;
# [[Iti0210w23|Videoloengud otsingualgoritmidest]]&lt;br /&gt;
&lt;br /&gt;
2019 kevade loengute [https://echo360.org.uk/section/6b6d61f2-0fbe-44e7-aea0-51ba77886a64/public videod]. Sisu erineb natuke praegusest kursusest.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Harjutused ==&lt;br /&gt;
&lt;br /&gt;
Kodutööde tutvustamises ja näidetes kasutatakse [https://www.python.org/ Python 3]-e. Kodutöid võib lahendada endale sobivaimas keeles.&lt;br /&gt;
&lt;br /&gt;
Ülesanded esitatakse [https://moodle.taltech.ee/course/view.php?id=30646 moodles], kood pane https://gitlab.cs.ttu.ee (tee üks projekt kus hoiad kõiki kodutöid ja lisa õppejõud &amp;quot;Reporter&amp;quot; õigustega). vt. ka [[Iti0210juhend2021|juhendit]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kodutööd&#039;&#039;&#039;.&lt;br /&gt;
# [[Iti0210lab23|Tee leidmine otsinguga (2-3 nädal)]]&lt;br /&gt;
# [[Iti0210lab42|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210lab63|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab74|Resolutsioonimeetod]]&lt;br /&gt;
# [[Iti0210lab82|Teadmuse esitus predikaatloogikas]]&lt;br /&gt;
# &amp;quot;Naiivne&amp;quot; Bayesi mudel [https://moodle.taltech.ee/mod/assign/view.php?id=372848 moodles]&lt;br /&gt;
&amp;lt;!--# [[Iti0210lab91|&amp;quot;Naiivne&amp;quot; Bayesi mudel]]&lt;br /&gt;
# [[Iti0210lab113|Informatsioon treeningandmetes]]&lt;br /&gt;
# [[Iti0210lab142|Stiimulõpe]]&lt;br /&gt;
# [[Iti0210lab1|Intelligentne agent]]&lt;br /&gt;
# [[Iti0210lab2|Esimene katsetus otsinguga]]&lt;br /&gt;
# [[Iti0210lab3|Heuristiline otsing]]&lt;br /&gt;
# [[Iti0210lab4|Otsingu katsetus &amp;lt;code&amp;gt;aima-python&amp;lt;/code&amp;gt; paketiga]]&lt;br /&gt;
# [https://courses.cs.ttu.ee/pages/ITI0120lab5 Lokaalne otsing]&lt;br /&gt;
# [[Iti0210lab62|Otsing mängupuul]]&lt;br /&gt;
# [[Iti0210lab6|Alpha-beta otsing]]&lt;br /&gt;
# [[Iti0210lab7|Lausearvutuse solver ja teadmusbaas]]&lt;br /&gt;
# [[Iti0210lab8|Teadmusbaas Prologis]]&lt;br /&gt;
# [[Iti0210lab10|Peidetud Markovi mudel]]&lt;br /&gt;
# [[Iti0210lab15|Lineaarsed mudelid]]&lt;br /&gt;
# [[Iti0210lab112|Klassifitseerimine masinõppega]]&lt;br /&gt;
# [[Iti0210lab11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210lab12|Närvivõrk]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Täiendavad harjutused&#039;&#039;&#039; pliiatsi ja paberiga lahendamiseks. Nende tulemusi ei kontrollita&lt;br /&gt;
&lt;br /&gt;
# Intelligentne agent [https://moodle.taltech.ee/mod/quiz/view.php?id=343189 moodles]&lt;br /&gt;
# Heuristiline otsing [https://moodle.taltech.ee/mod/quiz/view.php?id=354935 moodles]&lt;br /&gt;
# [[Iti0210lab42ex|Lokaalne otsing]]&lt;br /&gt;
# [[Iti0210ex6|Minimax puu]]&lt;br /&gt;
# [[Iti0210ex7|Loogika ja järeldamine]]&lt;br /&gt;
# [[Iti0210ex72|Konjunktiivne normaalkuju (CNF)]]&lt;br /&gt;
# [[Iti0210ex9|Tinglik tõenäosus]]&lt;br /&gt;
# [[Iti0210ex91|Bayesi valem]]&lt;br /&gt;
# [[Iti0210ex12|Tehisneuron]]&lt;br /&gt;
&amp;lt;!--# [[Iti0210ex10|Bayesi võrk]]&lt;br /&gt;
# [[Iti0210ex11|Otsustuspuu]]&lt;br /&gt;
# [[Iti0210ex13|Lineaarne regressioon]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Eksam ==&lt;br /&gt;
&lt;br /&gt;
Aine läbimiseks on vaja saada kodutööde ja eksami peale kokku min. 50 punkti, &amp;quot;5&amp;quot; saamiseks 90 punkti. Rohkem infot [[Iti0210juhend2021| juhendis]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Ajad (ära unusta ÕIS-is registreerida):&lt;br /&gt;
&lt;br /&gt;
* K 20. mai 2020, 10.00-11.00  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* K 27. mai 2020, 10.00-11.00  (moodle quiz, piiramatult kohti)&lt;br /&gt;
* K 3. juuni 2020, 10.00-13.00   (suuline eksam/TalTech MS Teams, 12 kohta)&lt;br /&gt;
&lt;br /&gt;
Suuline eksam toimub [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 MS Teams] keskkonnas, kuhu tuleb sisse logida uni-id kontoga. Kontrolli enne eksamit, et sisse logimine õnnestub ja sul on ühendus koos videoga.&lt;br /&gt;
&lt;br /&gt;
Moodle quiz eksami ajal saab [https://teams.microsoft.com/l/team/19%3ad0f9f3a7317949f6a187a24e509c8cd8%40thread.tacv2/conversations?groupId=4942e493-ce92-4002-92e4-d9a7988dbb16&amp;amp;tenantId=3efd4d88-9b88-4fc9-b6c0-c7ca50f1db57 Teamsi] keskkonnas küsida chatis küsimusi, aga selle kasutamine pole kohustuslik.&lt;br /&gt;
&lt;br /&gt;
[[Iti0210ex2020info|Eksami kord]] &#039;&#039;&#039;&amp;lt;-- iga üliõpilane peab teadma&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Iti0210res2020|Eksamieeldused täidetud]] (18. mai seisuga).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== Ettevalmistus ===&lt;br /&gt;
&lt;br /&gt;
[[Kordamisküsimused]]&lt;br /&gt;
&lt;br /&gt;
Mõned kirjalike eksamite näited teistelt tehisintellekti ainetelt: [http://pages.cs.wisc.edu/~jerryzhu/cs540/handouts/f17fs.pdf 1], [http://pages.cs.wisc.edu/~shavlik/cs540.html#previous-exams 2], [http://dijkstra.cs.ttu.ee/~juhan/iti8560/exam_2013_sample.pdf 3]. Neid võib vaadata, et saada ettekujutust, milliseid teadmisi sarnaseid kursuseid lõpetavatelt üliõpilastelt oodatakse.&amp;lt;!-- 2020 kevadel tuleb eksami formaat erinev.&lt;br /&gt;
&lt;br /&gt;
Teemad kattuvad meie kursusega osaliselt (s.t. vaata näiteid pigem formaadi kui sisuga tutvumiseks).&lt;br /&gt;
&lt;br /&gt;
Eksam on ilma materjalideta, aga võid kaasa võtta ühe A4 lehe märkmetega. Kestus 2 tundi.&lt;br /&gt;
&lt;br /&gt;
[https://www.elementsofai.com/ Kordamiseks ja harjutamiseks võid teha sellest kursusest osad 2,3,4]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Iti0210]]&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
</feed>