====== Knowledge Representation and Reasoning ====== //Systems Modelling and Data Analysis + Engineering of Intelligent Systems// **Lectures: Tuesdays, C-2, Room 429, 15:30-17:00** ===== Lectures 2019 ===== - 02-26: CSP (MSL) - 03-05: CSP (MSL) - 03-12: CSP (MSL) - 03-19: CSP (MSL) - 03-26: KRR introduction (GJN) - 04-02: LPP (GJN) - 04-09: Planning (MSL) - 04-16: Problog (MSL) - 05-07: KR methods overview (GJN) - 05-14: RBS (GJN) - 05-21: LOD (GJN) - 05-28: DL (GJN) - 06-04: Wrap up and summary exam - zeroeth term ==== Useful Links ==== * [[http://www.hakank.org/|Hakank Links]] * [[http://www.minizinc.org/|MiniZinc]] * [[http://www.hakank.org/minizinc/|Hakank on MiniZinc]] * [[http://www.swi-prolog.org/|SWI-Prolog]] * [[http://www.cs.ubc.ca/~murphyk/Bayes/bnintro.html|Bayes Networks]] * [[https://dtai.cs.kuleuven.be/problog/|Problog]] * [[https://potassco.org/|ASP: Answer Set Programming]] * [[http://videolectures.net/acai05_berthold_fl/|Fuzzy Logic]] * [[http://www.francky.me/doc/course/fuzzy_logic.pdf|Introduction to Fuzzy Logic]] * [[http://dl.kr.org/courses.html|Description Logics]] ==== Background Material ==== * [[http://artint.info/|AI Book]] * [[http://ai.ia.agh.edu.pl/wiki/pl:prolog:start|Prolog - page with external links]] * [[http://web.stanford.edu/class/cs221/|CS221: Artificial Intelligence]] * [[http://web.stanford.edu/class/cs227/|CS227: Knowledge Representation and Reasoning]] * [[http://www.inzynieriawiedzy.pl/|KRR: PL]] ===== Laboratories ===== == Constraint Satisfaction and Discrete Optimization == The following classes will focus on modelling of discrete optimization and constraint satisfaction problems. Student will learn how to represent correctly different problems using constraint programming techniques. * Lab 1. [[en:dydaktyka:csp:intro|Constraint Programming: 101]] * Lab 2.[[en:dydaktyka:csp:lab1|Constraint Programming: Basic Problems]] * Lab 3. [[en:dydaktyka:csp:lab2|Constraint Programming: Basic Techniques]] * Lab 4. [[en:dydaktyka:csp:lab3|Constraint Programming: Search Modeling]] * Labs 5-6. [[en:dydaktyka:csp:port_scheduling|Constraint Programming: Real Life Problem]] == Automated Planning == The following classes will cover automated planning problems. Student will learn how to represent planning problems using constraint programming and dedicated tools. - [[en:dydaktyka:planning:intro|Automated Planning: 101]] - [[en:dydaktyka:planning:pddl|Automated Planning: PDDL]] - [[en:dydaktyka:planning:pddl2|Automated Planning: Fluents]] == Probabilistic Programming == This part of the course will present probabilistic programming --- a new programming paradigm meant to model domains uncertainty and imperfect knowledge. - [[en:dydaktyka:problog:intro|Probabilistic Programming: 101]] - [[en:dydaktyka:problog:lab1|Probabilistic Programming: Diagnosis and Prediction]] - [[en:dydaktyka:problog:lab2|Probabilistic Programming: Probabilistic Graphs and Decision Theory]] ==== Projects ==== There are three projects to choose from: - fox-geese-corn --- simple planning problem. - gangs-wars --- problem about optimal ordering of tasks. Quite simple, but it's very difficult to find the optimal solution. - production-planning --- simplified problem of scheduling production at the factory. All the project are available via [[https://gitlab.com/agh-krr/2018-2019|gitlab]]. Instructions, how to do the projects are included in the ''README.md'' files. The deadline is simply last class in the semester. While grading I will check: - if the model is correct; - if the model allows to quickly find a good solution; - if the model is comprehensible; - what was your work hygiene (how often did you commit, did you contact in case of a problem, etc.)