<!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>Insights for Configuration in Natural Language</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Andre´s F. Barco</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>E´ lise Vareilles</string-name>
          <email>elise.vareilles@mines-albi.fr</email>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ce´sar I. Osorio</string-name>
          <email>ciosoriodg@usbcali.edu.co</email>
        </contrib>
      </contrib-group>
      <abstract>
        <p>Usually, in configuration processes, customers interact with a decision support system, also named configurator, by explicitly selecting components or required functionalities through a written series of questions, until the complete configuration is done and the desired product is defined. The interactions during a configuration process may vary vastly depending on the customers' knowledge about the product and his/her understanding of its potential functionalities. However, configurators are not conceived for making a difference between expert and inexpert customers as interfaces and input information are all expected to be the same for everyone. This paper discusses how natural language can enhance configuration process by making possible for customers to express their desires, needs and preferences in natural language, and for configurators to interpret their words and better help them to find relevant solutions. This kind of configuration process could have as foundations an expert systems that that maps speech into constraints and objectives. We present the artificial intelligence trends motivating our research, an initial architectural design and potential applications of the research.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        For several decades now, customers want to bring a personal touch to
their products to make them special and unique. To meet this
growing demand of personalization, companies nowadays no longer
offer standard products, but more and more personalizable ones [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
Thanks to the Web technologies and dedicated decision support
systems, named configurators, this personalization is done directly and
interactively online [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Customers can play with the wide range of
choices and options offered by companies: they can assemble, cut,
color, choose, ..., and visualize the result of their desires and
ultimately order it, all in few clicks and minutes.
      </p>
      <p>
        This concept of personalization or configuration of products
consists in assembling modules or predefined components, to produce a
unique and specific product [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. For businesses, this is a way to
offer personalized products to stand out from the competition and build
customers’ loyalty through more accurately reflecting their tastes and
needs.
      </p>
      <p>
        Interactions between potential customers and configurators,
become now one of the key aspects of configuration problems [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ].
Nevertheless, often the configuration relies in a long data capturing
process. Normally, to configure the product object of desires, any
potential customer has to:
1. Face the increasing range of choices and options without being
completely able to focus on his/her essential items,
      </p>
      <p>
        All these facts gathered make the configuration of products more
and more a counter-intuitive process. Also, current interaction makes
no difference between expert and non-expert user as most of the input
mechanism (such of as graphical windows, drawings, text fields) are
all expected to be the same for everyone [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>This paper discusses how the mature techniques from AI may be
used to allow a more natural interaction between customers and
configuration systems. In essence, we describe the future of
configuration in which natural language interactions could replace the
traditional one based on writing, explicit selection of items and rigid
series of questions. More precisely, we argue that current AI advances
like natural language processing could help customers to express
their needs implicitly in speech format (e.g. “I need a cheap
laptop with good video card”) while an expert system could infer the
requirements and set the goals of the configuration (e.g. video card
good). We call this kind of configuration Configuration in Natural
Language. We also present an idea of architecture of such an expert
system.</p>
      <p>The paper is divided as follows. In Section 2, the traditional and
future customer-system interactions in configuration are discussed.
In section 3, a software architecture based on current advances in AI
is introduced. In Section 4, some of the mathematical frameworks
from which the configuration in natural language can take advantage
are discussed. Finally, in Section 5, some applications of the research
and conclusions are presented.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Configuration Interactions: Past and Future</title>
      <p>We present in this section the interaction typically made in
configuration systems and contrast it with the idea of configuration in natural
language proposed in this paper.
2.1</p>
    </sec>
    <sec id="sec-3">
      <title>Traditional Configuration Interactions</title>
      <p>In most of the cases, configuration systems follow a series of
iterative steps that guide the customer and help him/her to progressively
configure his/her own product. These steps, that we call the standard
way of configuration, are as follows:
1. The system shows some sets of components and functionalities to
the customer in a predefined way,
2. The customer either selects the most relevant component or
functionality which meets his/her needs and desires, or specifies a
value for the most important criteria (such as the price he/she is
willing to pay for the product),
3. The system removes or assigns the set of remaining components
and functionalities according to the set of constraints in the
product,
4. The system computes the price of each possible product and
valuates their criteria.</p>
      <p>In step 2, the selection is usually done manually by clicking on
the relevant item via a mouse-click or a touch screen, or by inputting
its specific value directly from a keyboard. At the end of the standard
way of configuration, the customer selects his/her unique product and
orders it.
2.2</p>
    </sec>
    <sec id="sec-4">
      <title>Future Configuration Interactions</title>
      <p>The configuration in natural language changes the interactions
between customers and configurators. Customers will be able,
whatever their requirements and knowledge about the product, to express
better in a more natural way their preferences, desires and needs and
configure faster their own products. The significant difference
between traditional and forthcoming configuration interactions lies in
the way of expressing and capturing customers’ needs and goals. The
steps for the configuration in natural language are as follows:
1. The system welcomes the customer.
2. The customer writes or says what he/she wants or needs by using
his/her own words.
3. The system infers the set of components and functionality the user
wants or needs, and the goal of the configuration.
4. The system removes or assigns the set of remaining components
and functionalities according to the set of constraints in the
product.
5. The system computes the price of each possible product and
valuates their criteria.</p>
      <p>To exemplify this kind of configuration, limit us to written
interactions in natural language via a keyboard or similar device. Three
examples of such interactions when configuring a computer, and the
respective responses of the inferring engine, are:</p>
      <p>Customer express: “I want a really fast computer but not too
expensive”
System infers: Component(processor, speed, high)
Goal(computer, cost, low)
Customer express: “I just want to play video games, preferably
not heavy so I can carry it easily”
System infers: Component(video card, processing, high)
Goal(computer, weight, low)
Customer express: “I need to write my texts”
System infers: Component(keyboard, comfort, high) Goal(none,
none, none)</p>
      <p>As expected, inferring components or functionalities and
configuration objectives is a major challenge. On the first hand, the universe
of words used by humans to express the same thing may be vast.
Second, the way to build expressions may vary largely depending on
academic background, experience, state of mind and mood, to name a
few. Finally, it is difficult to set a difference between components and
functionalities, and goals; critical to reach an appropriate
configuration solution. For instance, in the first of the two previous examples,
both the processor speed and the computer cost may be seen as
configuration goals. For tackling this challenge, we propose an expert
system architecture built upon AI trends.
3</p>
    </sec>
    <sec id="sec-5">
      <title>AI Trends-based Architecture</title>
      <p>
        The field of AI is generating broad interest. Technological advances
using AI techniques, such as the DeepMind GO system developed
by GoogleTM [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] and the IBM WatsonTM analytic system [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ],
draw the attention of the academic and non-academic world on the
innovative role of mathematical models from computer science and
philosophy. Current trends show that the use of AI and other related
fields are being widely used sectors such as economy, health,
transport industry, aviation and games, among others [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ].
      </p>
      <p>
        The configuration in natural language is motivated by the recent
advances in AI and by industrial trends, in particular the growing
interest in the construction of machines that understand human
emotions and act according to the interaction with human [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. It is
sought that the machines assist decision-making processes whereas
the understanding of human emotions helps to improve the expert
systems behavior and interaction [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. This idea, known as Human
Aware AI, is not new in configuration as it has been used as a goal
in different configuration systems (see for instance [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]). Further, the
idea of understating or inferring user needs has been widely study
in the plan recognition problem [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Nonetheless, to the best of our
knowledge, current advances in natural language use remain to be
adopted in configurators implementations.
      </p>
      <p>
        Within the human aware AI field, the Natural Language
Understating (NLU) [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] and Natural Language Processing (NLP) [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] draw
attention for its capabilities of human computer interaction. In essence,
NLU and NLP systems allow the user to ask questions in everyday
language and try to understand these questions in order to return
appropriated answers. Typically, these systems makes some
hypothesis according to the question and a knowledge base, such as
Internet, and then process an output. This is akin to the problem of plan
recognition, i.e., knowing the user’s plans and goals [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Further, if
these systems are improved with natural language generation (NLG)
in order to produce responses, the system then becomes a question
answering system (QAS) [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. These systems were conceived to
received provide argued answers to user queries. From these systems,
WolframAlphaTM [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] and IBM WatsonTM [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] present the more
innovative results for configuration as these systems are able to
recognize some information in form of requirements within informal
speech in text format.
      </p>
      <p>To illustrate these capabilities, Figure 1 shows the result when
querying “I want a computer of less than 1000 dollars.” in the
WolframAlphaTM system. To construct a response, the system
maps the input into a more elaborated query, encoding the query thus
making a syntactic and semantic analysis. Nevertheless, as the
system does not focus on inferring mathematical notions, it is easily
confused by adding words that add relevant constraints. For instance, no
result shown when querying the same computer but DellTM
manufactured; “I want a dell computer of less than 1000 dollars”. We
consider that this is a major drawback in the system when addressing
configuration problems.</p>
      <p>The IBM WatsonTM system works similarly to the
WolframAlphaTM. It encodes a query by applying automated
reasoning, machine learning and several other techniques to analyze
the speech. One of the more innovative applications of the IBM</p>
      <p>
        WatsonTM system is the personality characterization from written
speech. To do this, in addition to question answering, different
techniques of sentiment analysis [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] are applied. This kind of
analysis may be useful to infer expertise level of the user and then
behave accordingly.
      </p>
      <p>In spite of the recent advances of NLU, NLP and QAS, these
are not well-suited for addressing configuration problems given that
they do not focus on constructing the mathematical notions
(constraints and objectives) needed in most configuration problems.
Besides, question answering systems are too powerful in the sense they
are of general purpose having different question types and extensive
knowledge bases. At the other end of the spectrum, specific
applications using question answering systems technology do not
necessarily deal with extensive vocabularies, hypothesis and so on, as these
applications are domain-dependent. Ergo, its underlying mechanism
may be simpler although more robust and may count with reduced
knowledge, question types and small knowledge bases. In
consequence, we have devise an architecture, presented in Figure 2, for
implementing configurators that exploits the aforementioned natural
language elements. The mandatory module is that of NLU whereas
NLP and NLG are optional (used if formatted answers are desired).
External services may be attached in order to fulfill specific tasks.</p>
      <p>The differentiating element in the architecture is the inference
engine. This key element is in charge of discriminating among the set
of words those referring to components of the product,
functionalities and/or configuration objectives. This is in fact a challenge as
different conclusions may be reached from a given sentence.
4</p>
    </sec>
    <sec id="sec-6">
      <title>Mathematical Frameworks for Configuration in</title>
    </sec>
    <sec id="sec-7">
      <title>Natural Language</title>
      <p>Unlike NLP and QAS, configuration processes are mapped,
generally, into mathematical (optimization) models that unify the
customers requirements and problem domain limitations into a single
framework. To infer constraints and objectives from informal speech,
it is needed an underlying mathematical framework in which such
notions are built. In other words, to construct a mathematical formula
it is necessary the set of values and operands allowed in the formula.
As an example, if constructing inequalities, the expert system knows
that sum, subtract, division and multiplication are allowed as well
as inequality symbols. This helps to make the mapping
unambiguous. Given that our main innovative application is the configuration
in natural language, mathematical frameworks used to tackle
configuration problems comes naturally. Here, we briefly describe three of
these models.</p>
      <p>
        The first framework, Constraint Programming (CP), has been
identified as a key paradigm in the expansion of applied computer
science [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. CP is part and good representative, of the declarative
programming frameworks. This is one of the most used framework
to address configuration problems as it suits their constrained
nature [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. First, the knowledge (constraints) that restricts possible
configuration of elements (variables) is easily modeled under the
declarative framework of constraint satisfaction problems. And
second, constraint-based configurators are able to present different
solutions to users, often optimal, even when they do not provide
all configuration parameters.
      </p>
      <p>
        Among the same lines we have integer programming (IP). It is a
mathematical optimization in which some or all of the variables
are restricted to be integers [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. Likewise the constraint
satisfaction model, it is built from constraints and limitations over
variables, although variables do not have a given domain, and
objective functions such as minimization and maximization. This model
or extensions of it (Mixed IP or Linear IP) have been widely used
to reason and solve configuration problems (see for instance [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]).
Finally, another framework that can be used in configuration in
natural language is SAT; determining if a given propositional
formula is satisfiable by an interpretation [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. The inclusion or
exclusion of a given feature in a product may be seen as boolean
assignments. Thus, it would be possible to deduce if a solution
exists by constructing a boolean formula using the requirements of
the customers and the configuration knowledge (e.g.
compatibility among components). The modeling of a configuration problem
under SAT is not new (see for instance [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]).
5
      </p>
    </sec>
    <sec id="sec-8">
      <title>Concluding Remarks</title>
      <p>In this paper, we have presented insights on how to enhance the
interaction between customers and configuration systems into something
called configuration in natural language. In summary, we have
discussed the possibility of using AI techniques, namely, human-aware
AI to implement an expert system that infers constraints and
objectives from a speech input.</p>
      <p>We have built out the idea around the concepts of NLU, NLP and
QAS. Then, we argue that although current systems have reached
a stable development, there is still research to be done when
inferring mathematical notions from informal sentences, i.e., everyday
language. In addition, we have argued that advanced question
answering systems such as IBM WatsonTM are not yet well suited
for configuration problems as they are not intended to map implicit
requirements into mathematical models.</p>
      <p>To give a view of the mathematical models that can prove
useful to construct the proposed expert system, we have briefly
described three techniques from AI and operational research. These,
techniques, namely, constraints programming, integer programming
and boolean satisfiability, have been used to solve different
configuration and optimization problems and are in our point of view
interesting models to construct a configurator in natural language.</p>
      <p>The main application of inferring constraints and goals from
speech is linked to the mathematical modeling of real-world
problems. Simply stated, the inference system may be used to build
mathematical models to solve linear problems, discrete
optimization problems and probabilistic problems, among others. Further,
specific properties from each mathematical framework may be
exploited, such as the expressivity of declarative approaches like logic
and constraint programming. Intuitively, many more applications
exists; those in which user requirements, preferences, limitations or
objectives are needed. For instance package managers in unix-based
operating systems. Typically, a package manager from a Unix-based
system must be asked to search or install a specific package. Using
a expert systems that maps speech into constraints and objectives, a
manager would accept inputs like “I need a powerful UML diagram
editor” to present some potential editors to be installed. Further,
arguments used by such managers can be replaced by everyday words
thus preventing the non-expert user to learn the specifics of the
programs.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>L.</given-names>
            <surname>Ardissono</surname>
          </string-name>
          ,
          <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>A.</given-names>
            <surname>Goy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Jannach</surname>
          </string-name>
          , M. Meyer, G. Petrone,
          <string-name>
            <given-names>R.</given-names>
            <surname>Schafer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Schutz</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Zanker</surname>
          </string-name>
          ,
          <article-title>Personalising on-line configuration of products</article-title>
          and services,
          <volume>225</volume>
          -
          <fpage>229</fpage>
          , Thiel,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Pohl</surname>
          </string-name>
          ,
          <string-name>
            <surname>K.</surname>
          </string-name>
          , Lyon France,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Liliana</given-names>
            <surname>Ardissono</surname>
          </string-name>
          , Anna Goy, Matt Holland, Giovanna Petrone, and Ralph Scha¨fer,
          <source>Customising the Interaction with Configuration Systems</source>
          ,
          <volume>283</volume>
          -
          <fpage>287</fpage>
          , Springer Berlin Heidelberg,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>Virginia</surname>
            <given-names>E.</given-names>
          </string-name>
          <string-name>
            <surname>Barker</surname>
          </string-name>
          ,
          <string-name>
            <surname>Dennis E. O'Connor</surname>
            ,
            <given-names>Judith</given-names>
          </string-name>
          <string-name>
            <surname>Bachant</surname>
          </string-name>
          , and Elliot Soloway, '
          <article-title>Expert systems for configuration at digital: Xcon and beyond', Commun</article-title>
          . ACM,
          <volume>32</volume>
          (
          <issue>3</issue>
          ),
          <fpage>298</fpage>
          -
          <lpage>318</lpage>
          , (
          <year>March 1989</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>M</given-names>
            <surname>Bates</surname>
          </string-name>
          , '
          <article-title>Models of natural language understanding'</article-title>
          ,
          <source>Proceedings of the National Academy of Sciences</source>
          ,
          <volume>92</volume>
          (
          <issue>22</issue>
          ),
          <fpage>9977</fpage>
          -
          <lpage>9982</lpage>
          , (
          <year>1995</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>A.</given-names>
            <surname>Biere</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Biere</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Heule</surname>
          </string-name>
          ,
          <string-name>
            <surname>H. van Maaren</surname>
          </string-name>
          , and
          <string-name>
            <given-names>T.</given-names>
            <surname>Walsh</surname>
          </string-name>
          ,
          <source>Handbook of Satisfiability: Volume 185 Frontiers in Artificial Intelligence and Applications</source>
          , IOS Press, Amsterdam, The Netherlands, The Netherlands,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>Sandra</given-names>
            <surname>Carberry</surname>
          </string-name>
          , '
          <article-title>Techniques for plan recognition', User Modeling</article-title>
          and
          <string-name>
            <surname>User-Adapted</surname>
            <given-names>Interaction</given-names>
          </string-name>
          ,
          <volume>11</volume>
          (
          <issue>1</issue>
          ),
          <fpage>31</fpage>
          -
          <lpage>48</lpage>
          , (
          <year>Mar 2001</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <surname>John</surname>
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>Cassel</surname>
          </string-name>
          ,
          <string-name>
            <surname>Wolfram-Alpha: A Computational Knowledge</surname>
          </string-name>
          “Search” Engine,
          <fpage>267</fpage>
          -
          <lpage>299</lpage>
          , Springer New York, New York, NY,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <surname>Celso M. de Melo</surname>
          </string-name>
          , Stacy Marsella, and Jonathan Gratch, '
          <article-title>”do as i say, not as i do”: Challenges in delegating decisions to automated agents'</article-title>
          ,
          <source>in Proceedings of the 2016 International Conference on Autonomous Agents #38 Multiagent Systems, AAMAS '16</source>
          , pp.
          <fpage>949</fpage>
          -
          <lpage>956</lpage>
          , Richland,
          <string-name>
            <surname>SC</surname>
          </string-name>
          , (
          <year>2016</year>
          ).
          <source>International Foundation for Autonomous Agents and Multiagent Systems.</source>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>Ingo</given-names>
            <surname>Feinerer</surname>
          </string-name>
          , '
          <article-title>Efficient large-scale configuration via integer linear programming'</article-title>
          ,
          <source>Artif. Intell. Eng. Des. Anal. Manuf</source>
          .,
          <volume>27</volume>
          (
          <issue>1</issue>
          ),
          <fpage>37</fpage>
          -
          <lpage>49</lpage>
          , (
          <year>January 2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <surname>Alexander</surname>
            <given-names>Felfernig</given-names>
          </string-name>
          , Lothar Hotz, Claire Bagley, and Juha Tiihonen,
          <source>Knowledge-based Configuration:</source>
          From Research to Business Cases, Morgan Kaufmann Publishers Inc., San Francisco, CA, USA,
          <volume>1</volume>
          <fpage>edn</fpage>
          .,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>D. A.</given-names>
            <surname>Ferrucci</surname>
          </string-name>
          , 'Introduction to “This is Watson”',
          <source>IBM Journal of Research and Development</source>
          ,
          <volume>56</volume>
          (
          <issue>3</issue>
          .4), 1:
          <fpage>1</fpage>
          -
          <lpage>1</lpage>
          :
          <fpage>15</fpage>
          , (May
          <year>2012</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>Chowdhury</surname>
            <given-names>Gobinda G.</given-names>
          </string-name>
          ,
          <source>'Natural language processing'</source>
          ,
          <source>Annual Review of Information Science and Technology</source>
          ,
          <volume>37</volume>
          (
          <issue>1</issue>
          ),
          <fpage>51</fpage>
          -
          <lpage>89</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>L.</given-names>
            <surname>Hirschman</surname>
          </string-name>
          and
          <string-name>
            <given-names>R.</given-names>
            <surname>Gaizauskas</surname>
          </string-name>
          , '
          <article-title>Natural language question answering: The view from here'</article-title>
          ,
          <source>Nat. Lang</source>
          . Eng.,
          <volume>7</volume>
          (
          <issue>4</issue>
          ),
          <fpage>275</fpage>
          -
          <lpage>300</lpage>
          , (
          <year>December 2001</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>M.</given-names>
            <surname>Janota</surname>
          </string-name>
          ,
          <source>Do SAT Solvers Make Good Configurators?</source>
          ,
          <fpage>191</fpage>
          -
          <lpage>195</lpage>
          , Thiel,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Pohl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            ,
            <surname>Limerick</surname>
          </string-name>
          , Ireland,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <surname>Ulrich</surname>
            <given-names>Junker</given-names>
          </string-name>
          , Configuration.,
          <source>Chapter 24 of Handbook of Constraint Programming (Foundations of Artificial Intelligence)</source>
          . Elsevier Science Inc., New York, NY, USA,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>Stacy</given-names>
            <surname>Marsella</surname>
          </string-name>
          and Jonathan Gratch, '
          <article-title>Computationally modeling human emotion', Commun</article-title>
          . ACM,
          <volume>57</volume>
          (
          <issue>12</issue>
          ),
          <fpage>56</fpage>
          -
          <lpage>67</lpage>
          , (
          <year>November 2014</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <surname>Francesca</surname>
            <given-names>Rossi</given-names>
          </string-name>
          , Peter van Beek, and Toby Walsh,
          <source>Handbook of Constraint Programming (Foundations of Artificial Intelligence)</source>
          , Elsevier Science Inc., New York, NY, USA,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>G.</given-names>
            <surname>Sierksma</surname>
          </string-name>
          ,
          <article-title>Linear and Integer Programming: Theory and Practice</article-title>
          ,
          <string-name>
            <surname>Second Edition</surname>
          </string-name>
          , Advances in Applied Mathematics, Taylor &amp; Francis,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>David</given-names>
            <surname>Silver</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Aja</given-names>
            <surname>Huang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Christopher J.</given-names>
            <surname>Maddison</surname>
          </string-name>
          , Arthur Guez, Laurent Sifre, George van den Driessche, Julian Schrittwieser, Ioannis Antonoglou, Veda Panneershelvam, Marc Lanctot, Sander Dieleman, Dominik Grewe, John Nham, Nal Kalchbrenner, Ilya Sutskever, Timothy Lillicrap, Madeleine Leach, Koray Kavukcuoglu, Thore Graepel, and Demis Hassabis, '
          <article-title>Mastering the game of go with deep neural networks and tree search'</article-title>
          ,
          <source>Nature</source>
          ,
          <volume>529</volume>
          ,
          <fpage>484</fpage>
          -
          <lpage>503</lpage>
          , (
          <year>2016</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>Peter</given-names>
            <surname>Stone</surname>
          </string-name>
          , Rodney Brooks, Erik Brynjolfsson, Ryan Calo,
          <string-name>
            <given-names>Oren</given-names>
            <surname>Etzioni</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Greg</given-names>
            <surname>Hager</surname>
          </string-name>
          , Julia Hirschberg, Shivaram Kalyanakrishnan, Ece Kamar, Sarit Kraus, Kevin Leyton-Brown, David Parkes, William Press, AnnaLee Saxenian, Julie Shah, Milind Tambe, and Astro Teller, '
          <article-title>Artificial intelligence and life in 2030', Technical report</article-title>
          , Stanford University, Stanford, CA, (
          <year>September 2016</year>
          ).
          <source>One Hundred Year Study on Artificial Intelligence: Report of the 2015-2016 Study Panel</source>
          , Stanford University.
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <surname>Maite</surname>
            <given-names>Taboada</given-names>
          </string-name>
          , '
          <article-title>Sentiment analysis: An overview from linguistics'</article-title>
          ,
          <source>Annual Review of Linguistics</source>
          ,
          <volume>2</volume>
          (
          <issue>1</issue>
          ),
          <fpage>325</fpage>
          -
          <lpage>347</lpage>
          , (
          <year>2016</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <surname>Mitchell</surname>
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Tseng</surname>
            and
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Jack</surname>
            <given-names>Hu</given-names>
          </string-name>
          , Mass Customization,
          <fpage>836</fpage>
          -
          <lpage>843</lpage>
          , Springer Berlin Heidelberg, Berlin, Heidelberg,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>