Cable Tree Wiring -- Benchmarking Solvers on a Real-World Scheduling
  Problem with a Variety of Precedence Constraints
  Cable trees are used in industrial products to transmit energy and
information between different product parts. To this date, they are mostly
assembled by humans and only few automated manufacturing solutions exist using
complex robotic machines. For these machines, the wiring plan has to be
translated into a wiring sequence of cable plugging operations to be followed
by the machine. In this paper, we study and formalize the problem of deriving
the optimal wiring sequence for a given layout of a cable tree. We summarize
our investigations to model this cable tree wiring Problem (CTW) as a traveling
salesman problem with atomic, soft atomic, and disjunctive precedence
constraints as well as tour-dependent edge costs such that it can be solved by
state-of-the-art constraint programming (CP), Optimization Modulo Theories
(OMT), and mixed-integer programming (MIP) solvers. It is further shown, how
the CTW problem can be viewed as a soft version of the coupled tasks scheduling
problem. We discuss various modeling variants for the problem, prove its
NP-hardness, and empirically compare CP, OMT, and MIP solvers on a benchmark
set of 278 instances. The complete benchmark set with all models and instance
data is available on github and is accepted for inclusion in the MiniZinc
challenge 2020.
