<!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 />
    <article-meta>
      <title-group>
        <article-title>mendation of Complex Items</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Mathias Uta</string-name>
          <email>mathias.uta@siemens-energy.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Alexander Felfernig</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Denis Helic</string-name>
          <email>dhelic@tugraz.at</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Environments (ComplexRec) Joint Workshop @ RecSys 2021</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Graz University of Technology</institution>
          ,
          <addr-line>Rechbauerstraße 12, 8010, Graz</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Siemens Energy AG</institution>
          ,
          <addr-line>Freyeslebenstraße 1, 91058, Erlangen</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff3">
          <label>3</label>
          <institution>Workshop Proce dings</institution>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2021</year>
      </pub-date>
      <abstract>
        <p>In contrast to basic items such as movies, books, and songs, configurable items consist of individual subcomponents that can be combined following a predefined set of constraints. Due to the increasing size and complexity of configurable items (e.g., cars and software), a simple enumeration of all possible configurations in terms of a product catalog is not possible. Configuration systems try to identify a solution (configuration) that takes into account both, the preferences of the user and a set of constraints that defines in which way individual subcomponents are allowed to be combined. Due to time limitations, cognitive overloads, and missing domain knowledge, configurator users are in many cases not able to completely specify their preferences with regard to all relevant component properties. As a consequence, recommendation technologies need to be integrated into configurators that are able to predict the relevance of individual components for the current user. In this paper, we show how the determination of configurations can be supported by neural network based recommendation. This approach helps to predict user-relevant item properties using historical interaction data. In this context, we introduce a semantic regularization approach that helps to take into account configuration constraints within the scope of neural network learning. Furthermore, we demonstrate the applicability of our approach on the basis of an evaluation in an industrial configuration scenario (high-voltage switchgear configuration).</p>
      </abstract>
      <kwd-group>
        <kwd>Recommender systems</kwd>
        <kwd>Knowledge representation and reasoning</kwd>
        <kwd>Neural networks</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>1. Introduction
In contrast to basic items such as books, movies, and
songs, configurable items are composed of
subcomponents which must be combined conform to a set of
predefined constraints [ 1]. For reasons of combinatorial
explosion, it is in many cases impossible to enumerate
the individual items (configurations) in terms of a
product catalog. Related example domains are automotive [2],
software</p>
      <p>(e.g., configuration of operating systems) [ 3],
and telecommunication infrastructures [4]. Due to the
increasing size and complexity of configurable items, it
becomes important to integrate recommendation
algorithms into configuration processes to support users in
component and/or parameter selection.</p>
      <p>Informally, configuration can be regarded as a product
design activity where the resulting item (also denoted as
product or configuration) is composed of elements of a
pre-defined set of basic components/parameters [ 1]. In
this context, the chosen components must be consistent
with a given set of constraints that define restrictions
regarding the possible component combinations. On the
nEvelop-O
LGOBE
3rd Edition of Knowledge-aware and Conversational Recommender
Systems (KaRS) &amp; 5th Edition of Recommendation in Complex
0000-0002-1670-7508 (M. Uta); 0000-0003-0108-3146
(A. Felfernig); 0000-0003-0725-7450 (D. Helic)
types of decision-theoretic optimizations. An overview
of existing integration approaches of recommendation
2. Working Example
technologies into configuration systems is provided a.o.
in Falkner et al. [13]. Existing integrations focus on a
2-phase process where recommendations of feature set- As a basis for the following discussions on integrating
tings are predetermined and then recommended to the neural network based predictions of user preferences, we
user. In the case of inconsistent recommendations, alter- first introduce the definition of a configuration task (see
native recommendations are calculated repeatedly until Definition 1).
a consistent recommendation can be presented. Definition 1 . A configuration task can be defined by a</p>
      <p>Compared to existing approaches to the integration tuple ( , , , ) where  = { 1,  2, ..,   } is a set of
