PA163 Programování s omezujícími podmínkami

Fakulta informatiky
podzim 2020
Rozsah
2/1. 3 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. Mgr. Hana Rudová, Ph.D. (přednášející)
Mgr. Vojtěch Sassmann (pomocník)
Garance
doc. Mgr. Hana Rudová, Ph.D.
Katedra počítačových systémů a komunikací – Fakulta informatiky
Dodavatelské pracoviště: Katedra počítačových systémů a komunikací – Fakulta informatiky
Rozvrh
St 10:00–11:50 A218
  • Rozvrh seminárních/paralelních skupin:
PA163/01: každý lichý čtvrtek 14:00–15:50 A215, H. Rudová
PA163/02: každý sudý čtvrtek 14:00–15:50 A215, H. Rudová
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 52 mateřských oborů, zobrazit
Cíle předmětu
Předmět zpřístupní informace o programování s omezujícími podmínkami, o modelování problémů pomocí omezujících podmínek obecně i prakticky v programovacím jazyce, o propagačních algoritmech a o a prohledávacích algoritmech pro problémy splňování podmínek.
Výstupy z učení
Absolvent bude vědět, jakým způsobem používat deklarativní přístup k řešení problémů prostřednictvím programování s omezujícími podmínkami.
Absolvent bude rozumět algoritmům používaným při řešení problémů prostřednictvím omezujících podmínek tak, aby mohl lépe navrhnout vhodný deklarativní model a kombinovat ho s řídícími strategiemi. Absolvent se zároveň naučí různé typy propagačních a prohledávacích algoritmů.
Absolvent bude umět řešit základní problémy pomocí programování s omezujícími podmínkami prostřednictvím jazyka OPL (Optimization Programming Language) z IBM CPLEX CP Optimizer.
Osnova
  • Problém splňování podmínek. Úvod do modelování problémů.
  • Algoritmy a konzistence: hranová, po cestě. Řešení nebinárních podmínek: k-konzistence, obecná hranová konzistence, konzistence mezí, globální podmínky. Směrové varianty, šířka grafu podmínek a polynomiální problémy.
  • Stromové prohledávání: backtracking, pohled dopředu, pohled zpět, neúplné algoritmy. Lokální prohledávání.
  • Optimalizační a příliš podmíněné problémy: přístupy k řešení a algoritmy.
  • Modelování a využití v reálných aplikacích. Programování pomocí programovacího jazyka OPL v IBM ILOG CP Optimizer.
Literatura
  • DECHTER, Rina. Constraint processing. San Francisco: Morgan Kaufmann Publishers, 2003, xx, 481 s. ISBN 1-55860-890-7. info
  • TSANG, Edward (author), FRUEHWIRTH, Thom (editor). Foundations of constraint satisfaction. Books On Demand, 2014.
Výukové metody
Video a průsvitky jsou k dispozici ke každé přednášce, videokonference je v době přednášky s diskuzí k předem zaslaným otázkám i dalším dotazům. Výuka přednášek je zejména orientována na výklad algoritmů a jejich praktické použití pro řešení problémů v oblasti programování s omezujícími podmínkami. Výuka cvičení probíhá online u počítačů, kde je kladen hlavní důraz na implementaci OPL programů v IBM ILOG CP Optimizer, a to buď samostatně nebo často modifikací existujícího kódu. Řešení všech příkladů realizovaných na cvičení podobně jako řešení domácích úkolů ze cvičení je vystaveno na webu předmětu.
Metody hodnocení
Hodnocení předmětu je realizováné na základě online zkoušení, domácích úkolů a bonusových bodů a za aktivní účast: A více než 90, B 89-80, C 79-70, D 69-60, E 59-50.
Za online zkoušení je možné získat až 80 bodů, pro úspěšné absolvování předmětu je nezbytné získat více než 40 z 80 bodů. Řádný termín zkoušky bude písemný a povinný pro všechny studenty. Opravné termíny zkoušky budou ve formě ústního online zkoušení.
V průběhu semestru budou zadány dvě domácí úlohy. Za jednu domácí úlohu lze získat až 10 bodů. Každý student je povinen získat za domácí úlohy alespoň 8 bodů z celkového počtu 20 bodů.
Kromě těchto bodů může každý student získat až 2 bonusové body za aktivitu na jedné přednášce (1 bod: reakce na více jednoduchých dotazů nebo dotazy studentky/a na vyjasnění látky, reakce na jeden složitější dotaz; 2 body: větší interakce), tj. lze získat cca 24 dalších bonusových bodů dle počtu přednášek.
Nejpozději den po výuce cvičení jsou studenti povinni odevzdat kódy řešených příkladů do odevzdávárny (byť třeba v některých případech ne úplně funkční). Je tolerováno, pokud jsou jedenkrát kódy odevzdány dodatečně e-mailem. Při dvou pozdních odevzdáních je nutné vypracovat řešení dodatečných příkladů. Více než dvě pozdní odevzdání nejsou pro úspěšné ukončení předmětu možné.
Navazující předměty
Informace učitele
http://is.muni.cz/el/1433/podzim2020/PA163/index.qwarp
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích podzim 2003, podzim 2004, podzim 2005, podzim 2006, podzim 2007, podzim 2008, podzim 2009, podzim 2010, podzim 2011, podzim 2012, podzim 2013, podzim 2014, podzim 2015, podzim 2016, podzim 2017, podzim 2018, podzim 2019, podzim 2021, podzim 2022, podzim 2023, podzim 2024.