Work on the Experiments section

This commit is contained in:
Jip J. Dekker 2021-04-08 18:07:04 +10:00
parent 1d20312a30
commit 67b806b378
No known key found for this signature in database
GPG Key ID: 517DF4A00618C9C3

View File

@ -276,16 +276,15 @@ that introduces the variable.
\subsection{\glsentrytext{nanozinc}}\label{sec:4-nanozinc} \subsection{\glsentrytext{nanozinc}}\label{sec:4-nanozinc}
A \nanozinc\ model (\cref{fig:4-nzn-syntax}) consists of a topologically-ordered A \nanozinc\ model (\cref{fig:4-nzn-syntax}) consists of a topologically-ordered
list of definitions. Each definition binds a variable to the result of a call or list of variables declaration and constraints. Variables are declared with an
another variable, and it is associated with a list of identifiers of auxiliary identifier, a domain, and it is associated with a list of identifiers of
constraints. The \nanozinc\ model contains a special definition auxiliary constraints. Constraints can also occur at the top-level of the
\mzninline{true}, containing all ``root-context'' constraints of the model, \nanozinc\ model. These are said to be the ``root-context'' constraints of the
\ie\ those that have to hold globally and are not just used to define an model, \ie\ those that have to hold globally and are not just used to define an
auxiliary variable. Only root-context constraints (attached to \mzninline{true}) auxiliary variable. Only root-context constraints can effectively constrain the
can effectively constrain the overall problem. Constraints attached to overall problem. Constraints attached to variables originate from function
definitions originate from function calls, and since all functions are calls, and since all functions are guaranteed to be total, attached constraints
guaranteed to be total, attached constraints can only define the function can only define the function result.
result.
\begin{example}\label{ex:4-absnzn} \begin{example}\label{ex:4-absnzn}
@ -954,17 +953,15 @@ following we present experimental results on basic flattening performance as
well as incremental flattening and solving that demonstrate the efficiency well as incremental flattening and solving that demonstrate the efficiency
gains that are possible thanks to the new architecture. gains that are possible thanks to the new architecture.
\subsection{Basic Flattening} We selected 20 models from the annual \minizinc\ challenge and compiled 5
instances of each model to \flatzinc, using the current \minizinc\ release
As a first experiment, we selected 20 models from the annual \minizinc\ version 2.4.3 and the new prototype system. In both cases we use the standard
challenge and compiled 5 instances of each model to \flatzinc, using the current \minizinc\ library of global constraints (\ie\ we decompose those constraints
\minizinc\ release version 2.4.3 and the new prototype system. In both cases we rather than using solver built-ins, in order to stress-test the flattening). We
use the standard \minizinc\ library of global constraints (\ie\ we decompose measured pure flattening time, \ie\ without time required to parse and typecheck
those constraints rather than using solver built-ins, in order to stress-test in version 2.4.3, and without time required for compilation to \microzinc\ in
the flattening). We measured pure flattening time, \ie\ without time required the new system (compilation is usually very fast). Times are averages of 10
to parse and typecheck in version 2.4.3, and without time required for runs.\footnote{All models obtained from
compilation to \microzinc\ in the new system (compilation is usually very fast).
Times are averages of 10 runs.\footnote{All models obtained from
\url{https://github.com/minizinc/minizinc-benchmarks}: \url{https://github.com/minizinc/minizinc-benchmarks}:
\texttt{\justify{}accap, amaze, city-position, community-detection, \texttt{\justify{}accap, amaze, city-position, community-detection,
depot-placement, freepizza, groupsplitter, kidney-exchange, median-string, depot-placement, freepizza, groupsplitter, kidney-exchange, median-string,