From ee7d13ab536df0f5a90462a01b3d7effc1a3d874 Mon Sep 17 00:00:00 2001 From: "Jip J. Dekker" Date: Thu, 15 Jul 2021 15:29:13 +1000 Subject: [PATCH] Add new figures for the incremental techniques --- assets/img/inc_cmp_lex.pdf | Bin 0 -> 10877 bytes assets/img/inc_cmp_lns.pdf | Bin 0 -> 13167 bytes chapters/5_incremental.tex | 25 +++++++++---------------- 3 files changed, 9 insertions(+), 16 deletions(-) create mode 100644 assets/img/inc_cmp_lex.pdf create mode 100644 assets/img/inc_cmp_lns.pdf diff --git a/assets/img/inc_cmp_lex.pdf b/assets/img/inc_cmp_lex.pdf new file mode 100644 index 0000000000000000000000000000000000000000..1ebd5ad531f6b35b3d260f19ac36431f28114886 GIT binary patch literal 10877 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 literal 0 HcmV?d00001 diff --git a/chapters/5_incremental.tex b/chapters/5_incremental.tex index ff8b793..713648e 100644 --- a/chapters/5_incremental.tex +++ b/chapters/5_incremental.tex @@ -566,15 +566,6 @@ We implemented both approaches using the \nanozinc\ prototype, with the results The incremental \nanozinc\ translation shows a 12x speedup compared to re-compiling the model from scratch in each iteration. For this particular problem, incrementally instructing the target solver (\gls{gecode}) does not lead to a significant reduction in runtime. -\begin{figure} - \centering - \includegraphics[width=0.5\columnwidth]{assets/img/6_gbac} - \caption{\label{fig:6-gbac}A run-time performance comparison between incremental processing (Incr.) - and re-evaluation (Redo) of 5 GBAC \minizinc\ instances in the application of \gls{lns} on a 3.4 GHz Quad-Core Intel Core i5 using the Gecode 6.1.2 solver. - Each run consisted of 2500 iterations of applying neighbourhood predicates. - Reported times are averages of 10 runs.} -\end{figure} - \paragraph{Radiation} Our second experiment is based on a problem of planning cancer radiation therapy treatment using multi-leaf collimators \autocite{baatar-2011-radiation}. Two characteristics mark the quality of a solution: the amount of time the patient is exposed to radiation, and the number of ``shots'' or different angles the treatment requires. However, the first characteristic is considered more important than the second. @@ -592,13 +583,15 @@ Given two variables \mzninline{exposure} and \mzninline{shots}, once we have fou Since each added lexicographic constraint is strictly stronger than the previous one, we never have to retract previous constraints. \begin{figure} - \centering - \includegraphics[width=0.5\columnwidth]{assets/img/6_radiation} - \caption{\label{fig:6-radiation}A run-time performance comparison between - incremental processing (Incr.) and re-evaluation (Redo) of 9 Radiation - \minizinc\ instances in the application of Lexicographic objectives on a 3.4 - GHz Quad-Core Intel Core i5 using the \gls{gecode} 6.1.2 solver. Each test was run - to optimality and was conducted 20 times to provide an average.} + \begin{subfigure}[b]{0.5\linewidth} + \includegraphics[width=\columnwidth]{assets/img/inc_cmp_lex.pdf} + \caption{\label{subfig:inc-cmp-lex}Radiation} + \end{subfigure} + \begin{subfigure}[b]{0.5\linewidth} + \includegraphics[width=\columnwidth]{assets/img/inc_cmp_lns.pdf} + \caption{\label{subfig:inc-cmp-lns}GBAC} + \end{subfigure} + \caption{\label{fig:inc-cmp} A comparison of the two new incremental techniques and a recompilation strategy.} \end{figure} As shown in \cref{fig:6-radiation}, the incremental processing of the added \mzninline{lex_less} calls is a clear improvement over the re-evaluation of the whole model.