<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>International Configuration Workshop
September</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>F L E X D I AG : AnyTime Diagnosis for Reconfiguration</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Rouven Walter</string-name>
          <email>rouven.walter@uni-tuebingen.de</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Stefan Reiterer</string-name>
          <email>fan.reitererg@ist.tugraz.at</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Applied Software Engineering Group, Institute for Software</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Symbolic Computation Group, WSI Informatics, Universita ̈t Tu ̈bingen</institution>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2015</year>
      </pub-date>
      <volume>1</volume>
      <fpage>0</fpage>
      <lpage>11</lpage>
      <abstract>
        <p>Anytime diagnosis is able to determine solutions within predefined time limits. This is especially useful in realtime scenarios such as production scheduling, robot control, and communication networks management where diagnosis and corresponding reconfiguration capabilities play a major role. Anytime diagnosis in many cases comes along with a tradeoff between diagnosis quality and the efficiency of diagnostic reasoning. In this paper we introduce and analyze FLEXDIAG which is an anytime variant of existing direct diagnosis approaches. We evaluate the algorithm with regard to performance and diagnosis quality using a configuration benchmark.</p>
      </abstract>
      <kwd-group>
        <kwd>Anytime Diagnosis</kwd>
        <kwd>Reconfiguration</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Knowledge-based configuration is one of the most successful
applications of Artificial Intelligence [
        <xref ref-type="bibr" rid="ref24 ref7">7, 24</xref>
        ]. There are many different
applications of configuration technologies ranging from
telecommunication infrastructures [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], railway interlocking systems [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], the
automotive domain [
        <xref ref-type="bibr" rid="ref22 ref26 ref28">22, 26, 28</xref>
        ] to the configuration of services [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ].
Configuration technologies must be able to deal with inconsistencies
which can occur in different contexts. First, a configuration
knowledge base can be inconsistent, i.e., no solution can be determined. In
this context, the task of knowledge engineers is to figure out which
constraints are responsible for the unintended behavior of the
knowledge base. Bakker et al. [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] show the application of model-based
diagnosis [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] to determine minimal sets of constraints in a knowledge
base that are responsible for a given inconsistency. A variant thereof
is documented in Felfernig et al. [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] where an approach to the
automated debugging of knowledge bases with test cases is introduced.
Felfernig et al. [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] also show how to diagnose customer requirements
that are inconsistent with a configuration knowledge base. The
underlying assumption is that the configuration knowledge base itself
is consistent but combined with a set of requirements is inconsistent.
      </p>
      <p>
        All diagnosis approaches mentioned so far are based on
conflictdirected hitting set determination [
        <xref ref-type="bibr" rid="ref15 ref19">15, 19</xref>
        ]. These approaches
typically determine diagnoses in a breadth-first search manner which
allows the identification of minimal cardinality diagnoses. The
major disadvantage of applying these approaches is the need of
predetermining minimal conflicts which is inefficient especially in cases
where only the leading diagnoses (the most relevant ones) are sought.
      </p>
      <p>
        Anytime diagnosis algorithms are useful in scenarios where
