From ed4a7b8a4f96a5b24d24f80aed1287a8a526802e Mon Sep 17 00:00:00 2001 From: "Jip J. Dekker" Date: Wed, 16 Jun 2021 15:50:58 +1000 Subject: [PATCH] Benchmark Design section --- assets/glossary.tex | 5 +++++ chapters/A2_benchmark.tex | 44 ++++++++++++++++++++++++++------------- 2 files changed, 34 insertions(+), 15 deletions(-) diff --git a/assets/glossary.tex b/assets/glossary.tex index 6bac778..4f7e7ed 100644 --- a/assets/glossary.tex +++ b/assets/glossary.tex @@ -169,6 +169,11 @@ description={}, } +\newglossaryentry{git}{ + name={Git}, + description={}, +} + \newglossaryentry{global}{ name={global constraint}, description={}, diff --git a/chapters/A2_benchmark.tex b/chapters/A2_benchmark.tex index 6839c83..28641dc 100644 --- a/chapters/A2_benchmark.tex +++ b/chapters/A2_benchmark.tex @@ -51,11 +51,11 @@ array[1..n,0..n] of int: p; % prize for edge (i,j), p[i,0] = 0 array[1..n] of var 0..n: next; % next posn in tour array[1..n] of var 0..n: pos; % posn on node i in path, 0=notin array[1..n] of var int: prize = [p[i,next[i]] | i in 1..n]; - % prize for outgoing edge +% prize for outgoing edge constraint forall(i in 1..n)( - (pos[i] = 0 <-> next[i] = 0) /\ - (next[i] > 1 -> pos[next[i]] = pos[i] + 1) +(pos[i] = 0 <-> next[i] = 0) /\ +(next[i] > 1 -> pos[next[i]] = pos[i] + 1) ); constraint alldifferent_except_0(next) /\ pos[1] = 1; @@ -63,20 +63,34 @@ constraint alldifferent_except_0(next) /\ pos[1] = 1; solve minimize sum(i in 1..n)(prize[i]); \end{mzn} -\begin{mzn} -include "subcircuit.mzn"; +\section{Benchmark Design}% +\label{sec:bench-env} -int: n; % size -array[1..n,1..n] of int: p; % prize for edge (i,j), p[i,i] = 0 +To promote the verification and recreation of experiments, we have published the programs with accompanying instructions to perform the experiments in this thesis. +The experiments are split into three parts, each testing a different system. +Each part is published as a \gls{git} repository on GitHub. -array[1..n] of var 0..n: next; % next posn in tour -array[1..n] of var int: prize = [p[i,next[i]] | i in 1..n]; - % prize for outgoing edge +\paragraph{MiniZinc Prototype} The design for the experiments of the \minizinc{} prototype implementation can be found in: -constraint subcircuit(next); +\begin{center} + \url{file://TODO} +\end{center} -solve minimize sum(i in 1..n)(prize[i]); -\end{mzn} +This repository contains the flattening, recursive function, and the incremental flattening benchmarks. + +\paragraph{Half Reification} The design for all the \gls{half-reif} experiments is located in: + +\begin{center} + \url{https://github.com/Dekker1/half-reif-benchmarks} +\end{center} + +This repository contains both the benchmark for the \gls{chuffed} propagators of \gls{half-reif} constraints and the \minizinc{} Challenge 2019 \& 2020 benchmark. + +\paragraph{Restarting Meta-Search} Finally, the design of the experiments for restart based \gls{meta-search} can be found in: + +\begin{center} + \url{https://github.com/Dekker1/on-restart-benchmarks} +\end{center} + +This repository contains the benchmarks for both \gls{gecode} and \gls{chuffed}. -\section{Benchmark Environments}% -\label{sec:bench-programs}