fiof recommendation algorithms with configuration, we nite domain variables,  = {( 1), ( 2), .., (  )}
show how to take into account configuration constraints is a set of corresponding domain definitions, and  =
already in the learning phase and thus minimize the prob- { 1,  2, ..,   } is a set of rules that define how a
configuraability of inconsistent recommendations to be detected in tion can be derived from a given set of customer
requirethe subsequent configuration phase. In this paper, we fol- ments  = {  =    , ..,   =    } where elements of
low the idea of case-based recommendation [16] where  are regarded as variable value assignments.
historical configurations with similar parameter settings A simple example of a configuration task definition
as those already specified by the current user are used as is the following (see Example 1) where  represents
a basis for identifying nearest-neighbor configurations. a park distance control feature and   represents fuel
In our work, we use such a case-based approach as a consumption in gallons/100miles.
baseline version. This version is then compared with two
diferent versions of a feed-forward neural network based Example 1: Configuration Task .
configurator integration. The first version focuses on the •  = { , ,  , , 4 - ℎ ,  }
prediction of configuration parameter settings relevant •  = {( ) =
for the user. The second version follows the same goal { , , ,   }, () = { , },
but also takes into account the fact that recommenda- ( ) = {1.7, 2.6, 4.2}, () =
tions should be consistent with the underlying constraint { , }, (4 - ℎ ) = { , }, ( ) =
set. To support this goal, we propose a semantic regular- { , }}
ization of a feed-forward (multi-class and multi-branch)
neural network that is used as a configuration parameter •  = { 1 ∶ 4- ℎ  =   →   =   ,  2 ∶
prediction model.  =   →   ≠  ,  3 ∶   = 1.7 →</p>
      <p>
        The major contributions of this paper are the follow-   =  ,  4 ∶   = 2.6 ∧   =    →
ing. (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) we introduce a semantic regularization approach  ,  5 ∶   =  →  =  ,  6 ∶
specifically useful for integrating case-based recommen-   =  →  =  }
dation with rule-based configuration environments, (
        <xref ref-type="bibr" rid="ref2">2</xref>
        ) •  = {  =  ,  =  ,   = 1.7}
we compare the predictive quality of the developed ap- Given the definition of a configuration task
proach on the basis of a real-world dataset from a complex ( , , , ) , we are able to introduce the definition
industrial configuration task (high-voltage switchgear of a corresponding configuration (solution for a
configuration) with regard to the evaluation criteria of configuration task) – see Definition 2.
prediction quality and recommendation consistency, and Definition 2 . A configuration for a given configuration
(
        <xref ref-type="bibr" rid="ref3">3</xref>
        ) we show how the presented results can be further task definition ( , , , ) is a set of variable
assignbgeeynToehrneadlrirezumeldea-tibonadbseeerdaopcfoptnlhifigciausbrpaleatipfooenrr. cisonorfigguarnatizioend sacsenfoalrloiows s. A⊆m ecno∶tnsfig u=ra{tion i∈s (1 c=o m p)l1ea,tn.e.d,if(e =a∪c ∪h)va}rwiahbelerein∀{   h=a s a n}.
In Section 2, we introduce a working example in terms assignment in   .
of a simplified configuration knowledge base from the
automotive domain. In this context, we also introduce An example configuration   for the configuration
the concepts of a configuration task and a corresponding task of Example 1 is the following (see Example 2).
configuration. Thereafter, in Section 3, we introduce our Example 2.   = {  =  ,  =  ,   =
neural network based approach to the recommendation 1.7,  = , 4 - ℎ  = ,  =  }
of configuration parameter settings. In Section 4, we sum- We regard a configuration as complete if each of the
marize our evaluation approach and report the results variables in  is associated with a corresponding value
of an evaluation conducted on the basis of a real-world assignment and these assignments are consistent with the
dataset from the domain of high-voltage switchgear con- rules in  . As already mentioned, in many configuration
ifguration. The paper is concluded with an overview of scenarios users are not able or do not want to specify
future research issues (Section 5). values for all the defined variables in  but are interested
in recommendations that help to more easily complete a
configuration session [ 13]. We now introduce a definition 1–3 have already been completed. The current session
of a recommendation in the context of a configuration is ongoing and we are interested in a recommendation
task (see Definition 3). for the variables skibag, 4-wheel, and color. For the
pur
      </p>
      <p>Definition 3 . Given the definition of a configuration poses of this example and also for discussing the neural
