Erinevus lehekülje "Loogiline programmeerimine" redaktsioonide vahel
Mine navigeerimisribale
Mine otsikasti
(ei näidata 2 kasutaja 23 vahepealset redaktsiooni) | |||
77. rida: | 77. rida: | ||
* [[Media:ITI0211_Loeng_1_2021.pdf|Loeng 1]] (30.08.2021): Mis on loogiline programmeerimine? | * [[Media:ITI0211_Loeng_1_2021.pdf|Loeng 1]] (30.08.2021): Mis on loogiline programmeerimine? | ||
* [[Media:ITI0021_Loeng_2_2021.pdf|Loeng 2]] (07.09.2021): Loogilise programmeerimise keel Prolog | * [[Media:ITI0021_Loeng_2_2021.pdf|Loeng 2]] (07.09.2021): Loogilise programmeerimise keel Prolog | ||
− | * [[Media: | + | * [[Media:ITI0211_Loeng_3_2021_List_operations.pdf|Loeng 3]] (14.09.2021): Loogilise programmeerimise andmestruktuurid - listid ja listioperatsioonid |
− | * [[Media: | + | * [[Media:ITI0211_Loeng_4_2021_LP.pdf|Loeng 4]] (21.09.2021): Loogilise programmeerimise alused |
− | * [[Media: | + | * [[Media:ITI0021_Loeng_5_2021.pdf|Loeng 5]] (28.09.2021): Loogilise programmi täitmise juhtimine |
− | * [[Media:ITI0211 Loogiline programmeerimine Harjutus 1.pdf|Loengu ajal ( | + | * [[Media:ITI0211 Loogiline programmeerimine Harjutus 1.pdf|Loengu ajal (05.10.2021) harjutus, ettevalmistus kontrolltööks]] |
− | * Loengu ajal ( | + | * Loengu ajal (12.10.2021): <span style="color: red; font-weight: bold;"> Kontrolltöö I (Moodle's)</span> |
− | * [[Media: | + | * [[Media:ITI0211_Loeng_6_2021.pdf|Loeng 6]] (19.10.2021): Loogiline programmeerimine ja teadmusstruktuurid |
− | * [[Media: | + | * [[Media:ITI0211_Loeng_7_2021_algebra_prg_.pdf|Loeng 7]] (26.10.2021): Hulgateooria ja algebra mõistete kasutamine loogilises programmeerimises |
− | * [[Media:ITI0211_Loeng_8_2020_DCG.pdf|Loeng 8]] ( | + | * [[Media:ITI0211_Loeng_8_2020_DCG.pdf|Loeng 8]] (02.11.2021): DCG grammatika reeglid ja loomuliku keele parsimine (lisamaterjal [http://www.learnprolognow.org/slides/official/LPNchapter7.pdf] ja[http://www.learnprolognow.org/slides/official/LPNchapter8.pdf]) |
− | * [[Media: | + | * [[Media:ITI0211_Loeng_9_2021CLP.pdf|Loeng 9]] (09.11.2021): Kitsendustega loogiline programmeerimine |
− | * [[Media: | + | * [[Media:ITI0211_Loeng_10a_2021search.pdf|Loeng 10]] (16.11.2021): Otsingustrateegiate programmeerimine (uuendatud 21.11.21) |
− | * [[Media: | + | ** Link videoloengule Teamsis: https://livettu.sharepoint.com/sites/LoogilineprogrammeerimineITI2011/Shared%20Documents/General/Recordings/Meeting%20in%20_General_-20211121_174931-Meeting%20Recording.mp4?web=1 |
− | * Loengu ajal ( | + | * [[Media:ITI0211_Harjutus_Testiks_2.pdf|Loengu ajal (23.11.2021) harjutus, ettevalmistus kontrolltööks II]] |
− | * Loengu ajal ( | + | * Loengu ajal (30.11.2021) <span style="color: red; font-weight: bold;"> Kontrolltöö II </span> |
− | * Loengu ajal ( | + | * Loengu ajal (07.12.2021) <span style="color: red; font-weight: bold;"> Kontrolltöö I - järeltöö </span> |
+ | * Loengu ajal (14.12.2021): <span style="color: red; font-weight: bold;"> Kontrolltöö II - järeltöö</span> | ||
<!-- * [[Media:ITI0021_Loeng_2_1_2015.pdf|Loeng 2.1]]: Loogika alusmõisted: lauseloogika | <!-- * [[Media:ITI0021_Loeng_2_1_2015.pdf|Loeng 2.1]]: Loogika alusmõisted: lauseloogika | ||
151. rida: | 152. rida: | ||
==Praktikumid== | ==Praktikumid== | ||
+ | |||
+ | Info ja jooksvad tulemused asuvad Moodles [https://moodle.taltech.ee/course/view.php?id=31039 ITI0211 "Loogiline programmeerimine (sügis 2021)"] | ||
+ | |||
Praktikumides kasutame SWI-Prologi [http://www.swi-prolog.org/ SWI-Prolog]. | Praktikumides kasutame SWI-Prologi [http://www.swi-prolog.org/ SWI-Prolog]. | ||
+ | |||
+ | <!-- | ||
Eclipse plugin: [http://sewiki.iai.uni-bonn.de/research/pdt/docs/start Prolog Development Tool - PDT]. | Eclipse plugin: [http://sewiki.iai.uni-bonn.de/research/pdt/docs/start Prolog Development Tool - PDT]. | ||
157. rida: | 163. rida: | ||
* Kasutusjuhend: [http://sewiki.iai.uni-bonn.de/research/pdt/docs/getting_started] | * Kasutusjuhend: [http://sewiki.iai.uni-bonn.de/research/pdt/docs/getting_started] | ||
− | |||
GIT URI: https://teie-ttu-uni-id-kasutajanimi@git.ttu.ee/ained/iti0021/teie-ttu-uni-id-kasutajanimi.git (NB! see link brauseris ei tööta!). NB! Uni-ID kasutajanimes peavad olema '''KÕIK VÄIKESED TÄHED!''' | GIT URI: https://teie-ttu-uni-id-kasutajanimi@git.ttu.ee/ained/iti0021/teie-ttu-uni-id-kasutajanimi.git (NB! see link brauseris ei tööta!). NB! Uni-ID kasutajanimes peavad olema '''KÕIK VÄIKESED TÄHED!''' | ||
[[ITI0011:git|Giti juhend Eclipse'is kasutamiseks]] | [[ITI0011:git|Giti juhend Eclipse'is kasutamiseks]] | ||
− | |||
'''GIT''' | '''GIT''' | ||
169. rida: | 173. rida: | ||
https://gitlab.cs.ttu.ee/dashboard/projects -> "New Project". Visibility las olla "private". | https://gitlab.cs.ttu.ee/dashboard/projects -> "New Project". Visibility las olla "private". | ||
− | |||
Kui projekt tehtud, siis mine üleval menüüst "Members". | Kui projekt tehtud, siis mine üleval menüüst "Members". | ||
Lisa kasutajatena 'hodor-live' ja 'Evelin.Halling'. Määra "access level" "Developer". | Lisa kasutajatena 'hodor-live' ja 'Evelin.Halling'. Määra "access level" "Developer". | ||
180. rida: | 183. rida: | ||
Võta maha linnuke "Enable SSL verification" | Võta maha linnuke "Enable SSL verification" | ||
Nüüd nupp "Add webhook" | Nüüd nupp "Add webhook" | ||
− | |||
Praktikumi ülesanded tuleb laadida mainitud tähtajaks git'i vastavasse kausta ('''PRxx''', kus xx on praktikumi number [00, 01, 02, 03, 04, jen.]). Kaustas peab olema fail nimega '''prax0x.pl''' (kus x on praktikumi number [0, 1, 2, 3, 4, jne.]). Kaustas võib olla ka teisi faile, mis imporditakse prax0x.pl poolt. | Praktikumi ülesanded tuleb laadida mainitud tähtajaks git'i vastavasse kausta ('''PRxx''', kus xx on praktikumi number [00, 01, 02, 03, 04, jen.]). Kaustas peab olema fail nimega '''prax0x.pl''' (kus x on praktikumi number [0, 1, 2, 3, 4, jne.]). Kaustas võib olla ka teisi faile, mis imporditakse prax0x.pl poolt. | ||
205. rida: | 207. rida: | ||
** [[Media:ITI0211_Praktikum_PR09_juhend_2019.pdf|Praktikumi PR09 juhend]] | ** [[Media:ITI0211_Praktikum_PR09_juhend_2019.pdf|Praktikumi PR09 juhend]] | ||
* Praktikum 10: Faktide hulgal otsingu programmeerimine (PR10) | * Praktikum 10: Faktide hulgal otsingu programmeerimine (PR10) | ||
− | <!-- ** [[Media:ITI0021_Praktikum_PR10_juhend_2016.pdf|Praktikumi PR10 juhend]] | + | --> |
+ | |||
+ | <!-- ** [[Media:ITI0021_Praktikum_PR10_juhend_2016.pdf|Praktikumi PR10 juhend]] | ||
** Näidismaterjal: [[Media:ITI0021_Praktikum_9_kabe_2015.pl|Otsing kabe näitel]] | ** Näidismaterjal: [[Media:ITI0021_Praktikum_9_kabe_2015.pl|Otsing kabe näitel]] | ||
** Tuleb implementeerida predikaadid 'vota' ja 'tee_kaik' | ** Tuleb implementeerida predikaadid 'vota' ja 'tee_kaik' | ||
+ | --> | ||
+ | |||
<!-- | <!-- | ||
Viimane redaktsioon: 22. november 2021, kell 17:46
Ainekood: ITI0211
Õppeaine maht: 6 EAP
Kontrollivorm: Hindeline arvestus
Link: http://courses.cs.ttu.ee/pages/ITI0021
Õppejõud: prof. Jüri Vain
Kontakt: juri.vain ätt ttu.ee, ICT-418, Vastuvõtu aeg: TBA eelneval kokkuleppel e-maili kaudu
Kursus varasematel aastatel: Sügis 2020
Sügis 2021
- Loeng: (õppejõud prof. Jüri Vain)
- Teisipäeval kl. 10:00 - 11:30 ruumis NRG-226
- Praktikumid: (õppejõud: Evelin Halling)
- Teisipäeval kl. 16:00 - 17:30 ICT-401
Hindamiskriteeriumid
- HINDAMISKRITEERIUMID vt siit
- Järeltööd testidele toimuvad semestri viimaste loengute aegadel
- TBA järeltööd kontrolltööle 1
- TBA järeltööd kontrolltööle 2
- Järeltööde sooritamise tingimused:
- Esimesel katsel tuleb teha järeltööd konkreetselt sellele tööle, mille tulemus oli alla 51%.
- Kui ka järeltöö ebaõnnestub, tuleb sooritada koondtöö kursuse kogu materjali peale.
- Arvestuse hinnet tõstab see, kui kodutööna valminud kabeprogramm saavutab viimase praktikumi ajal toimuval võistlusel auhinnalise koha: I koht +3 (mod 5) palli; II koht +2(mod 5) palli; III koht +1(mod 5) pall.
- Testide ja praktikumide jooksvad tulemused asuvad Moodles (ained.ttu.ee)
Loengute slaidid
- NB! 2021. aasta loengute slaididel ja loengukavas võib esineda muudatusi võrreldes 2020. aasta slaididega
- Loeng 1 (30.08.2021): Mis on loogiline programmeerimine?
- Loeng 2 (07.09.2021): Loogilise programmeerimise keel Prolog
- Loeng 3 (14.09.2021): Loogilise programmeerimise andmestruktuurid - listid ja listioperatsioonid
- Loeng 4 (21.09.2021): Loogilise programmeerimise alused
- Loeng 5 (28.09.2021): Loogilise programmi täitmise juhtimine
- Loengu ajal (05.10.2021) harjutus, ettevalmistus kontrolltööks
- Loengu ajal (12.10.2021): Kontrolltöö I (Moodle's)
- Loeng 6 (19.10.2021): Loogiline programmeerimine ja teadmusstruktuurid
- Loeng 7 (26.10.2021): Hulgateooria ja algebra mõistete kasutamine loogilises programmeerimises
- Loeng 8 (02.11.2021): DCG grammatika reeglid ja loomuliku keele parsimine (lisamaterjal [1] ja[2])
- Loeng 9 (09.11.2021): Kitsendustega loogiline programmeerimine
- Loeng 10 (16.11.2021): Otsingustrateegiate programmeerimine (uuendatud 21.11.21)
- Loengu ajal (23.11.2021) harjutus, ettevalmistus kontrolltööks II
- Loengu ajal (30.11.2021) Kontrolltöö II
- Loengu ajal (07.12.2021) Kontrolltöö I - järeltöö
- Loengu ajal (14.12.2021): Kontrolltöö II - järeltöö
Videoloengud
Praktikumid
Info ja jooksvad tulemused asuvad Moodles ITI0211 "Loogiline programmeerimine (sügis 2021)"
Praktikumides kasutame SWI-Prologi SWI-Prolog.
Kodutöö
- Kodutööks on kabeprogrammi programmeerimine Prologis
- Kood laadida git-i salve: KABE
- Kabe
- Tööülesande kirjeldus
- Mängu üldkirjeldus: [3]
- Ametlikud võistlusreeglid:[4]
- Graafiline Arbiiter:
- Programm Arbiiter juhib mängu.
- Arbiiter UTF-8 kodeeringus:Arbiiter (Prolog32)
- Arbiiter UTF-8 kodeeringus:Arbiiter (Prolog64)
- Arbiiter turniiriks:Arbiiter (Prolog64)
- Arbiiter arendus:Arbiiter (Arendus)
- Programm Arbiiter juhib mängu.
Kodutöö esitamise tähtaeg on eelviimane ja viimane praktikum, mil toimub kabeturniir (programmikood panna moodle-sse)
Lisamaterjalid
- Logic Programming in Python
- Learn Prolog Now
- Web Testing with Logic Programming - Daniel Gregoire
- Uut lugemist Prologis ja selle rakendustest!
- Tõnu Tamme. Loogilise programmeerimise meetod. Tartu, 2003. PDF formaadis raamat Tartu Ülikooli digikogus
- Mathias Schilling Introduction to logic programming with Prolog