This repository has been archived on 2025-03-06. You can view files and clone it, but cannot push or open issues or pull requests.
dekker-phd-thesis/assets/glossary.tex

185 lines
5.8 KiB
TeX

% Note: glossary entries for terms that are acronyms should be prefixed 'gls-'
% so the non-prefixed reference is used to refer to the acronym
% \newglossaryentry{gls-api}{
% name={API},
% description={An Application Programming Interface (API) is a particular set
% of rules and specifications that a software program can follow to access and
% make use of the services and resources provided by another particular software
% program that implements that API},
% }
\newglossaryentry{gls-cbls}{
name={constraint-based local search},
description={\jip{todo}},
}
\newglossaryentry{constraint}{
name={constraint},
description={A constraint is a relationship between two or more decision
variables or problem parameters that has to present in any valid solution to a
problem},
}
\newglossaryentry{constraint-modelling}{
name={constraint modelling},
description={Constraint modelling is a technique used to describe
combinatorial problems. In this paradigm the problem in terms of
\glspl{variable} that have an unknown value, but are potentially
subject to certain \glspl{constraint}},
}
\newglossaryentry{gls-cp}{
name={constraint programming},
description={Constraint Programming (CP) is a paradigm used to solve
combinatorial problems. Its distinctive features are the declarative way in
which the user creates a problem description, in this thesis referred to as
\gls{constraint-modelling}, and its backtracking search that employs
\gls{propagation} and customisable search heuristics},
}
\newglossaryentry{gls-cse}{
name={common subexpression elimination},
description={Common Subexpression Elimination (CSE) is a technique used in the
evaluation of programming languages to avoid redoing the same work. A
description of how CSE works in \cmls\ can be found in \cref{sec:4-cse}},
}
\newglossaryentry{gls-csp}{
name={constraint satisfaction problem},
description={TODO},
}
\newglossaryentry{gls-cop}{
name={constraint optimisation problem},
description={TODO},
}
\newglossaryentry{variable}{
name={decision variable},
description={A decision variable is a value that is yet to be determined. A
problem defined as a constraint model is solved by assigning a value to each
variable that does not violate any constraints in the model and, in case of an
optimisation problem, optimises the objective function},
}
\newglossaryentry{domain}{
name={domain},
description={The domain of a \gls{variable} is the set of values that
it can still take to arrive at a solution to the problem.},
}
\newglossaryentry{flatzinc}{
name={Flat\-Zinc},
description={A subset of the \minizinc\ syntax that is used as input for
\glspl{solver}},
}
\newglossaryentry{global}{
name={global constraint},
description={A global constraint is a common \gls{constraint} pattern that can
be described using simpler \glspl{constraint}. \Glspl{solver} sometimes provide
dedicated algorithms or rewriting rules to better handle the global constraint},
}
\newglossaryentry{linear-programming}{
name={linear programming},
description={Linear programming is a method to optimise an linear objective
function under the condition of a set of constraints which are all in the form
of linear equations},
}
\newglossaryentry{gls-lns}{
name={large neighbourhood search},
description={Large Neighbourhood Search (LNS) is a meta-search algorithm that
repeatedly restricts the search space, \ie applying a \gls{neighbourhood}, to
quickly find better solutions to a problem},
}
\newglossaryentry{meta-search}{
name={meta-search},
plural={meta-searches},
description={A search approach that repeatedly solves constraint models},
}
\newglossaryentry{microzinc}{
name={Micro\-Zinc},
description={TODO},
}
\newglossaryentry{minisearch}{
name={Mini\-Search},
description={TODO},
}
\newglossaryentry{minizinc}{
name={Mini\-Zinc},
description={A high-level \gls{constraint-modelling} language with an
extensive library of \glspl{global}},
}
\newglossaryentry{gls-mip}{
name={Mixed Integer Programming},
description={A form of \gls{linear-programming} where at least one of the variable
can only take an integer value},
}
\newglossaryentry{nanozinc}{
name={Nano\-Zinc},
description={TODO},
}
\newglossaryentry{neighbourhood}{
name={neighbourhood},
description={A neighbourhood is a restriction of the search space of the
\gls{solver}},
}
\newglossaryentry{objective}{
name={objective},
description={The objective in a constraint model is a designated
\gls{variable} or function. The goal of the solver is to find the solution that
maximises or minimises the valuation of the objective}
}
\newglossaryentry{restart}{
name={restart},
description={A restart takes place when a \gls{solver} abandons its current
search position and start its search from the beginning},
}
\newglossaryentry{gls-sat}{
name={boolean satisfiability},
description={\jip{todo}},
}
\newglossaryentry{solver}{
name={solver},
description={A solver is a dedicated program or algorithm that can be used to
solve combinatorial problems, or a subset thereof},
}
\newglossaryentry{parameter}{
name={problem parameter},
description={A problem parameter is a constant value that helps define the
problem. Its value can differ among different problem instances. Its exact value
must be known when rewriting a constraint model, but is not required when
compiling a constraint model into a executable program},
}
\newglossaryentry{propagation}{
name={constraint propagation},
description={Constraint propagation is the inference that
\glspl{variable} can no longer take a certain values, lest they would
violate a \gls{constraint}},
}
\newglossaryentry{reification}{
name={reification},
description={Instead of enforcing a particular relationship, a reification of
a constraint predicate will report whether a relationship is present in the
solution},
}