Erinevus lehekülje "Loogiline programmeerimine" redaktsioonide vahel
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:ITI0211_Loeng_3_2020_List_operations.pdf|Loeng 3]] ( | + | * [[Media:ITI0211_Loeng_3_2020_List_operations.pdf|Loeng 3]] (14.09.2021): Loogilise programmeerimise andmestruktuurid - listid ja listioperatsioonid |
− | * [[Media:ITI0211_Loeng_3__2019_LP.pdf|Loeng 4]] ( | + | * [[Media:ITI0211_Loeng_3__2019_LP.pdf|Loeng 4]] (21.09.2021): Loogilise programmeerimise alused |
− | * [[Media:ITI0021_Loeng_7_2018.pdf|Loeng 5]] ( | + | * [[Media:ITI0021_Loeng_7_2018.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 (12.10.2021): <span style="color: red; font-weight: bold;"> Kontrolltöö I </span> | * Loengu ajal (12.10.2021): <span style="color: red; font-weight: bold;"> Kontrolltöö I </span> | ||
− | * [[Media:ITI0211_Loeng_6_2020.pdf|Loeng 6]] ( | + | * [[Media:ITI0211_Loeng_6_2020.pdf|Loeng 6]] (19.10.2021): Loogiline programmeerimine ja teadmusstruktuurid |
− | * [[Media:ITI0211_Loeng_7_2020_algebra_prg_.pdf|Loeng 7]] ( | + | * [[Media:ITI0211_Loeng_7_2020_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:ITI0211_Loeng_9_2020CLP.pdf|Loeng 9]] ( | + | * [[Media:ITI0211_Loeng_9_2020CLP.pdf|Loeng 9]] (09.11.2021): Kitsendustega loogiline programmeerimine |
− | * [[Media:ITI0021_Loeng_10_2020search.pdf|Loeng 10]] ( | + | * [[Media:ITI0021_Loeng_10_2020search.pdf|Loeng 10]] (16.11.2021): Otsingustrateegiate programmeerimine |
− | * [[Media:ITI0021_Loogiline_programmeerimine_Harjutus_2.pdf|Loengu ajal ( | + | * [[Media:ITI0021_Loogiline_programmeerimine_Harjutus_2.pdf|Loengu ajal (23.11.2021) harjutus, ettevalmistus kontrolltööks II]] |
* Loengu ajal (30.11.2021) <span style="color: red; font-weight: bold;"> Kontrolltöö II </span> | * Loengu ajal (30.11.2021) <span style="color: red; font-weight: bold;"> Kontrolltöö II </span> | ||
* Loengu ajal (07.12.2021) <span style="color: red; font-weight: bold;"> Järeltööd </span> | * Loengu ajal (07.12.2021) <span style="color: red; font-weight: bold;"> Järeltööd </span> |
Redaktsioon: 7. september 2021, kell 06:21
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
- 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
- Loengu ajal (23.11.2021) harjutus, ettevalmistus kontrolltööks II
- Loengu ajal (30.11.2021) Kontrolltöö II
- Loengu ajal (07.12.2021) Järeltööd
- Loengu ajal (14.12.2021): Kabe turniir
Videoloengud
Praktikumid
Praktikumides kasutame SWI-Prologi SWI-Prolog.
Eclipse plugin: Prolog Development Tool - PDT.
GIT
Mine aadressile https://gitlab.cs.ttu.ee/ ja logi sisse oma UNI-ID kasutajanimega.
Loo endale projekt nimega "iti0211-2019" (NB!! Väikesed tähed). https://gitlab.cs.ttu.ee/dashboard/projects -> "New Project". Visibility las olla "private".
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.
- Praktikum 0: Tutvumine loogilise programmeerimise keskkonnaga (PR00)
- SWI-Prolog
- Praktikumi 1 juhend
- Näidismaterjal: Objektid ja nende omadused
- Praktikum 1: Prologi teadmusbaasi koostamine (PR01)
- Praktikum 2: Rekursioon (PR02)
- Praktikum 3: Listid (PR03)
- Praktikum 4: Reisi leidmine I (PR04)
- Praktikum 5: Reisi leidmine II (PR05)
- Praktikum 6&7: Reisi leidmine III (PR06)
- Praktikum 8: Semantiline Võrk (PR08)
- Praktikum 9: Grammatika (PR09)
- Praktikum 10: Faktide hulgal otsingu programmeerimine (PR10)
- Näidismaterjal: Otsing kabe näitel
- Tuleb implementeerida predikaadid 'vota' ja 'tee_kaik'
Kodutöö
- Kodutööks on kabeprogrammi programmeerimine Prologis
- Kood laadida git-i salve: KABE
- Kabe
- Tööülesande kirjeldus
- Mängu üldkirjeldus: [5]
- Ametlikud võistlusreeglid:[6]
- 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