task ( , , , ) , a corresponding recommendation network based recommendation approach, we apply a
 = {  =    , ..,   =    } is a set of variable value one hot encoding of the configuration variables, for
examassignments of   ∈  . A recommendation  is consis- ple, in session 1, the configured car is of type city. In the
tent if  ∪  ∪  is consistent, i.e., a solution can be scenario shown in Table 1, a simple case-based
reasonfound. ing recommender would search for one or more nearest
neighbors (NN) and recommend the variable settings that</p>
      <p>Example 3.  = { = , 4 - ℎ  = ,  = were choosen most often by the nearest neighbors. In
 } our example, the nearest neighbor (session) of the current</p>
      <p>Following the approach of case-based reasoning [16], session is session 3 (in terms of the number of equivalent
it can be the case that recommended variable value as- variable values). If we assume |NN|=1, we would
recomsignments are inconsistent with the already defined user mend  = { = , 4 - ℎ  = ,  = } to
requirements and the rules (constraints) defined in the the user in the current session (if we intend to predict all
knowledge base. This is the case if recommendations unspecified variable values at the same time).
are determined from already completed configuration Importantly, since the current user is interested in a
sessions without taking into account configuration con- car of type combi which requires the inclusion of a skibag
straints (rules in  ). In the following, we provide a simple (see Example 1), such a recommendation ( ) induces
example of a case-based reasoning approach and then an inconsistency between the user requirements and the
focus on how to take into account configuration rules configuration knowledge base (the set of rules  ). A
in terms of a semantic regularization when optimizing a traditional approach to deal with such a situation is to
neural network responsible for recommending variable test the next recommendation for consistency and do this
settings. until a consistent recommendation could be found [13].
Our approach (that will be introduced in the following)
3. Recommending Configurable to deal with such a situation is to introduce a semantic
regularization into the neural network learning phase
Items which helps to avoid inconsistent recommendations as
far as possible.</p>
      <p>As already sketched in the previous section,
recommendations in the context of configuration scenarios are
represented by a set of attribute assignments, i.e., a
recommendation could include a single attribute setting but also
numerous settings recommended at the same time. In this
section, we discuss diferent approaches to recommend
variable value settings in the context of knowledge-based
configuration scenarios.</p>
      <p>Neural Network based Recommendation Our
basic approach to recommend variable values in the context
of rule-based configuration is based on the feed-forward
neural network structure depicted in Figure 1. In such
networks, the input layer consists of possible values
(represented in terms of a one hot encoding) that have already
been specified by a user. For example, the variable values
(preferences) that have already been specified by the user
Case-based Recommendation Table 1 represents a in session    are {  = ,  = ,   = 2.6} .
simple example of a set of already completed configu- Networks as those depicted in Figure 1 can be trained
rations that can be used as a basis for determining rec- in a domain-dependent fashion on the basis of a dataset
ommendations. In this example, configuration sessions
type = city
  =</p>
      <p>
        ...