diagnoses have to be provided in real-time, i.e., within given time limits.
If diagnosis is applied in interactive configuration, for example, to
determine repairs for inconsistent customer requirements, response
times should be below one second [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Efficient diagnosis and
reconfiguration of communication networks is crucial to retain the
quality of service [
        <xref ref-type="bibr" rid="ref18 ref25">18, 25</xref>
        ]. In today’s production scenarios which are
characterized by small batch sizes and high product variability, it is
increasingly important to develop algorithms that support the
efficient reconfiguration of schedules. Such functionalities support the
paradigm of smart production, i.e., the flexible and efficient
production of highly variant products. Further applications are the diagnosis
and repair of robot control software [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ], the reconfiguration of cars
[
        <xref ref-type="bibr" rid="ref29">29</xref>
        ], and the reconfiguration of buildings [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
      </p>
      <p>
        Algorithmic approaches to provide efficient solutions for
diagnosis problems are manyfold. Some approaches focus on improvements
of Reiter’s original hitting set directed acyclic graph (HSDAG) [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]
in terms of a personalized computation of leading diagnoses [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] or
other extensions that make the basic approach [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] more efficient
[
        <xref ref-type="bibr" rid="ref31">31</xref>
        ]. Wang et al. [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ] introduce an approach to derive binary decision
diagrams (BDDs) on the basis of a pre-determined set of conflicts –
diagnoses can then be determined by solving the BDD. A pre-defined
set of conflicts can also be compiled into a corresponding linear
optimization problem [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]; diagnoses can then be determined by solving
the given problem. In knowledge-based recommendation scenarios,
diagnoses for user requirements can be pre-compiled in such a way
that for a given set of customer requirements, the diagnosis search
task can be reduced to querying a relational table (see, for example,
[
        <xref ref-type="bibr" rid="ref14 ref20">14, 20</xref>
        ]). All of the mentioned approaches either extend the approach
of Reiter [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] or improve efficiency by exploiting pre-generated
information about conflicts or diagnoses.
      </p>
      <p>
        An alternative to conflict-directed diagnosis [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] are direct
diagnosis algorithms that determine minimal diagnoses without the need
of pre-determing minimal conflict sets [
        <xref ref-type="bibr" rid="ref17 ref21 ref9">9, 17, 21</xref>
        ]. The FASTDIAG
algorithm [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] is a divide-and-conquer based algorithm that supports
the determination of diagnoses without a preceding conflict
detection. In this paper we show how this algorithm can be converted into
an anytime diagnosis algorithm (FLEXDIAG) that is able to improve
performance by disregarding the aspect of minimality, i.e., the
algorithm allows for tradeoffs between diagnosis quality (e.g.,
minimality) and performance of diagnostic search. In this paper we focus on
reconfiguration scenarios, i.e., we show how FLEXDIAG can be
applied in situations where a given configuration (solution) has to be
adapted conform to a changed set of customer requirements.
      </p>
      <p>Our contributions in this paper are the following. First, we show
how to solve reconfiguration tasks with direct diagnosis. Second, we
make direct diagnosis anytime-aware by including a parametrization
that helps to systematically reduce the number of consistency checks.
Finally, we report the results of a FLEXDIAG-related evaluation
conducted on the basis of a configuration benchmark.</p>
      <p>The remainder of this paper is organized as follows. In Section
2 we introduce an example configuration knowledge base from the
domain of resource allocation. This knowledge base will serve as a
working example throughout the paper. Thereafter (Section 3) we
introduce a definition of a reconfiguration task. In Section 4 we discuss
basic principles of direct diagnosis on the basis of FLEXDIAG and
show how this algorithm can be applied in reconfiguration
scenarios. In Section 5 we present the results of a performance analysis. A
simple example of the application of FLEXDIAG in production
environments is given in Section 6. In Section 7 we discuss major issues
for future work. With Section 8 we conclude the paper.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Example Configuration Knowledge Base</title>
      <p>
        A configuration system determines configurations (solutions) on the
basis of a given set of customer requirements [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. In many cases,
constraint satisfaction problem (CSP) representations [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] are used
for the definition of a configuration task. A configuration task and a
corresponding configuration (solution) can be defined as follows.
      </p>
      <p>Definition 1 (Configuration Task and Configuration). A
configuration task can be defined as a CSP (V; D; C) where V =
fv1; v2; :::; vng is a set of variables, D = [dom(vi) represents
domain definitions, and C = fc1; c2; :::; cmg is a set of constraints.
Additionally, user requirements are represented by a set of constraints
R = fr1; r2; :::; rkg. A configuration (solution) for a configuration
task is a set of assignments (constraints) S = fs1 : v1 = a1; s2 :
v2 = a2; :::; sn : vn = an)g where ai 2 dom(vi) which is
consistent with C [ R.</p>
      <p>An example of a configuration task represented as a constraint
satisfaction problem is the following.</p>
      <p>Example (Configuration Task). In this resource allocation problem
example, items (a barrel of fuel, a stack of paper, a pallet of
fireworks, a pallet of personal computers, a pallet of computer games, a
barrel of oil, a palette of roof tiles, and a palette of rain pipes) have to
be assigned to three different containers. There are a couple of
constraints (ci) to be taken into account, for example, fireworks must not
be combined with fuel (c1). Furthermore, there is one requirement
(r1) which indicates that the palette of fireworks has to be assigned
to container 1. On the basis of this configuration task definition, a
configurator can determine a configuration S.</p>
      <p>V = ff uel; paper; f ireworks; pc; games; oil; roof; pipesg
dom(f uel) = dom(paper) = dom(f ireworks) =
dom(pc) = dom(games) = dom(oil) = dom(roof ) =
dom(pipes) = f1; 2; 3g
C = fc1 : f ireworks 6= f uel; c2 : f ireworks 6= paper; c3 :
f ireworks 6= oil; c4 : pipes = roof; c5 : paper 6= f uelg
R = fr1 : f ireworks = 1g
S = fs1 : pc = 3; s2 : games = 1; s3 : paper = 2; s4 :
f uel = 3; s5 : f ireworks = 1; s6 : oil = 2; s7 : roof =
1; s8 : pipes = 1g</p>
      <p>
        On the basis of the given definition of a configuration task, we now
introduce the concept of reconfiguration (see also [
        <xref ref-type="bibr" rid="ref12 ref18 ref25 ref28">12, 18, 25, 28</xref>
        ]).
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Reconfiguration Task</title>
      <p>It can be the case that an existing configuration S has to be adapted
due to a change or extension of the given set of customer
requirements. Examples thereof are changing requirements that have to be
taken into account in production schedules, failing components or
overloaded network infrastructures in a mobile phone network, and
changes in the internal model of the environment of a robot. In the
following we assume that the palette of paper should be reassigned
to container 3 and the personal computer and games palettes should
be assigned to the same container. Formally, the set of new
requirements is represented by R : fr10 : pc = games; r20 : paper = 3g.
In order to determine reconfigurations, we have to calculate a
corresponding diagnosis (see Definition 2).</p>
      <p>Definition 2 (Diagnosis). A diagnosis (correction subset) is a
subset of S = fs1 : v1 = a1; s2 : v2 = a2; :::; sn : vn = ang such
that S [ C [ R is consistent. is minimal if there does not
exist a diagnosis 0 with 0 .</p>
      <p>On the basis of the definition of a minimal diagnosis, we can
introduce a formal definition of a reconfiguration task.</p>
      <p>Definition 3 (Reconfiguration Task and Reconfiguration). A
reconfiguration task can be defined as a CSP (V; D; C; S; R ) where V
is a set of variables, D represents variable domain definitions, C
is a set of constraints, S represents an existing configuration, and
R = fr10; r20; :::; rk0g (R consistent with C) represents a set of
reconfiguration requirements. A reconfiguration is a variable
assignment S = fs1 : v1 = a01; s2 : v2 = a02; :::; sl : vl = a0lg where
si 2 , a0i 6= ai, and S [ S [ C [ R is consistent.</p>
      <p>
        If R is inconsistent with C, the new requirements have to be
analyzed and changed before a corresponding reconfiguration task can
be triggered [
        <xref ref-type="bibr" rid="ref4 ref8">4, 8</xref>
        ]. An example of a reconfiguration task in the
context of our configuration knowledge base is the following.
      </p>
      <p>Example (Reconfiguration Task). In the resource allocation
problem, the original customer requirements R are substituted by the
requirements R = fr10 : pc = games; r20 : paper = 3g. The
resulting reconfiguration task instance is the following.</p>
      <p>V = ff uel; paper; f ireworks; pc; games; oil; roof; pipesg
dom(f uel) = dom(paper) = dom(f ireworks) =
dom(pc) = dom(games) = dom(oil) = dom(roof ) =
dom(pipes) = f1; 2; 3g
C = fc1 : f ireworks 6= f uel; c2 : f ireworks 6= paper; c3 :
f ireworks 6= oil; c4 : pipes = roof; c5 : paper 6= f uelg
S = fs1 : pc = 3; s2 : games = 1; s3 : paper = 2; s4 :
f uel = 3; s5 : f ireworks = 1; s6 : oil = 2; s7 : roof =
1; s8 : pipes = 1g
R = fr10 : pc = games; r20 : paper = 3g</p>
      <p>
        To solve a reconfiguration task (see Definition 3), conflict-directed
diagnosis approaches [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] would determine a set of minimal conflicts
and then determine a hitting set that resolves each of the identified
conflicts. In this context, a minimal conflict set CS S is a
minimal set of variable assignments that trigger an inconsistency with
C [ R , i.e., CS [ C [ R is inconsistent and there does not exist a
conflict set CS0 with CS0 CS. In our working example, the
minimal conflict sets are CS1 : fs1 : pc = 3; s2 : games = 1g,
CS2 : fs3 : paper = 2g, and CS3 : fs4 : f uel = 3g.
The corresponding minimal diagnoses are 1 : fs1; s3; s4g and
2 : fs2; s3; s4g. The elements in a diagnosis indicate which
variable assignments have to be adapted such that a reconfiguration
can be determined that takes into account the new requirements in
R . If we choose 1, the reconfigurations (reassignments) for the
variable assignments in 1 can be determined by a CSP solver
call C [ R [ (S 1). The resulting configuration S0 can be
fs1 : pc = 1; s2 : games = 1; s3 : paper = 3; s4 : f uel = 2; s5 :
f ireworks = 1; s6 : oil = 2; s7 : roof = 1; s8 : pipes = 1g. For
a detailed discussion of conflict-based diagnosis we refer to Reiter
[
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]. In the following we introduce an approach to the determination
of minimal reconfigurations which is based on a direct diagnosis
algorithm, i.e., diagnoses are determined without the need of
determining related minimal conflict sets.
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Reconfiguration with FLEXDIAG</title>
      <p>In the following discussions, the set AC = C [ R [ S represents
the union of all constraints that restrict the set of possible solutions
for a given reconfiguration task. Furthermore, S represents a set of
constraints that are considered as candidates for being included in a
diagnosis . The idea of FLEXDIAG (Algorithm 1) is to
systematically filter out the constraints that become part of a minimal diagnosis
using a divide-and-conquer based approach.</p>
      <p>Algorithm 1</p>
      <p>FLEXDIAG.
1 func FLEXDIAG(S; AC = C [ R [ S) :
2 if isEmpty(S) or inconsistent(AC S) return ;
3 else return FLEXD(;; S; AC);</p>
      <p>In our example reconfiguration task, the original configuration
S = fs1; s2; s3; s4; s5; s6; s7; s8g and the new set of customer
requirements is R = fr10; r20g. Since S [ R [ C is inconsistent, we
are in the need of a minimal diagnosis and a reconfiguration S
such that S [ S [ R [ C is consistent. In the following we will
show how the FLEXDIAG (Algorithm 1) can be applied to determine
a minimal diagnosis .</p>
      <p>The FLEXDIAG algorithm is assumed to be activated under the
assumption that AC is inconsistent, i.e., the consistency of AC is
not checked by the algorithm. If AC is inconsistent but AC S is
also inconsistent, FLEXDIAG will not be able to identify a diagnosis
in S; therefore ; is returned. Otherwise, a recursive function FLEXD
is activated which is in charge of determining one minimal diagnosis
. In each recursive step, the constraints in S are divided into two
different subsets (S1 and S2) in order to figure out if already one of
these subsets includes a diagnosis. If this is the case, the second set
must not be inspected for diagnosis elements anymore.</p>
      <p>
        FLEXDIAG is based on the concepts of FASTDIAG [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], i.e., it
returns one diagnosis ( ) at a time and is complete in the sense that
if a diagnosis is contained in S, then the algorithm will find it. A
corresponding reconfiguration can be determined by a solver call
C [ R [ (S ). The determination of multiple diagnoses at a
time can be realized on the basis of the construction of a HSDAG
[
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]. If m = 1 (see Algorithm 1), the number of consistency checks
needed for determining one minimal diagnosis is 2 log2( n ) + 2
in the worst case [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. In this context, represents the set size of the
minimal diagnosis and n represents the number of constraints in
solution S.
      </p>
      <p>If m &gt; 1, the number of needed consistency checks can be
systematically reduced if we accept the tradeoff of possibly loosing the
property of diagnosis minimality (see Definition 2). If we allow
settings with m &gt; 1, we can reduce the upper bound of the number
of consistency checks to 2 log2( 2nm ) in the worst case. These
upper bounds regarding the number of needed consistency checks
allow to estimate the worst case runtime performance of the diagnosis
algorithm which is extremely important for realtime scenarios.
Consequently, if we are able to estimate the upper limit of the runtime
needed for completing one consistency check (e.g., on the basis of
simulations with an underlying constraint solver), we are also able
to figure out lower bounds for m that must be chosen in order to
guarantee a FLEXDIAG runtime within predefined time limits.</p>
      <p>Table 1 depicts an overview of consistency checks needed
depending on the setting of the parameter m and the diagnosis size for
jSj = 16. For example, if m = 2 and the size of a minimal diagnosis
is = 4, then the upper bound for the number of needed consistency
checks is 16. If the size of increases further, the number of
corresponding consistency checks does not increase anymore. Figures
1 and 2 depict FLEXDIAG search trees depending on the setting of
granularity parameter m.</p>
      <p>
        FLEXDIAG determines one diagnosis at a time which indicates
variable assignments of the original configuration that have to be
changed such that a reconfiguration conform to the new requirements
(R ) is possible. The algorithm supports the determination of
leading diagnoses, i.e., diagnoses that are preferred with regard to given
user preferences [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. FLEXDIAG is based on a strict
lexicographical ordering of the constraints in S: the lower the importance of a
constraint si 2 S the lower the index of the constraint in S. For
example, s1 : pc = 3 has the lowest ranking. The lower the
ranking, the higher the probability that the constraint will be part of a
reconfiguration S . Since s1 has the lowest priority and it is part of
a conflict, it is element of the diagnosis returned by FLEXDIAG. For
a discussion of the properties of lexicographical orderings we refer
to [
        <xref ref-type="bibr" rid="ref15 ref9">9, 15</xref>
        ].
5
      </p>
    </sec>
    <sec id="sec-5">
      <title>Evaluation</title>
      <p>In order to evaluate FLEXDIAG, we analyzed the two major aspects
of (1) algorithm performance and (2) diagnosis quality in terms of
minimality and accuracy. We analyzed both aspects by varying the
value of parameter m. Our hypothesis in this context was that the
higher the value of m, the lower the number of needed consistency
checks (the higher the efficiency of diagnosis search) and the lower
diagnosis quality in terms of the share of diagnosis-relevant
constraints returned by FLEXDIAG. Diagnosis quality can, for example,
be measured by the degree of minimality of the constraints contained
in a diagnosis returned by FLEXDIAG (see Formula 1).
id</p>
      <p>m=1
1.0(1.0)
1.0(1.0)
1.0(1.0)
1.0(1.0)</p>
      <p>If m &gt; 1, there is no guarantee that the diagnosis determined
for S is a superset of the diagnosis min determined for S in the case
m = 1. Besides minimality, we introduce accuracy as an additional
quality indicator (see Formula 2). The higher the share of elements of
min in , the higher the corresponding accuracy (the algorithm is
able to reproduce the elements of the minimal diagnosis for m = 1).
accuracy( ) = j
\ minj
j minj</p>
      <p>In order to evaluate FLEXDIAG with regard to both aspects we
applied the algorithm to the configuration benchmark from
www.splotresearch.org - the configuration models are feature models which
include requirement constraints, compatibility constraints, and
different types of structural constraints such as mandatory relationships
and alternatives. The feature models were represented as CSP on the
basis of the Java-based Choco library.3 For each setting (see Table
2) in the benchmark, we randomly generated jR j new requirements
that were inconsistent with an already determined configuration (10
iterations per setting). The average cardinality of a minimal
diagnosis for m = 1 is j minj. Related average runtimes (in milliseconds)4
and degrees of minimality and accuracy (see Formula 1) are depicted
in Table 2. As can be seen in Table 2, increasing the value of m leads
to an improved runtime performance in our example cases.
Minimality and accuracy depend on the configuration domain and are not
necessarily monotonous. For example, since a diagnosis determined
by FLEXDIAG is not necessarily a superset of a diagnosis determined
with m = 1, it can be the case that the minimality of a diagnosis
determined with m &gt; 1 is greater than 1 (if FLEXDIAG determines
a diagnosis with lower cardinality than the minimal diagnosis
determined with m = 1).</p>
      <p>
        Note that in this paper we did not compare FLEXDIAG with more
traditional diagnosis approaches – for related evaluations we refer
the reader to [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] were detailed related analyses can be found. The
outcome of these analyses is that direct diagnosis approaches such as
FLEXDIAG clearly outperform standard diagnosis approaches based
on the resolution of minimal conflicts [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ].
6
      </p>
    </sec>
    <sec id="sec-6">
      <title>Reconfiguration in Production</title>
      <p>The following simplified reconfiguration task is related to scheduling
in production where it is often the case that, for example, schedules
and corresponding production equipment has to be reconfigured. In
3 choco-solver.org.
4 Test platform: Windows 7 Professional 64 Bit, Intel(R) Core(TM) i5-2320
3.00 GHz CPU with 8.00 GB of memory.
(1)
(2)
this example setting we do not take into account configurable
production equipment (configurable machines) and limit the
reconfiguration to the assignment of orders to corresponding machines. The
assignment of an order oi to a certain machine mj is represented by
the corresponding variable oimj . The domain of each such variable
represents the different possible slots in which an order can be
processed, for example, o1m1 = 1 denotes the fact that the processing
of order o1 on machine m1 is performed during and finished after
time slot 1.</p>
      <p>Further constraints restrict the way in which orders are allowed
to be assigned to machines, for example, o1m1 &lt; o1m2 denotes
the fact that order o1 must be completed on machine m1 before a
further processing is started on machine m2. Furthermore, no two
orders must be assigned to the same machine during the same time
slot, for example, o1m1 6= o2m1 denotes the fact that order o1 and
o2 must not be processed on the same machine in the same time slot
(slots 1..3). Finally, the definition of our reconfiguration task is
completed with an already determined schedule S and a corresponding
reconfiguration request represented by the reconfiguration
requirement R = fr10 : o3m3 &lt; 5g, i.e., order o3 should be completed
within less than 5 time units.</p>
      <p>V = fo1m1; o1m2; o1m3; o2m1; o2m2; o2m3; o3m1;
o3m2; o3m3g
dom(o1m1) = dom(o2m1) = dom(o3m1) = f1; 2; 3g:
dom(o1m2) = dom(o2m2) = dom(o3m2) = f2; 3; 4g:
dom(o1m3) = dom(o2m3) = dom(o3m3) = f3; 4; 5g:
C = fc1 : o1m1 &lt; o1m2; c2 : o1m2 &lt; o1m3;
c3 : o2m1 &lt; o2m2; c4 : o2m2 &lt; o2m3; c5 : o3m1 &lt; o3m2;
c6 : o3m2 &lt; o3m3; c7 : o1m1 6= o2m1;
c8 : o1m1 6= o3m1; c9 : o2m1 6= o3m1;
c10 : o1m2 6= o2m2; c11 : o1m2 6= o3m2;
c12 : o2m2 6= o3m2; c13 : o1m3 6= o2m3;
c14 : o1m3 6= o3m3; c15 : o2m3 6= o3m3g
S = fs1 : o1m1 = 1; s2 : o1m2 = 2; s3 : o1m3 = 3;
s4 : o2m1 = 2; s5 : o2m2 = 3; s6 : o2m3 = 4;
s7 : o3m1 = 3; s8 : o3m2 = 4; s9 : o3m3 = 5g
R = fr10 : o3m3 &lt; 5g</p>
      <p>This reconfiguration task can be solved using FLEXDIAG. If we
keep the ordering of the constraints as defined in S, FLEXDIAG (with
m = 1) returns the diagnosis : fs4; s5; s6; s7; s8g which can be
used to determine the new solution S = fs1 : o1m1 = 1; s2 :
o1m2 = 2; s3 : o1m3 = 3; s4 : o2m1 = 3; s5 : o2m2 = 4; s6 :
o2m3 = 5; s7 : o3m1 = 2; s8 : o3m2 = 3; s9 : o3m3 = 4g.
Possible ordering criteria for constraints in such rescheduling scenarios
can be, for example, customer value (changes related to orders of
important customers should occur with a lower probability) and the
importance of individual orders. If some orders in a schedule should
not be changed, this can be achieved by simply defining such
requests as requirements (R ), i.e., change requests as well as stability
requests can be included as constraints ri0 in R .
7</p>
    </sec>
    <sec id="sec-7">
      <title>Ongoing And Future Work</title>
      <p>
        We are currently evaluating FLEXDIAG with a more complex
(industrial) benchmark from three different German car manufacturers on
the level of type series. In this context we include further evaluation
metrics that help to better estimate the quality of diagnoses
(reconfigurations) – for example, the currently applied accuracy metric does
not take into account the importance of the different constraints
contained in a diagnosis. Furthermore, we will extend the FLEXDIAG
algorithm in order to make it applicable in scenarios where
knowledge bases are tested [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Our goal in this context is to improve the
performance of existing automated debugging approaches and to
investigate to which extent diagnoses resulting from m &gt; 1 are
considered as relevant by knowledge engineers. Finally, we will compare
FLEXDIAG with local search approaches such as genetic algorithms.
8
      </p>
    </sec>
    <sec id="sec-8">
      <title>Conclusions</title>
      <p>Efficient reconfiguration functionalities are needed in various
scenarios such as the reconfiguration of production schedules, the
reconfiguration of the settings in mobile phone networks, and the
reconfiguration of robot context information. We analyzed the FLEXDIAG
algorithm with regard to potentials of improving existing direct
diagnosis algorithms. When using FLEXDIAG, there is a clear tradeoff
between performance of diagnosis calculation and diagnosis quality
(measured, for example, in terms of minimality and accuracy).
110</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>R.</given-names>
            <surname>Bakker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Dikker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Tempelman</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P.</given-names>
            <surname>Wogmim</surname>
          </string-name>
          , '
          <article-title>Diagnosing and solving over-determined constraint satisfaction problems'</article-title>
          ,
          <source>in 13th International Joint Conference on Artificial Intelligence</source>
          , pp.
          <fpage>276</fpage>
          -
          <lpage>281</lpage>
          , Chambery, France, (
          <year>1993</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>S.K.</given-names>
            <surname>Card</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.G.</given-names>
            <surname>Robertson</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.D.</given-names>
            <surname>Mackinlay</surname>
          </string-name>
          , '
          <article-title>The information visualizer, an information workspace'</article-title>
          ,
          <source>in CHI '91 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems</source>
          , pp.
          <fpage>181</fpage>
          -
          <lpage>188</lpage>
          , New Orleans, Louisiana, USA, (
          <year>1991</year>
          ). ACM.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>J. DeKleer</surname>
          </string-name>
          , '
          <article-title>Using crude probability estimates to guide diagnosis'</article-title>
          ,
          <source>AI Journal</source>
          ,
          <volume>45</volume>
          (
          <issue>3</issue>
          ),
          <fpage>381</fpage>
          -
          <lpage>391</lpage>
          , (
          <year>1990</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>A.</given-names>
            <surname>Falkner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Haag</surname>
          </string-name>
          , '
          <article-title>Recommendation Technologies for Configurable Products'</article-title>
          ,
          <source>AI Magazine</source>
          ,
          <volume>32</volume>
          (
          <issue>3</issue>
          ),
          <fpage>99</fpage>
          -
          <lpage>108</lpage>
          , (
          <year>2011</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>A.</given-names>
            <surname>Falkner</surname>
          </string-name>
          and
          <string-name>
            <given-names>H.</given-names>
            <surname>Schreiner</surname>
          </string-name>
          , 'SIEMENS:
          <article-title>Configuration and Reconfiguration in Industry', in Knowledge-based Configuration -</article-title>
          From Research to Business Cases, eds.,
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Hotz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Bagley</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Tiihonen</surname>
          </string-name>
          , chapter
          <volume>16</volume>
          ,
          <fpage>251</fpage>
          -
          <lpage>264</lpage>
          , Morgan Kaufmann Publishers, (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Friedrich</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Jannach</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Stumptner</surname>
          </string-name>
          , '
          <article-title>Consistency-based diagnosis of configuration knowledge bases'</article-title>
          ,
          <source>Artificial Intelligence</source>
          ,
          <volume>152</volume>
          (
          <issue>2</issue>
          ),
          <fpage>213</fpage>
          -
          <lpage>234</lpage>
          , (
          <year>2004</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Hotz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Bagley</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Tiihonen</surname>
          </string-name>
          ,
          <article-title>Knowledge-based Configuration: From Research to Business Cases</article-title>
          , Elsevier/Morgan Kaufmann Publishers, 1st edn.,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Schubert</surname>
          </string-name>
          , G. Friedrich,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mandl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mairitsch</surname>
          </string-name>
          , and E. Teppan, '
          <article-title>Plausible repairs for inconsistent requirements'</article-title>
          ,
          <source>in 21st International Joint Conference on Artificial Intelligence (IJCAI'09)</source>
          , pp.
          <fpage>791</fpage>
          -
          <lpage>796</lpage>
          , Pasadena, CA, USA, (
          <year>2009</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Schubert</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Zehentner</surname>
          </string-name>
          , '
          <article-title>An efficient diagnosis algorithm for inconsistent constraint sets'</article-title>
          ,
          <source>Artificial Intelligence for Engineering Design, Analysis and Manufacturing (AI EDAM)</source>
          ,
          <volume>26</volume>
          (
          <issue>1</issue>
          ),
          <fpage>53</fpage>
          -
          <lpage>62</lpage>
          , (
          <year>2012</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>A.</given-names>
            <surname>Fijany</surname>
          </string-name>
          and
          <string-name>
            <given-names>F.</given-names>
            <surname>Vatan</surname>
          </string-name>
          , '
          <article-title>New approaches for efficient solution of hitting set problem'</article-title>
          ,
          <source>in Winter International Symposium on Information and Communication Technologies</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>6</lpage>
          , Cancun, Mexico, (
          <year>2004</year>
          ). Trinity College Dublin.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>Gerhard</surname>
            <given-names>Fleischanderl</given-names>
          </string-name>
          , Gerhard E. Friedrich, Alois Haselbo¨ck, Herwig Schreiner, and Markus Stumptner, '
          <article-title>Configuring large systems using generative constraint satisfaction'</article-title>
          ,
          <source>IEEE Intelligent Systems</source>
          ,
          <volume>13</volume>
          (
          <issue>4</issue>
          ),
          <fpage>59</fpage>
          -
          <lpage>68</lpage>
          , (
          <year>1998</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>G.</given-names>
            <surname>Friedrich</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Ryabokon</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Falkner</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . Haselbo¨ck, G. Schenner, and
          <string-name>
            <given-names>H.</given-names>
            <surname>Schreiner</surname>
          </string-name>
          , '
          <article-title>(Re)configuration using Answer Set Programming'</article-title>
          ,
          <source>in IJCAI 2011 Workshop on Configuration</source>
          , pp.
          <fpage>17</fpage>
          -
          <lpage>24</lpage>
          , (
          <year>2011</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>L.</given-names>
            <surname>Hotz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Stumptner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Ryabokon</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Bagley</surname>
          </string-name>
          , and
          <string-name>
            <given-names>K.</given-names>
            <surname>Wolter</surname>
          </string-name>
          , '
          <article-title>Configuration Knowledge Representation &amp; Reasoning', in Knowledge-based Configuration -</article-title>
          From Research to Business Cases, eds.,
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Hotz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Bagley</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Tiihonen</surname>
          </string-name>
          , chapter
          <volume>6</volume>
          ,
          <fpage>59</fpage>
          -
          <lpage>96</lpage>
          , Morgan Kaufmann Publishers, (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>D.</given-names>
            <surname>Jannach</surname>
          </string-name>
          , '
          <article-title>Finding preferred query relaxations in content-based recommenders'</article-title>
          ,
          <source>in 3rd Intl. IEEE Conference on Intelligent Systems</source>
          , pp.
          <fpage>355</fpage>
          -
          <lpage>360</lpage>
          , London,
          <string-name>
            <surname>UK</surname>
          </string-name>
          , (
          <year>2006</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <surname>Ulrich</surname>
            <given-names>Junker</given-names>
          </string-name>
          , '
          <article-title>QUICKXPLAIN: preferred explanations and relaxations for over-constrained problems'</article-title>
          ,
          <source>in 19th Intl. Conference on Artifical Intelligence (AAAI'04)</source>
          , eds., Deborah L.
          <source>McGuinness and George Ferguson</source>
          , pp.
          <fpage>167</fpage>
          -
          <lpage>172</lpage>
          . AAAI Press, (
          <year>2004</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>A.</given-names>
            <surname>Mackworth</surname>
          </string-name>
          , '
          <article-title>Consistency in Networks of Relations'</article-title>
          ,
          <source>Artificial Intelligence</source>
          ,
          <volume>8</volume>
          (
          <issue>1</issue>
          ),
          <fpage>99</fpage>
          -
          <lpage>118</lpage>
          , (
          <year>1977</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>J.</given-names>
            <surname>Marques-Silva</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Heras</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Janota</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Previti</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Belov</surname>
          </string-name>
          , '
          <article-title>On computing minimal correction subsets'</article-title>
          ,
          <source>in IJCAI 2013</source>
          , pp.
          <fpage>615</fpage>
          -
          <lpage>622</lpage>
          , Peking, China, (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>I.</given-names>
            <surname>Nica</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Wotawa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Ochenbauer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Schober</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Hofbauer</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Boltek</surname>
          </string-name>
          , 'Kapsch:
          <article-title>Reconfiguration of Mobile Phone Networks', in Knowledge-based Configuration -</article-title>
          From Research to Business Cases, eds.,
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Hotz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Bagley</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Tiihonen</surname>
          </string-name>
          , chapter
          <volume>19</volume>
          ,
          <fpage>287</fpage>
          -
          <lpage>300</lpage>
          , Morgan Kaufmann Publishers, (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>R.</given-names>
            <surname>Reiter</surname>
          </string-name>
          , '
          <article-title>A theory of diagnosis from first principles'</article-title>
          ,
          <source>Artificial Intelligence</source>
          ,
          <volume>32</volume>
          (
          <issue>1</issue>
          ),
          <fpage>57</fpage>
          -
          <lpage>95</lpage>
          , (
          <year>1987</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>M.</given-names>
            <surname>Schubert</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          , 'BFX:
          <article-title>Diagnosing Conflicting Requirements in Constraint-based Recommendation'</article-title>
          ,
          <source>International Journal on Artificial Intelligence Tools</source>
          ,
          <volume>20</volume>
          (
          <issue>2</issue>
          ),
          <fpage>297</fpage>
          -
          <lpage>312</lpage>
          , (
          <year>2011</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <surname>I. Shah</surname>
          </string-name>
          , '
          <article-title>Direct algorithms for finding minimal unsatisfiable subsets in over-constrained csps'</article-title>
          ,
          <source>International Journal on Artificial Intelligence Tools</source>
          ,
          <volume>20</volume>
          (
          <issue>1</issue>
          ),
          <fpage>53</fpage>
          -
          <lpage>91</lpage>
          , (
          <year>2011</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <surname>Carsten</surname>
            <given-names>Sinz</given-names>
          </string-name>
          , Andreas Kaiser, and Wolfgang Ku¨chlin, '
          <article-title>Formal methods for the validation of automotive product configuration data'</article-title>
          ,
          <source>Artificial Intelligence for Engineering Design, Analysis and Manufacturing</source>
          ,
          <volume>17</volume>
          (
          <issue>1</issue>
          ),
          <fpage>75</fpage>
          -
          <lpage>97</lpage>
          , (
          <year>2003</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>G.</given-names>
            <surname>Steinbauer</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <article-title>Mo¨rth, and</article-title>
          <string-name>
            <given-names>F.</given-names>
            <surname>Wotawa</surname>
          </string-name>
          , '
          <article-title>Real-Time Diagnosis and Repair of Faults of Robot Control Software'</article-title>
          ,
          <source>in RoboCup</source>
          <year>2005</year>
          , LNAI, pp.
          <fpage>13</fpage>
          -
          <lpage>23</lpage>
          . Springer, (
          <year>2005</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>M.</given-names>
            <surname>Stumptner</surname>
          </string-name>
          , '
          <article-title>An Overview of Knowledge-based Configuration'</article-title>
          ,
          <source>AI Communications</source>
          ,
          <volume>10</volume>
          (
          <issue>2</issue>
          ),
          <fpage>111</fpage>
          -
          <lpage>126</lpage>
          , (
          <year>1997</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>M.</given-names>
            <surname>Stumptner</surname>
          </string-name>
          and
          <string-name>
            <given-names>F.</given-names>
            <surname>Wotawa</surname>
          </string-name>
          , '
          <article-title>Reconfiguration using model-based diagnosis'</article-title>
          ,
          <source>in 10th International Workshop on Principles of Diagnosis (DX-99)</source>
          , pp.
          <fpage>266</fpage>
          -
          <lpage>271</lpage>
          , (
          <year>1999</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>J.</given-names>
            <surname>Tiihonen</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Anderson</surname>
          </string-name>
          , '
          <article-title>VariSales', in Knowledge-based Configuration -</article-title>
          From Research to Business Cases, eds.,
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Hotz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Bagley</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Tiihonen</surname>
          </string-name>
          , chapter
          <volume>26</volume>
          ,
          <fpage>377</fpage>
          -
          <lpage>388</lpage>
          , Morgan Kaufmann Publishers, (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>J.</given-names>
            <surname>Tiihonen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Mayer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Stumptner</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Heiskala</surname>
          </string-name>
          , '
          <article-title>Configuring Services and Processes', in Knowledge-based Configuration -</article-title>
          From Research to Business Cases, eds.,
          <string-name>
            <given-names>A.</given-names>
            <surname>Felfernig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Hotz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Bagley</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Tiihonen</surname>
          </string-name>
          , chapter
          <volume>21</volume>
          ,
          <fpage>313</fpage>
          -
          <lpage>324</lpage>
          , Morgan Kaufmann Publishers, (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>R.</given-names>
            <surname>Walter</surname>
          </string-name>
          and W. Ku¨chlin, '
          <string-name>
            <surname>ReMax - A MaxSAT aided Product (Re-) Configurator</surname>
          </string-name>
          ',
          <source>in Workshop on Configuration</source>
          <year>2014</year>
          , pp.
          <fpage>55</fpage>
          -
          <lpage>66</lpage>
          , (
          <year>2014</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          [29]
          <string-name>
            <given-names>R.</given-names>
            <surname>Walter</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Zengler</surname>
          </string-name>
          , and W. Ku¨chlin, '
          <article-title>Applications of maxsat in automotive configuration'</article-title>
          ,
          <source>in Workshop on Configuration</source>
          <year>2013</year>
          , pp.
          <fpage>21</fpage>
          -
          <lpage>28</lpage>
          , (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          [30]
          <string-name>
            <given-names>K.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Ai</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Y.</given-names>
            <surname>Zhang</surname>
          </string-name>
          , '
          <article-title>Computing Minimal Diagnosis with Binary Decision Diagrams Algorithm'</article-title>
          ,
          <source>in 6th International Conference on Fuzzy Systems and Knowledge Discovery (FSKD'2009)</source>
          , pp.
          <fpage>145</fpage>
          -
          <lpage>149</lpage>
          , (
          <year>2009</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          [31]
          <string-name>
            <given-names>F.</given-names>
            <surname>Wotawa</surname>
          </string-name>
          , '
          <article-title>A variant of reiter's hitting-set algorithm'</article-title>
          ,
          <source>Information Processing Letters</source>
          ,
          <volume>79</volume>
          (
          <issue>1</issue>
          ),
          <fpage>45</fpage>
          -
          <lpage>51</lpage>
          , (
          <year>2001</year>
          ).
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>