====== Constraint Programming/Programowanie z Ograniczeniami 2023/2024-winter [CP-CS/PzO-Inf] ====== - **Introduction to Constraint Programming. Syllabus. Basic Examples. CP as Problem-Solving. Introduction to MiniZinc.** [3.10.2023-ISI;ali][2.10.2023-WIET; e-lerning; 16.10.2023] - **Introduction to Constraint Programming. Backtracking Search. Deduction and Abduction. Constraint Propagation. Basic Problem-Solving in MiniZinc and Prolog**. [10.10.2023;ali][30.10.2023-WIET;ali] - **Introduction to MiniZinc. Basic Examples. Constraint Satisfaction and Optimization with Constraints. Production Planning. SAT as CP.** [17.10.2023-ISI;ali][13.11.2023-WIET;ali] - **E-Learning:** [[https://www.youtube.com/watch?v=EcL8zAMSbBo&t=984s|Intro to CP]] [[http://artint.info/3e/html/ArtInt3e.Ch4.html|Reasoning with Constraints]] [24.10.2023-ISI;selection by ali] - **E-Learning:** Let's learn from the best [[https://www.youtube.com/watch?v=lQi3b-sxt1s&list=PLcByDTr7vRTb9mLAQyO27-Q1JrWYVZHfy|MiniZinc by Peter Stuckey]] [31.10.2023-ISI;recommended by ali] - **MiniZinc. More Complex Examples. Data Structures. Functions and Predicates. Info on Projects!** [7.11.2023-ISI;ali] [27.11.2023-WIET;mslaz] - **Some Theory: Constraint Propagation Algorithms. Forward Checking. Arc Consistency.** [14.11.2023-ISI;ali] [11.12.2023-WIET;ali] - **Problem reduction and exploring problem structure. Algorithms: AC-3, GAC. Constraint Logic Programming: Prolog + CLP(FD). Picat. Logica.** [8.01.2024-WIET;ali] ---- ===== Constraint Programming/Programowanie z ograniczeniami 2022 [PzO/CP]===== - Uczelniana Inauguracja Roku Akademickiego. [-PzO/4.10.2022 CP] - **Introduction to Constraint Programming. Introduction to MiniZinc.** [10/18.10.2022; pages 1-24; ALi] {{ :pl:dydaktyka:cp:constraint_programming_2020-1.pdf |MiniZinc Intro}} - **Introduction to MIniZinc. Basic Examples. Constraint Satisfaction and Optimization. SAT as CP, **[24.10.2022/15.11.2022; ALi] - **MiniZinc. More Complex Examples.** [7.11.2022/29.11.2022; Ali] - **MiniZinc. Further Examples.** [21.11.2022/13.12.2022] - **MiniZinc. Towards practical applications.** [5.12.2022] {{ :pl:dydaktyka:cp:examples-basic-5-12-2022.zip |Codes for the lecture}} - Constraint Programming. A Look at the Theoretical Foundations. Constraint Propagation and Efficiency Issues. [19.12.2022/10.01.2023] - Constraint Logic Programming. Prolog. Picat. [2.01.2023-godziny rektorskie/24.01.2023] ---- Selected support: * {{ :en:dydaktyka:krr:master-clp-est.pdf |Constraint Programming: Theoretical Foundations}} * **Support for Prolog:** [[pl:dydaktyka:pp:start|Lectures on Prolog [slides 2021/2022] + Sets of Examples + interesting links]] * [[https://www.swi-prolog.org/man/clpfd.html|Prolog: clp(fd)]] * [[http://www.picat-lang.org/|Picat]] * [[https://artint.info/2e/html/ArtInt2e.Ch4.html|Reasoning with Constraints]] * [[https://en.wikipedia.org/wiki/Local_consistency|Constraint Propagation Algorithms]] * [[http://www.constraint.org/en/tools/|Constraint Programming Tools]] ===== Programowanie z ograniczeniami 2021 ===== - **Wprowadzenie do programowania z ograniczeniami. Wprowadzenie do systemu MiniZinc.** [5.10.2021;pages 1-24; ALi] {{ :pl:dydaktyka:cp:constraint_programming_2020-1.pdf |MiniZinc Intro}} - **Przykłady programowania w MiniZinc. Deklarowanie parametrów, zmiennych i ograniczeń.** [19.10.2021;pages 25-...; ALi] {{ :pl:dydaktyka:cp:minizinc-examples-13-10-2020.zip |Przykłady do wykładu 19.10.2021}} - **MiniZinc. Poszukiwanie rozwiązania dopuszczalnego i optymalnego. Elementarne przykłady logiczne (SAT, Logical Consequence) i arytmetyczne (Money-Change; SEND+MOST=MONEY).** [2.11.2021; ALi] - **MiniZinc - kontynuacja. Tablice i zbiory. Predykaty, funkcje, procedury lokalne. Przykłady zastosowań.** [16.11.2021; ALi] - E-Learning: MiniZinc.: dokończenie. Podstawy teoretyczne programowania z ograniczeniami. Algorytmy propagacji ograniczeń. [30.11.2021] - **ZMIANA: Spotkanie na MS TEAMS - prowadzi mgr Mateusz Ślażyński: Wprowadzenie do projektów** [14.12.2021]; MSl] - Podstawy teoretyczne programowania z ograniczeniami. Algorytmy propagacji ograniczeń. Prolog+biblioteka clp(fd), Picat, Python+Constraints, Python+Numberjack [11.01.2022; ALi] - Wykład on-line na Upel/Moodle: 9:35-11:05 ==== Programowanie z ograniczeniami - 2020 ==== - **Wprowadzenie do programowania z ograniczeniami. Wprowadzenie do systemu MiniZinc.** [6.10.2020;pages 1-28; ali] {{ :pl:dydaktyka:cp:constraint_programming_2020-1.pdf |MiniZinc Intro}} - **Wprowadzenie do systemu MiniZinc. Elementarne przykłady logiczne (SAT,Logical Consequence) i arytmetyczne (Money-Change; SEND+MORE=MONEY).** [13.10.2020; pages 28-34; ali] {{ :pl:dydaktyka:cp:minizinc-examples-13-10-2020.zip |Przykłady z wykładu 13.10.2020}} - **Wprowadzenie do MiniZinc. Constraint Satisfaction and Optimization Problems. Selected more advanced language constructions.** [20.10.2020; ali] {{ :pl:dydaktyka:cp:minizinc-examples-20-10-2020.zip | Przykłady z wykładu 20.10.2020}} - **Wprowadzenie do MiniZinc - dokończenie. Constraint Satisfaction and Optimization Problems. Selected more advanced language constructions.** [27.10.2020; ali] {{ :pl:dydaktyka:cp:minizin-examples-27-10-2020.zip |Przykłady z wykładu 27-10-2020]}} - **MiniZinc - dokończenie; wybrane przykłady zastosowania. TSP+Path. Wprowadzenie do teorii CP.** [3.11.2020; ali] - **Podstawy teoretyczne CP. Modelowanie i propagacja ograniczeń. Wprowadzenie do Prologu i biblioteki clp(fd).** [17.11.2020; ali]{{ :pl:dydaktyka:cp:master-clp-est.pdf |Prezentacja: CP- podstawy teoretyczne}} - E-learning: Biblioteka clp(fd) w Prologu. [24.11.2020] {{ :pl:dydaktyka:cp:clpfd-prezentacja.pdf |Prezentacja clp(fd) - materiał pomocniczy}} ---- __Wybrane linki i materiały:__ * [[https://en.wikipedia.org/wiki/Constraint_programming|Constraint Programming: Wikipedia]] * [[http://www.minizinc.org|MiniZinc Home Page]] * [[http://hakank.org/minizinc/|MiniZinc Examples by Hakank]] * {{ :pl:dydaktyka:cp:praca_inzynierska_-_lukasz_sumara-wersja-zlozona.pdf |MiniZinc: Praca dyplomowa}} * [[http://ktiml.mff.cuni.cz/~bartak/constraints/|Constraint Programming by Roman BARTÁK]] * [[http://sofdem.github.io/gccat/gccat/sec5.html|Global Constraint Calalog]] ---- __Tools:__ * [[http://www.constraint.org/en/tools/|Constraint Programming Tools]] ---- __Laboratoria:__ Repozytorium z materiałami do laboratoriów jest dostępne na [[https://gitlab.com/agh-courses/2020-2021/constraint_programming|gitlabie]]. * Lab 0. [[en:dydaktyka:csp:intro|Constraint Programming: 101]] * Lab 1. [[en:dydaktyka:csp:lab1|Constraint Programming: Podstawowe Problemy]] * Lab 2. [[en:dydaktyka:csp:lab2|Constraint Programming: Techniki modelowania]] * Lab 3. [[en:dydaktyka:csp:lab3|Constraint Programming: Modelowanie przeszukiwania]] ---- __Użyteczne linki również na stronie:__ [[en:dydaktyka:krr:start|Knowledge Representation and Reasoning]]