fuel = 1.7
comprised of already completed configuration sessions Constraint-Aware Recommendation For reasons
(see Sessions 1–3 in Table 1). Furthermore, the hidden of potentially inconsistent recommendations, we have
layer is used for learning dependencies between input introduced an enhanced neural network learning phase
values selected by the user and corresponding variable including a semantic regularization where inconsistent
values of potential relevance for the user. The number of recommendations are taken into account as
regularizanodes in the hidden layer is regarded as hyper-parameter tion term. In other words, although parts of the
domainto be optimized in an item domain dependent fashion (in specific rules/constraints can be learned from the
under[17] an equal amount of neurons in the input layer and lying training dataset, it can be the case that some or
the hidden layer showed the best performance). Finally, even many constraints are neglected and the resulting
the output layer supports a multi-branch approach (one variable value recommendations induce an inconsistency.
branch per variable) where each branch  is splitted into We denote this approach as constraint-aware neural
net output nodes representing the diferent domain val- works which are extremely relevant in recommendation
ues of variable   . In contrast to the input and hidden scenarios where domain-specific constraints/rules have
layer which use a ReLU activation function, classification to be taken into account by the recommender. To
reis implemented using softmax . The choice of the train- duce the probability of inconsistent variable value
recing hyper-parameters has been made based on several ommendations, knowledge base rules/constraints are
test executions. Optimizer “Adam” [18] has shown the taken into account in the learning process. This goal
best performance compared to other gradient decent op- is achieved by integrating the results of a consistency
timizers like “ADAGRAD”, “RMSProp” and “SGD” [19]. check of the proposed recommendation  (more
pre“Adam” uses adaptive estimation of first order and sec- cisely,  ∪  ∪  ) into a corresponding loss function
ond order moments, which slows down the adjustment as shown in Formula 1.
soeflnecetuerdonpawraemigehttesrtshfeomrtohree “sAtedpasmh”avoeptbimeeinzedrownee.reTahne () ←   () + Ω() +  × Π() (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )
initial learning rate of 0.001, 1 = 0.9 and 2 = 0.999 . In this context, () denotes a loss function on the
vecPlease note that this network architecture assumes cate- tor  of weights in the neural network,   () denotes
gorical variables (e.g., similar to our Example 1) – other the prediction loss, Ω() represents a corresponding 2
variable types require preprocessing such as binning or regularization term,  represents a hyper-parameter that
alternative architectures. Our neural network derived controls the impact of an inconsistency on the overall
from the knowledge base introduced in Section 2 consists loss, and Π() indicates whether the recommendation
reof 6 output nodes and also 9 input nodes (assuming the sulting from  is consistent (0 is returned) or inconsistent
example from above). (1 is returned). As Π() is a discrete non-diferentiable
      </p>
      <p>
        In the basic version of our approach, neural networks function, the optimization of our loss function has to
