Both sides previous revision
Previous revision
Next revision
|
Previous revision
|
en:dydaktyka:csp:intro [2019/02/27 22:25] msl [Tip 50%] |
en:dydaktyka:csp:intro [2020/10/06 21:33] (current) ligeza [Solving the Progblem] |
* [optional] define optimality criteria, e.g. cost function, which has to be minimized; | * [optional] define optimality criteria, e.g. cost function, which has to be minimized; |
* [optional] define the search procedure which will be used to find the solution. | * [optional] define the search procedure which will be used to find the solution. |
| |
| All files required to solve the assignments are available via [[https://gitlab.com/agh-krr/2019-2020/labs|the repository]], so clone it first and follow the Readme instructions. |
| |
===== "Real Life" Example ===== | ===== "Real Life" Example ===== |
- Run MiniZinc IDE | - Run MiniZinc IDE |
| |
===== Solving the Progblem ===== | ===== Solving the Problem ===== |
| |
Modelling problem in MiniZinc consists of four steps: | Modelling problem in MiniZinc consists of four steps: |
The simplest way: ''MiniZincIDE -> Menu -> Minizinc -> Run''. | The simplest way: ''MiniZincIDE -> Menu -> Minizinc -> Run''. |
| |
To receive more than one solution, check the ''Configuration'' tab, check the ''User-defined behavior'' checkbox and select ''Print all solutions''. | To receive more than one solution, check the ''Show configuration editor'' button in the right top corner, check the ''User-defined behavior'' checkbox and select ''Print all solutions''. |
| X===== Tip 50% ===== |
XX===== Tip 50% ===== | |
| |
The comic strip claims, that we will receive a tip only if we manage to create a general solution. We like tips, so let's get to work! | The comic strip claims, that we will receive a tip only if we manage to create a general solution. We like tips, so let's get to work! |
| |
Now we should have a basic working model for the problem at hand, but there are still few ways to improve it. | Now we should have a basic working model for the problem at hand, but there are still few ways to improve it. |
| Also this is a good moment to play with the MiniZinc compiler --- how to debug and find faults in the model. |
| |
=== Assignments === | === Assignments === |
set of <type>: SetName = start..end; | set of <type>: SetName = start..end; |
</code> | </code> |
| - ''Show configuration editor'' is a very tempting button in the right top corner of the MiniZincIDE. Play with the options: |
| * Check verbose output of the solver. |
| * Try using the ''Gecode-gist''solver. It should display a search tree. Do you understand what does it show? |
| * Experiment :) |