are trained on the basis of training dataset (see, e.g., ses- resort to approximation of gradients via computation of
sions (1–3 in Table 1).The usage scenario of this basic ifnite diferences.
neural network approach is the following: if a user
interacts with a configurator and has already specified a set of User Interaction and Knowledge Representation
initial requirements ( ), the neural network can be ex- Our approach to neural network based variable value
recploited for the recommendation of variable values. Since ommendation for knowledge-based configuration helps
the basic version of the neural network can only learn to reduce the probability of inconsistency-inducing
recconstraints/rules from the available set of completed con- ommendations (see Section 4) and thus also can help to
ifgurations, it can be the case that predictions induce an make configuration processes less time-consuming for
inconsistency with the underlying rule set. users. The proposed recommendation approach is
flexible in the sense that recommendations for single-variable
assignments as well as combined variable assignment
recommendations can be supported. In our working ex- veloped a case-based reasoning approach (see Section 3)
ample, we did not take into account settings, where a that recommends variable value settings on the basis of
configuration task is organized in phases where in each the preferences of the  nearest neighbors (in the given
phase a specific subcomponent of the product is config- setting,  = 1 achieved the highest prediction quality).
ured (e.g., software configuration as part of the configu- Furthermore, the two versions of the neural network
ration of a whole computer). On the user interface level, based approach have been implemented on the basis of
recommendations are mostly related to variables within the Keras API [21]. 2 The learning of the neural network
a specific phase. However, recommendations can also model is based on 32 iterations during the learning phase
be determined on the basis of existing variable settings of the model where 80% of the data is used for training
from diferent phases. purposes and 20% for testing. The first version of the
neural network model has been trained without taking
Recommendation Consistency The achievable de- into account the rules in the configuration knowledge
gree of recommendation consistency also depends on base whereas the learning of the model for the second
the used knowledge representation. In the case of a rule- version is based on the loss function included in Formula
based knowledge representation [6], it is not always fea- 1. For validation of the models they have been applied
sible to correctly predict if it is possible to complete a separately to 20 configurations which where not part of
partial configuration, i.e., given a (consistent) set of cus- the training or testing data.
tomer requirements, is it possible to find assignments
for the remaining variables in such a way that a consis- Prediction Quality Our first goal was to analyze the
tent and complete configuration can be achieved. If a prediction quality of the three variable value
recommenmore compact representation of all satisfiable variable dation approaches discussed in this paper: (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) case-based
assignments is available [20], our approach can be ap- recommendation, (
        <xref ref-type="bibr" rid="ref2">2</xref>
        ) neural network based
recommendaplied to recommend the most relevant option among the tion, and (
        <xref ref-type="bibr" rid="ref3">3</xref>
        ) neural network based recommendation with
consistent ones. In a similar fashion, constraint-based semantic regularization. To measure the prediction
qualapproaches [5] can be applied to infer remaining vari- ity, precision has been chosen as the key performance
able assignments that are still consistent with  and indicator. The precision of the recommendation of a
 . In the following, we present the results of an empir- configuration   has been measured in terms of the
ical analysis of our constraint-aware recommendation share of predictions part of the configuration accepted by
approach using a real-world dataset from the domain of the user  in relation to the total number of predictions
high-voltage switchgear configuration . contained in   , see equation 2. In the context of our
evaluation, we were specifically interested in the
predictive performance depending on the number of already
4. Evaluation known attribute values. The prediction task was specified
in such a way that given a chosen set of input attributes
(the known settings representing  ), the task was to
predict all other missing attributes to complete the
conifguration. Since our configurator is organized in 5
conifguration phases, the phase number of a to be predicted
variable had to be equal to the number of the current
configuration phase and the phase number of known
variables ( ) had to be lower or equal to the phase
number of the to be predicted variable. Consequently, the
missing attributes were iterative predicted by selecting in
each iteration the values for those attributes part of the
configuration phase with the lowest phase number. In
the following iteration the previously predicted variables
have been utilized as known variables for predicting the
variables of the next configuration phase. This has been
repeated till the configuration was complete.
      </p>
      <p>The configurator application for the high-voltage
switchgear domain has been developed with the goal to
reduce engineering efort during the ofering stage of
these highly complex systems. The underlying dataset
includes  = 720 complete configurations developed by
skilled sales employees from Siemens Energy AG. Each
entry of the dataset consists of  = 60 attribute settings
(assignments), i.e., each configuration is described by 60
variables (representing features and subcomponents). In
this context, 10 out of the 60 variables have been defined
as basic switchgear features which are assumed to be
selected by the user before a recommendation can be
triggered (e.g., basic switchgear category to be installed).</p>
      <p>The focus of recommendation are the remaining 50 more
specific features with a sometimes lower degree of
understandability where it is often an issue for users to find
good or even optimal settings (e.g., AC supply voltage).</p>
      <p>The dataset is composed of consistent configurations that
have been built on the basis of a rule-based configuration
system.1 As a baseline in our evaluation, we have
de|</p>
      <p>∩ |
|  |</p>
      <p>
        (
        <xref ref-type="bibr" rid="ref2">2</xref>
        )
       =
avg. precision without SR
avg. precision with SR
avg. precision of CBR
avg. consistency without SR
avg. consistency with SR
avg. consistency of CBR
0
10 20 30 40 50
number of already known variable values
      </p>
      <p>
        60
Consistency We were also interested in the degree of
consistency of the determined recommendations  ,
i.e., consistent( ∪  ∪  ). The consistency of the
recommendation of a configuration   has been
measured in terms of the share of knowledge base consistent 0 n1u0mber of20already k3n0own var4ia0ble valu5e0s 60
predictions  ∗ part of the recommendation in relation
to the total number of predictions contained in   , see Figure 3: Consistency of high voltage switchgear related
equation 3. As can be seen in Figure 3, the semantic reg- rperaesdoicntiinogn)s. (SR = semantic regularization, CBR = case-based
ularization helps to decrease the inconsistency degree of
recommendations (compared to the CBR and the basic
neural network based approach). Starting with a consis- rators and compared it with cased-based and basic neural
tency of 95.27% (ten variables values already known) the network based recommendation. To improve the
predicneural network based approach with semantic regulariza- tion quality and consistency of recommendations, we
tion (
        <xref ref-type="bibr" rid="ref3">3</xref>
        ) reaches already with 30 initially known variable have introduced a semantic regularization approach that
values a consistency of 100%. Both other approaches (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) helps to further increase the consistency degree of
recand (
        <xref ref-type="bibr" rid="ref2">2</xref>
        ) achieve poorer results with ten initially given vari- ommendations especially in the context of rule-based
able values 93.59% (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) and 94.88% (
        <xref ref-type="bibr" rid="ref2">2</xref>
        ) and reach a consis- configuration scenarios. The presented approach has
tency of 100% not until 40 variables are initially specified. been integrated into a industrial rule-based configuration
All in all, the higher consistency of approach (
        <xref ref-type="bibr" rid="ref3">3</xref>
        ) includ- environment that focuses on the configuration of
highing the semantic regularization has been expected since voltage switchgears. The presented approach can
inthis approach is penalizing non-consistent predictions crease both, prediction quality and consistency of the
deduring the learning phase of the model. Nevertheless, termined recommendations. Furthermore, the approach
the impact could have been higher and the consistency is generalizable to other types of configuration
knowlespecially with a low number of initially known variable edge representations such as constraint satisfaction
probvalues is improvable. To achieve this an optimization lems (CSPs).
of the hyper-parameter  is desirable and part of future Future work will focus on the integration of the
dework. veloped concepts into model-based configuration
knowledge representations such as CSPs [5]. Furthermore, we
will extend the scope of considered machine learning
ap      = | ∗ ∩   | proaches a.o. with an integration of matrix factorization
|  | based variable value prediction. The dataset size used for
(
        <xref ref-type="bibr" rid="ref3">3</xref>
        ) the evaluation presented in this paper can be considered
as a limitation of this work, in particular w.r.t. neural
5. Conclusions and Future Work network models. A major focus of future work will be
the evaluation of our approach with larger industrial
conWe have introduced an approach to the integration of figuration datasets. The neural network based prediction
recommendation features into knowledge-based configu- models will also be evaluated for their applicability in
the context of diagnosis scenarios, i.e., scenarios where tion using the minimax decision criterion, Artificial
users receive recommendations regarding requirements Intelligence 170 (2006) 686–713.
changes that help to get out from an inconsistent situa- [12] J. Goldsmith, U. Junker, Preference handling for
tion. Also, we plan to investigate alternative formulations artificial intelligence, AI Magazine 29 (2008) 9–12.
of the optimization problem, for example, with consis- [13] A. Falkner, A. Felfernig, A. Haag, Recommendation
tency conditions being (partially) defined as optimization technologies for configurable products, AI
Magaconstraints. Finally, although already integrated into the zine 32 (2011) 99–108.
configuration environment of Siemens Energy, the evalu- [14] M. Zanker, A Collaborative Constraint-based
Metaation of the proposed recommendation approach will be level Recommender, in: ACM RecSys, ACM,
Laufurther extended especially with regard to the quality of sanne, Switzerland, 2008, pp. 139–146.
the user interface and the need of additional explanations [15] D. Jannach, L. Kalabis, Incremental prediction of
for the proposed recommendations. configurator input values based on association rules
– a case study, in: Proceedings Workshop on
Conifguration, 2011, pp. 32–35.
      </p>
      <p>References [16] B. Smyth, Case-Based Recommendation, in: The
Adaptive Web, volume 4321 of LNCS, Springer,</p>
      <p>Berlin, Heidelberg, 2007, pp. 342–376.
[17] M. Uta, A. Felfernig, Towards machine
learning based configuration, in: C. Forza, L. Hvam,
A. Felfernig (Eds.), 22nd International
Configuration Workshop, 2020, pp. 25–28.
[18] D. P. Kingma, J. Ba, Adam: A method for stochastic</p>
      <p>optimization, 2017. a r X i v : 1 4 1 2 . 6 9 8 0 .
[19] S. Ruder, An overview of gradient descent
optimization algorithms, CoRR abs/1609.04747 (2016). URL:
http://arxiv.org/abs/1609.04747.
[20] H. Andersen, H. Hulgaard, Boolean Expression
Diagrams, in: 12th IEEE Symp. on Logic in Computer</p>
      <p>Science, IEEE, Warsaw, Poland, 1997, pp. 88–98.
[21] F. Chollet, Keras, https://github.com/fchollet/keras,
2015.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>M.</given-names>
            <surname>Stumptner</surname>
          </string-name>
          ,
          <article-title>An overview of knowledge-based configuration</article-title>
          ,
          <source>AI</source>
          Communications
          <volume>10</volume>
          (
          <year>1997</year>
          )
          <fpage>111</fpage>
          -
          <lpage>125</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>J.</given-names>
            <surname>Landahl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Bergsjö</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Johannesson</surname>
          </string-name>
          ,
          <article-title>Future Alternatives for Automotive Configuration Management</article-title>
          ,
          <source>Procedia Computer Science</source>
          <volume>28</volume>
          (
          <year>2014</year>
          )
          <fpage>103</fpage>
          -
          <lpage>110</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>J.</given-names>
            <surname>Sincero</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Schröder-Preikschat</surname>
          </string-name>
          ,
          <article-title>The linux kernel configurator as a feature modeling tool</article-title>
          , in: Workshop on Analyses of Software Product Lines,
          <string-name>
            <surname>ASPL</surname>
          </string-name>
          , Limerick, Ireland,
          <year>2008</year>
          , pp.
          <fpage>257</fpage>
          -
          <lpage>260</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>G.</given-names>
            <surname>Fleischanderl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Friedrich</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Haselböck</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Schreiner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Stumptner</surname>
          </string-name>
          ,
          <article-title>Configuring large systems using generative constraint satisfaction</article-title>
          ,
          <source>IEEE Intelligent Systems</source>
          <volume>13</volume>
          (
          <year>1998</year>
          )
          <fpage>59</fpage>
          -
          <lpage>68</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>E.</given-names>
            <surname>Tsang</surname>
          </string-name>
          ,
          <article-title>Foundations of Constraint Satisfaction, Computation in cognitive science</article-title>
          , Academic Press, London, UK,
          <year>1993</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>D.</given-names>
            <surname>Dhungana</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Tang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Weidenbach</surname>
          </string-name>
          , P. Wischnewski,
          <source>Automated Verification of Interactive Rule-based Configuration Systems, in: 28th IEEE/ACM Intl. Conference on Automated Software Engineering</source>
          , IEEE, Silicon Valley, CA, USA,
          <year>2013</year>
          , pp.
          <fpage>551</fpage>
          -
          <lpage>561</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>R.</given-names>
            <surname>Burke</surname>
          </string-name>
          ,
          <article-title>Knowledge-based recommender systems</article-title>
          ,
          <source>Encyclopedia of Library and Information Systems</source>
          <volume>69</volume>
          (
          <year>2000</year>
          )
          <fpage>180</fpage>
          -
          <lpage>200</lpage>
          .
        </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>G.</given-names>
            <surname>Friedrich</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Jannach</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Zanker</surname>
          </string-name>
          ,
          <article-title>Constraint-based Recommender Systems</article-title>
          , in: Recommender Systems Handbook, 2 ed., Springer, Boston, MA,
          <year>2015</year>
          , pp.
          <fpage>161</fpage>
          -
          <lpage>190</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>L.</given-names>
            <surname>Chen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Pu</surname>
          </string-name>
          ,
          <article-title>Critiquing-based Recommenders: Survey and Emerging Trends</article-title>
          , UMUAI
          <volume>22</volume>
          (
          <year>2012</year>
          )
          <fpage>125</fpage>
          -
          <lpage>150</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>D.</given-names>
            <surname>Winterfeldt</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Edwards</surname>
          </string-name>
          ,
          <source>Decision Analysis and Behavioral Research</source>
          , Cambridge University Press, Cambridge, England,
          <year>1986</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>C.</given-names>
            <surname>Boutilier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Patrascu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Poupart</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Schuurmans</surname>
          </string-name>
          ,
          <article-title>Constraint-based optimization and utility elicita-</article-title>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>