<!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>Coupling Two Constraint-Based Systems Into an On-line Fa c¸ade-layout Configurator</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Andre´s F. Barco</string-name>
          <email>abarcosa@mines-albi.fr</email>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>E´ lise Vareilles</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jean-Guillaume Fages</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>COSLING S.A.S.</institution>
          ,
          <addr-line>2 Rue Alfred Kastler, 44307 Nantes Cedex 03</addr-line>
          ,
          <country country="FR">France</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Universite ́ de Toulouse</institution>
          ,
          <addr-line>Mines d'Albi, Route de Teillet Campus Jarlard</addr-line>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>and Paul Gaborit</institution>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2015</year>
      </pub-date>
      <volume>1</volume>
      <fpage>0</fpage>
      <lpage>11</lpage>
      <abstract>
        <p>We present the coupling of two constraint-based environments into an on-line support system for fac¸ade-layout configuration in the context of building renovation. The configuration consist on the definition and allocation of a set of rectangular parameterizable panels over a fac¸ade surface. The coupling allows to solve two configuration tasks while gaining efficiency and modularity. First, it allows to configure a set of questions relating the renovation model needed to determine limits for panels' size and panels' weight. Second, it allows to configure a constraint satisfaction model for each of the fac¸ades to renovate. Two constraint-based systems handle the filtering of incompatible values and the generation of layout plans in a web-service setup. The first service performs initial filtering to set panels' limits, based on the questionnaire, using a constraint filtering engine called CoFiADe. The second service uses several fac¸adelayout configuration algorithms, using as underlying engine the constraint solver Choco, to generate compliant layout-plan solutions. We show that by dividing filtering and search, and by coupling the two constraint-based systems, we gain modularity and efficiently as each service focuses on their own strengths. Services executing tasks may be hosted in different network-nodes and thus may be seen as independent communicating agents.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Preliminaries</title>
      <p>
        Constraint-base fac¸ade-layout configuration. Product
configuration refers to the task of building a target product using predefined
components, respecting requirements from customers and following
some rules that shape a correct configuration [
        <xref ref-type="bibr" rid="ref26 ref29">26, 29</xref>
        ]. This task have
been increasingly supported by intelligent systems given the
complexity and size of relations within a single product. For instance,
configuring a computer from memories, buses, cards and so on,
involves a large number of possibilities and solutions for the user. The
possible numbers of outputs for a configuration is in relation to the
number of components and relations within the product, and is
inversely proportional to the number of rules that restrict combinations.
We call these kind of problems combinatorial problems.
      </p>
      <p>
        A particular scenario on product configuration arises from the
context of building thermal renovation as an effort to reduce current
energetic consumption levels [
        <xref ref-type="bibr" rid="ref19 ref5 ref6">5, 6, 19</xref>
        ]. Here, the problem lies on the
configuration of rectangular parameterizable panels, and their
attaching devices called fasteners, that must be allocated over the fac¸ade
surface in order to provide an insulation envelope [
        <xref ref-type="bibr" rid="ref14 ref28 ref8">8, 14, 28</xref>
        ]. The
problem is also known as layout synthesis or space planning. A
configuration solution is a plan which satisfies optimization criteria and
a set of constraints (such as geometrical, weight or resources
constraints) provided by users and the fac¸ade itself. As part of the
product configuration family problems, an instance of fac¸ade-layout
configuration problem has a huge search space that depends on the size
of the panels and the elements on the fac¸ade, such as windows, doors
and supporting areas (see Figure 1). In consequence, to solve this
configuration problem, we choose to rely on a technique from
artificial intelligence and operation research called constraint satisfaction
problems [
        <xref ref-type="bibr" rid="ref15 ref18">15, 18</xref>
        ].
      </p>
      <p>
        Constraint satisfaction problems (CSPs) are conceived to allow the
end-user to state the logic of the computation rather than its flow. For
example, in the context of scheduling, instead stating a set of steps
to avoid tasks overlapping, the user declares “for any pair of tasks
they must not overlap”. The user may do so by stating a) variables
representing elements of the problem, b) a set of potential values
associated to each variable and c) relations over the stated variables
also known as constraints [
        <xref ref-type="bibr" rid="ref12 ref18">12, 18</xref>
        ]. Variables may have different
domain representation such as integer or boolean, and relation among
variables may be expressed in different ways such as compatibility
tables and first order formulas. Solving a CSP means finding an
assignment of values for each variable in such a way that all constraints
are satisfied.
      </p>
      <p>It turns out that constraint technology fits neatly in the constrained
nature of product configuration and layout synthesis. On one hand,
the knowledge (constraints) that restrict possible configuration of
elements (variables) is easily modeled under the declarative framework
of constraint satisfaction problems. On the other hand,
constraintbased configurators are able to presents different solutions to users,
often optimal, even when they do not provide all configuration
parameters leaving their preferences unknown.</p>
      <p>
        Now, for constraint-based implementations we differentiate
between two related concepts: Solving a problem and filtering (narrow)
possibilities. Whereas solving a problem involves a robust inference
engine and search strategies, filtering algorithms work, in essence, on
how to efficiently remove variable values that are restricted by the
established relations, i.e., the constraints [
        <xref ref-type="bibr" rid="ref2 ref4">2, 4</xref>
        ]. In the problem at hand
both the filtering and the search take part; filtering to set panel’s size
and weight limits and, search in order to generate compliant layout
plans.
      </p>
      <p>
        Related work. Layout configuration techniques have been used
within different contexts and scenarios. For instance, finding
solutions for room configurations [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ], apartment layouts [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] and
activities within a business office [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. Also, some tools have been
implemented using different approaches, here we name a few of them.
For example, in [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ] Shikder et al. present a prototype for the
interactive layout configuration of apartment buildings including
design information and an iterative design process. In [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] is introduced
Wright, a constraint-based layout generation system that exploits
disjunctions of constraints to manage the possibilities on positioning
two-dimensional objects in a two-dimensional space. Another
system, Loos [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], is able to configure spaces using rectangles that can
not be overlapped but that may have holes. It uses test rules applied
by steps to the rectangles in order to reach a good configuration based
on its orientation and relation with other rectangles. The same
authors have developed Seed [
        <xref ref-type="bibr" rid="ref10 ref11">10, 11</xref>
        ]: A system based on Loos used
for early stages on architectural design. The system Hegel [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] (for
Heuristic Generation of Layouts) is yet another space planning tool
that simulates human design based on experimental cases. Finally,
Medjdoub et al. presents in [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] the system Archiplan which
integrates geometrical and topological constraints to apartment layout
planning.
      </p>
      <p>Regardless the considerable number of applications on layout
configuration, our problem include three characteristics never considered
simultaneously: Its deals with the allocation of an unfixed number
of rectangular panels that must not overlap, frames (existing
windows and doors) must be overlapped by one and only one panel,
and fac¸ades have specific areas providing certain load-bearing
capabilities that allow to attach panels. Thus, as far as we know, no
support system nor design system is well-suited for addressing such
particularities. Also, most systems are desktop-oriented and not
weboriented, making difficult to adapt new requirements and
functionalities as they need new versions to be released.</p>
      <p>
        Contribution and structure. Traditional general purpose
constraint solvers, such as Gecode [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ], Choco [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] and the finite
domain module of Oz [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ], make clear distinction between filtering
and search [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]. These environments provide methods for invoking
constraint propagation, i.e., executing the filtering algorithm of
constraints, and methods for invoking search for one solution, several
solutions or optimal ones [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ]. Nonetheless, to the best of our
knowledge, studies focusing on constraint-based configuration involving
filtering and search does not make clear distinction between these
concepts and their implementation focuses on the search. This means
that solutions exploits the capabilities of constraint solvers as
blackbox environments, typically creating a dedicated search heuristic for
the problem.
      </p>
      <p>Our goal is two-fold. First, we propose an architecture that divides
initial filtering and consequent search for constraint-based product
configuration. The architecture allow us to solve two configuration
tasks; configure a set of questions relating the renovation model
needed in the renovation process and needed to determine limits for
panels’ size and panels’ weight and; configure a constraint
satisfaction problem for each of the fac¸ades to renovate. In a second time,
we present an on-line support system, and formalize its behavior, for
the problem of fac¸ade-layout configuration. The architecture,
implemented in the on-line system, couples two different constraint-based
technological tools to gain efficiency and modularity. We use
fac¸adelayout configuration to illustrate our method as it is the goal of the
project we are into, but our results can be adapted to deal with
different kind of products.</p>
      <p>The paper is divided as follows. A brief description of the
industrial scenario and elements is presented in Section 2. In section 3,
we introduce details of the two configuration tasks performed by the
support system. The service oriented architecture, along with details
of the constraint-services’ behavior, is presented in Section 4. In
Section 5, we discuss the benefits of the tasks division and coupling of
the constraint systems. Some conclusions are drawn in Section 6. A
bibliography is provided at the end of the document.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Renovation Modus Operandi</title>
      <p>The problem at hand deals with the configuration of rectangular
panels and their arrangement over a fac¸ade surface. In order to start the
configuration process, specific information have to be extracted from
a set of spatial entities. The renovation is carried out on fac¸ades that
are part of a given building, buildings that are part of a given block,
and blocks that are part of a given working site. Each of these spatial
entities have geometrical and structural properties and may have
different environmental conditions that must be taken into account for
the layout-plan definition.</p>
      <p>Information about spatial entities is acquired by the support
system by means of an (JSON) input file describing all geometrical and
structural properties, and by means of a web-based questionnaire for
each spatial entity in the input file. Thus, if the input file contains
information for one working site with two blocks, each block with
one building and three fac¸ades in each building, the user answers to
eleven questionnaires (one for the working site, two for the blocks,
two for the buildings and six for the fac¸ades). After questionnaire
completion, the lower bound and upper bound for panels’ size and
panel’s weight have been deduced. Also, given that several instances
for fac¸ades are need to be solve, at the end of the questioning stage
the systems creates a constraint satisfaction model for each fac¸ade
using the inputed information and the deduced limits for panels’ size
and weight. Here, each constraint satisfaction model instance is
parameterized according with the fac¸ade information (e.g.
environmental conditions) and the particular deduced panels’ limits.</p>
      <p>Lets consider the information flow from the user perspective.
Figure 2 presents the representative actions made by the user and the
responses by the on-line support system. It also illustrates the fact
that to the end-user should be transparent all the configuration
process. The complete sequence of the configuration goes as follows.
Step 1:- The user uploads a file containing the geometry and
structural specification of spatial entities. The support system
stores information in a data base.</p>
      <p>Step 2:- The filtering service presents a questionnaire for each of the
spatial entities in the input file.</p>
      <p>Step 3:- The user answers the questions (leaving in blank the
questions he does not know the answer).</p>
      <p>Step 4:- Using the information about spatial entities (database) and
their environmental/user conditions (user answers) the
system deduce lower and upper bounds for panels’ size and
panels’ weight by using the filtering service.</p>
      <p>Step 5:- If a manual configuration is desired, the user draws each
panel on the clients GUI. Each panel is assured to be
consistent with the problem requirements by sending its
information to validate into the solving service (the validator
module).</p>
      <p>Step 6:- If a semi-automatic configuration is desired, the user draws
some panels and then asks the solving service to finish the
configuration.</p>
      <p>Step 7:- If an automatic configuration is desired, the user asks the
solving service to provide compliant layout solutions.</p>
      <p>It is worth mentioning the consistency among the different steps:
Information at each level is propagated downwards and is never
propagated upwards (we will further study this along the document).
Also, of major importance is the fact that each fac¸ade may have its
own panels’ lower and upper bounds and thus solving a given fac¸ade
is done with a particular set of arguments.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Support System Configuration Tasks</title>
      <p>In this section we present the two configuration tasks within the
support system: The configuration of a questionnaire to be filled by the
end-user and, the configuration of a constraint satisfaction model for
each fac¸ade to renovate used as input for layout-plans generation.
3.1</p>
    </sec>
    <sec id="sec-4">
      <title>The Questionnaire</title>
      <p>The renovation includes four spatial entities, namely, working site,
block, building and fac¸ade, and some configurable components,
namely, panels and fasteners (fasteners are devices to attach panels
onto the fac¸ades). A hierarchical view is presented in Figure 3. Once
the input file has been read by the support system, it can proceed
by configuring a set of questions for each spatial entity in the file.
Then, after the user answer the questionnaires, the system
configures, i.e., deduces, the limits for panels’ size and panels’ weight for
each fac¸ade. The questionnaires ask the following information.
Working site. This is the bigger spatial division in the renovation.</p>
      <p>It is commonly referred by a name and is well-know by the
community. Values provided by the user are:</p>
      <sec id="sec-4-1">
        <title>Number of blocks in the working site? Number.</title>
        <sec id="sec-4-1-1">
          <title>Working site is in a windy region? fyes, nog Season in which the on-site work will take place? fsummer, fall, winter, springg</title>
        </sec>
      </sec>
      <sec id="sec-4-2">
        <title>Target for cost? Euros.</title>
        <p>Target for performance? W:m 2:K
1</p>
        <sec id="sec-4-2-1">
          <title>Obstacles presence? fyes, nog</title>
          <p>Accessibility to the working site? feasy, medium, hardg
Panel’s width (wws) and height (hws) lower bound? [0; 1]
Panel’s width (wws) and height (hws) upper bound? [0; 1]</p>
        </sec>
        <sec id="sec-4-2-2">
          <title>Panel’s maximum weight (wews)? [0; 1]</title>
          <p>Block. Is a set of buildings which are usually attached by a common
wall. Values provided by the user are:</p>
        </sec>
      </sec>
      <sec id="sec-4-3">
        <title>Number of buildings in the block? Number.</title>
        <sec id="sec-4-3-1">
          <title>Obstacles presence? fyes, nog</title>
        </sec>
        <sec id="sec-4-3-2">
          <title>Accessibility to the block? feasy, medium, hardg</title>
        </sec>
      </sec>
      <sec id="sec-4-4">
        <title>Panel’s width (wbl) and height (hbl) lower bound?</title>
        <p>wbl 2 [wws; wws] and hbl 2 [hws; hws]</p>
      </sec>
      <sec id="sec-4-5">
        <title>Panel’s width (wbl) and height (hbl) upper bound?</title>
        <p>wbl 2 [wws; wws] and hbl 2 [hws; hws]</p>
      </sec>
      <sec id="sec-4-6">
        <title>Panel’s maximum weight (webl)? [0; wews]</title>
      </sec>
      <sec id="sec-4-7">
        <title>Number of fac¸ades in the building? Number.</title>
        <sec id="sec-4-7-1">
          <title>Obstacles presence? fyes, nog</title>
        </sec>
        <sec id="sec-4-7-2">
          <title>Accessibility to the block? feasy, medium, hardg</title>
        </sec>
      </sec>
      <sec id="sec-4-8">
        <title>Panel’s width (wbg) and height (hbg) lower bound?</title>
        <p>wbg 2 [wbl; wbl] and hbg 2 [hbl; hbl]</p>
      </sec>
      <sec id="sec-4-9">
        <title>Panel’s width (wbl) and height (hbl) upper bound?</title>
        <p>wbg 2 [wbl; wbl] and hbg 2 [hbl; hbl]</p>
      </sec>
      <sec id="sec-4-10">
        <title>Panel’s maximum weight (webg)? [0; webl]</title>
        <p>Building. Is the actual place where apartment are arranged and is
the host of several fac¸ades. Values provided by the user are:
layout plan are limited as well as their weight. Thus, the
aforementioned inputs have direct impact over configurable components and
are defined by their compatibility relations.
3.2</p>
        <p>One Fac¸Ade One CSP
One critical aspect of the support system is the ability to configure
a constraint satisfaction model for each fac¸ade to renovate. This is
important because, first, each fac¸ade has (potentially) different size,
number of windows, supporting areas etc. Possible positions for
panels, for instance, must lie between zero and the fac¸ade width and
height. Simply put, each fac¸ade has its own configuration parameters
used in the constrain satisfaction model and in the layout
generation process. And second, each fac¸ade may have different
accessibility conditions, obstacles or even user preferences. Thus, panels’ size
limits, as well as their weight, are constrained by the specific
conditions of the fac¸ade and not only by the conditions of the working site,
block or building.</p>
        <p>When configuring these CSP instances it is important to conserve
downwards consistency. Downwards consistency refers to the fact
that information on higher level of the renovation are is propagated
to the inferior levels, i.e., working site ! blocks ! buildings !
fac¸ades, but it can not propagate upwards. As an example consider
only accessibility conditions, obstacles presence and panels’ size
limits, for the specification in Figure 4.</p>
        <p>Fac¸ade. Maybe seen as a big wall, but is in fact a composition of
apartment along with its doors, windows and so on. Values
provided by the user are:</p>
        <sec id="sec-4-10-1">
          <title>Obstacles presence? fyes, nog</title>
        </sec>
        <sec id="sec-4-10-2">
          <title>Accessibility to the block? feasy, medium, hardg</title>
        </sec>
        <sec id="sec-4-10-3">
          <title>Type of attaching device: fbottom, top, lateralg</title>
        </sec>
      </sec>
      <sec id="sec-4-11">
        <title>Panel’s width (wfc) and height (hfc) lower bound?</title>
        <p>wfc 2 [wbg; wbg] and hfc 2 [hbg; hbg]</p>
      </sec>
      <sec id="sec-4-12">
        <title>Panel’s width (wbl) and height (hbl) upper bound?</title>
        <p>wfc 2 [wbg; wbg] and hfc 2 [hbg; hbg]</p>
      </sec>
      <sec id="sec-4-13">
        <title>Panel’s maximum weight (wefc)? [0; webg]</title>
        <p>Note that inferior entities on the hierarchy inherit values from
superior levels. But, it is not the case that information on superior levels
should be consistent with information on inferior levels. In Figure 4,
for instance, fac¸ade 1 has a hard accessibility condition and thus the
upper bound for panels’ size is reduced to a given Z. This upper
bound is not propagated upwards to the building 1; it conserves its
inherited value X. Consequently, fac¸ade 2 will inherit the value of
X as no further reduction is needed for their panels configuration.
Naturally, it is the case that Z X U . Using this information a
CSP is configured for each fac¸ade to renovate.</p>
        <p>This information collection has two specific goals. On the one
hand, it will provide details about renovation aspects, such as the
targeted performance, that are needed in the configuration process. On
the second hand, it provides upper bound for panel’s size and panel’s
weight. Indeed, given the manufacturing, environmental,
accessibility and even weather conditions, the size of panels composing the
4</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Support System Constraint Services</title>
      <p>In order to divide configuration tasks we divide the support
system in two services that may be implemented in different servers.
In essence, information about the renovation, entered by means of
the input file and the questionnaire, is filtered by means of the first
service called Filtering Service. Then, the second service called
Solving Service, upon user request, uses its configuration algorithms to
provide complaint layout-plans solutions. Figure 5 presents the
architecture of the on-line support system.</p>
      <p>In order to give a clear understanding on how the services works,
let us describe the input and output in a formal way. For each of
the services the input is a tuple of the form hSPE C; V; D(V); C(V )i
with jVj= jD(V)j and</p>
      <p>SPE C = hWS; BK; BG; F ACi; WS variables describing the
working site, BK variables describing blocks, BG variables
describing buildings and F AC variables describing fac¸ades.
V = hP ; F Ai; P variables describing a single panel and F A
variables describing a single fastener.</p>
      <p>D(V) = hD(P); D(F A); i; domain for each one of the variables
in V.</p>
      <p>C(V) a set of constraints over variables in V.</p>
      <p>Information in SPE C describes only properties of the spatial
entities such as the number, sizes, positions, etc. Variables in V and
D(V), on the other hand, are manufacturer depended and includes
size and position of panels and fasteners, and the initial domains
which depends on the manufacturing process. Constraint in C(V) are
extracted from the problem domain by an expert and are different in
each service.
4.1
4.1.1</p>
    </sec>
    <sec id="sec-6">
      <title>Filtering Service</title>
      <p>Mapping
The filtering service is in charge of removing domain values from
elements in D(V) that are not allowed by the established constraints.
Here, constraints C(V) describe valid combination among different
parameters in SPE C and variables in D(V). We denote this set of
constraints Cf (V) to distinguish them from the ones used on the
solving service. These constraints are formalized as compatibility tables
(presented in next section). Formally, the filtering is a mapping M
from variables and domains to domains</p>
      <p>M(SPE C; V; D(V); Cf (V)) ! D0(V)
(1)</p>
      <p>The result D0(V) contains the new domain for panels and
fasteners, where D0(V) D(V).</p>
      <p>
        As stated previously, the initial filtering has as goal setting
domains for configurable components and takes spatial entities
information and constraints to do so. In our on-line support system we
use the CoFiADe [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ] system to perform this filtering. Several
reasons support our choice. First, the system is already on-line,
making it usable in no time. Second, it is well conceived for supporting
decision-making processes. And third, it uses efficient compatibility
tables for domain pruning; applying a given compatibility table is
made in constant time O(1).
4.1.2
      </p>
      <p>Compatibility Knowledge
Configurable components of the renovation are panels and fasteners
to attach panels.</p>
      <p>Panels. Configurable by fixing their width, height, weight and
position over the fac¸ade.</p>
      <p>Fasteners. Configurable by fixing its length and setting its type
fbottom, top, lateralg.</p>
      <p>The following compatibility tables, presented from Table 1 to
Table 8, show the allowed combination between user’s input values and
configurable components values.
The second service in the support system is in charge of layout-plans
generation. The system uses several algorithms to generate layout
plans but, although their behavior are quite different, their semantic
remains the same.</p>
      <p>Now, while information of SPE C and V are the same as the
filtering services, it is not the case for domains and constraints. To
differentiate them lest call the input domains Ds(V) and the constraints
Cs(V). Intuitively, variable domains Ds(V) are provided by the
mapping of the filtering service, i.e.,</p>
      <p>
        M(SPE C; V; D(V); Cf (V)) = D0(V) = Ds(V)
(2)
where D(V) is the initial variable domain of the problem.
Constraints in Cs(V) are expressed as first order formulas and express,
not compatibility among elements but, requirements for valid layout
plans (see next section for a description of these constraints). Both
resolution approaches implemented at the solving service respect all
constraints; the first approach resolving conflicts at positioning each
panel (greedy fashion) whereas the second approach uses the open
constraint programming environment Choco [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] to explore the
solution space.
      </p>
      <p>The output of the server’s process is a set of layout-plan solutions.
Formally, the server’s process is a function of the form</p>
      <p>F (SPE C; V; Ds(V); Cs(V); H) = hX ; Y; DX ; DYi
(3)
where X and Y represent the origin of coordinates for each panel
in the solution, and DX and DY the width and height, respectively,
for each panel in the solution. Additionally, the function is
parameterized by an heuristic H stating the way the solution space is explored.</p>
      <p>Available strategies are greedy and depth-first search.
Position Fasteners</p>
      <p>?
ftop,bottomg</p>
      <p>
        bottom
# fasteners
[
        <xref ref-type="bibr" rid="ref2 ref4 ref6">2,4,6</xref>
        ]
[
        <xref ref-type="bibr" rid="ref4 ref6">4,6</xref>
        ]
Let F denote the set of frames and S the set of supporting areas. Let
oe:d and le:d denote the origin and length, respectively, of a given
entity e in the dimension d, with d 2 [1; 2]. For instance, ofr:1
denotes the origin in the horizontal axis and lfr:1 denotes the width of
frame f r. Additionally, lbd and ubd denote the length lower bound
and length upper bound, respectively, in dimension d for all panels.
      </p>
      <p>Each panel is described by its origin point w.r.t. the fac¸ade origin
and its size. For convenience, lets assume that P is the set of panels
composing the layout-plan solution. Then, each p 2 P is defined by
ho; li where
op:d 2 [0; ofac:d] is the origin of panel p in dimension d.
lp:d 2 [lbp:d; ubp:d] is the length of panel p in dimension d.</p>
      <p>The following six constraints express the relations among panels,
and panels and fac¸ade that must respect a layout solution.
(a) Manufacturing and transportation limitations constrain panel’s
size with a give upper bound ub in one or both dimensions.
8p 2 P lp:d
ubd
(b) (diffN) For two given panels p and q there is at least one dimension
where their projections do not overlap.</p>
      <p>8p 2 P; 8q 2 P; p 6= q; 9d 2 [1; 2] j
op:d
oq:d + lq:d _ oq:d
op:d + lp:d
(c) A given panel p must either be at the fac¸ade edge or ensure that
enough space is left to fix another panel.</p>
      <p>8p 2 P op:d + lp:d
lfac:d
lbk _ op:d + lp:d = lfac:d
(d) Each frame over the fac¸ade must be completely overlapped by
one and only one panel. Additionally, frames’ borders and
panels’ borders must be separated by a minimum distance denoted by
.</p>
      <p>op:d +
of:d ^ of:d + lf:d
8f 2 F; 9p 2 P j
op:d + lp:d +
(e) The entire fac¸ade surface must be covered with panels.</p>
      <p>P
i2P</p>
      <p>Qd2[1;2](oi:2 + li:2) = Qd2[1;2] lfac:d
(f) Panels’ corners must be matched with supporting areas in order
to be properly attached onto the fac¸ade.
os:d + ls:d
In order to efficiently couple two constraint-based systems it is
necessary to assign disjoint tasks for them. In our approach, we divide
initial filtering and solving in two different services. Benefits for this
tasks division are rather simple.</p>
      <p>On the one hand we apply the well-known principle Divide and
conquer. In our on-line system this principle allow us to add or
remove variables, domains and questions in the filtering service, i.e., by
means of adding or removing compatibility tables. In addition, as we
use CoFiADe, we may mix different variable representation as
integer domains, continuous domains and symbolic domains whereas
in most constraint systems mixing variable domains is not allowed
or is not efficient enough. For instance, given the reduced number
of constraints for continuous domains in Choco, the representation
have to be changed to integer domains which in consequence involve
additional and time consuming efforts.</p>
      <p>On the other hand, as a benefit of tasks division, we improve
performance by avoiding the use of binary equalities and binary
inequalities constraints whose computational time is O(n m), where n
and m are the number of values in the domain of the two variables
involved in the constraint. Thus, at the moment of finding solutions,
the underlying constraint solver, in our case Choco, propagates and
applies search using only those constraints defining a layout plan.</p>
      <p>Regarding the performance the two configuration tasks must be
studied separately. As commented before, applying a given
compatibility table in the filtering service is made in constant time. Thus,
the time involved in the filtering service depends on the
questionnaire that depends on the number of buildings, facades and so on.
On the solving service, by contrast, the performance depends on the
underlying filtering and search provided by Choco. Execution over
fac¸ades with size 40 10 meters, 50 12 meters and 60 15 meters
takes between one and two seconds. The use of a dedicated heuristic
that exploits the problem structure allows to reach such good
performance.</p>
      <p>The decoupling of tasks, and coupling of two constraint-based
systems, is supported by the underlying declarative model. Indeed, the
monotonic properties of constraint-based systems make it possible
to add information (constraints) on one system without loosing any
solution on the other system. Thus, the declarative view of constraint
satisfaction make it possible to handle services as independent
communication agents.
6</p>
    </sec>
    <sec id="sec-7">
      <title>Conclusions</title>
      <p>The aim of this paper has been to introduce an architecture of
constraint-based product configuration that couples two
constraintbased systems. We have presented an architecture that divided initial
variable domain filtering and search space exploration. The method
divide and conquer allow us to make straightforward adaptations to
each service separately. Our approach have been applied to
fac¸adelayout configuration and implemented in an on-line support system.
For this particular scenario we have
1. Formalize each service behavior and the relation among them.
2. Presented the constraints, expressed in compatibility tables and
carried out by the CoFiADe system, for initial filtering.
3. Presented the constraints, expressed as first order formulae and
carried out by Choco constraint programming environment, that
are used to generate compliant layout solutions.
4. Show how to solve the configuration tasks by coupling the two
constraint-based systems.
5. Show that consistency and integrity of solutions are
straightforward modeled and implemented thanks to the monotonic
properties of constraint satisfaction problems.
6. Show that the underlying coupling and communication methods
are transparent for the user (it only interacts with a friendly
webbased interface).</p>
      <p>
        This work is part of a project on buildings thermal renovation
assisted by intelligent systems. A configuration problem arise in this
context: Configuring a specific set of rectangular panels with respect
to create a building envelope. As the industrial scenario evolves the
support system must be able to adapt to new requirements. Thus,
strategic directions for our work are three-fold. On the one hand,
improve each service by adding new constraints. On the second hand,
definition of an API that allow us to replace the underlying processes
in each service without loosing solutions. For instance, the solving
service may be replaced by the same implementation of the model
but using a different constraint solver (e.g., Gecode [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ], ILOG
CPLEX CP [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]). We consider that a good support system must be
robust enough to allow such adaptations. Finally, a consistent
benchmark must be carried on in order to compare the performance when
dividing configuration tasks and when they are executed by the same
service/constraint system.
      </p>
    </sec>
    <sec id="sec-8">
      <title>ACKNOWLEDGEMENTS</title>
      <p>The authors wish to acknowledge the TBC Ge´ne´rateur d’Innovation
company, the Millet and SyBois companies and all partners in the
CRIBA project, for their contributions on recollecting buildings
renovation information. Special thanks to the referees for their
comments and to Philippe Chantry from E´ cole des Mines d’Albi for his
contribution to the on-line system graphical interface and additional
abstractions.
54</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>O</given-names>
            <surname>¨ . Akin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Dave</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Pithavadian</surname>
          </string-name>
          , '
          <article-title>Heuristic generation of layouts (hegel): based on a paradigm for problem structuring'</article-title>
          ,
          <source>Environment and Planning B: Planning and Design</source>
          ,
          <volume>19</volume>
          (
          <issue>1</issue>
          ), pp.
          <fpage>33</fpage>
          -
          <lpage>59</lpage>
          , (
          <year>1992</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>R.</given-names>
            <surname>Barta</surname>
          </string-name>
          <article-title>´k, 'Constraint Programming: In Pursuit of the Holy Grail'</article-title>
          ,
          <source>in Proceedings of the Week of Doctoral Students (WDS)</source>
          ,
          <source>(June</source>
          <year>1999</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>Can</surname>
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Baykan</surname>
          </string-name>
          and Mark S. Fox, '
          <article-title>Artificial intelligence in engineering design (volume i)', chapter WRIGHT: A Constraint Based Spatial Layout System</article-title>
          ,
          <fpage>395</fpage>
          -
          <lpage>432</lpage>
          , Academic Press Professional, Inc., San Diego, CA, USA, (
          <year>1992</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>S. C.</given-names>
            <surname>Brailsford</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. N.</given-names>
            <surname>Potts</surname>
          </string-name>
          , and
          <string-name>
            <given-names>B. M.</given-names>
            <surname>Smith</surname>
          </string-name>
          , '
          <article-title>Constraint satisfaction problems: Algorithms and</article-title>
          applications',
          <source>European Journal of Operational Research</source>
          ,
          <volume>119</volume>
          (
          <issue>3</issue>
          ), pp.
          <fpage>557</fpage>
          -
          <lpage>581</lpage>
          , (
          <year>1999</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>The</given-names>
            <surname>Energy Conservation Center</surname>
          </string-name>
          , Energy Conservation Handbook, The Energy Conservation Center, Japan,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>U.S.</given-names>
            <surname>Green Building Council</surname>
          </string-name>
          , New Construction Reference Guide,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>IBM</given-names>
            <surname>IBM ILOG</surname>
          </string-name>
          <article-title>CPLEX</article-title>
          .
          <article-title>Ibm ilog cplex optimization studio cp optimizer users manual</article-title>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>M.</given-names>
            <surname>Falcon</surname>
          </string-name>
          and
          <string-name>
            <given-names>F.</given-names>
            <surname>Fontanili</surname>
          </string-name>
          , '
          <article-title>Process modelling of industrialized thermal renovation of apartment buildings', eWork and</article-title>
          eBusiness in Architecture,
          <source>Engineering and Construction</source>
          ,
          <volume>363</volume>
          -
          <fpage>368</fpage>
          , (
          <year>2010</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>U.</given-names>
            <surname>Flemming</surname>
          </string-name>
          , '
          <article-title>Knowledge representation and acquisition in the LOOS system'</article-title>
          ,
          <source>Building and Environment</source>
          ,
          <volume>25</volume>
          (
          <issue>3</issue>
          ),
          <fpage>209</fpage>
          -
          <lpage>219</lpage>
          , (
          <year>1990</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>U.</given-names>
            <surname>Flemming</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.A.</given-names>
            <surname>Baykan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.F.</given-names>
            <surname>Coyne</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.S.</given-names>
            <surname>Fox</surname>
          </string-name>
          , '
          <article-title>Hierarchical generate-and-test vs constraint-directed search'</article-title>
          , in Artificial Intelligence in Design '92, eds.,
          <source>J.S. Gero and Fay Sudweeks</source>
          ,
          <fpage>817</fpage>
          -
          <lpage>838</lpage>
          , Springer Netherlands, (
          <year>1992</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>U.</given-names>
            <surname>Flemming</surname>
          </string-name>
          and
          <string-name>
            <given-names>R.</given-names>
            <surname>Woodbury</surname>
          </string-name>
          , '
          <article-title>Software environment to support early phases in building design (seed): Overview'</article-title>
          ,
          <source>Journal of Architectural Engineering</source>
          ,
          <volume>1</volume>
          (
          <issue>4</issue>
          ),
          <fpage>147</fpage>
          -
          <lpage>152</lpage>
          , (
          <year>1995</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>Esther</given-names>
            <surname>Gelle</surname>
          </string-name>
          and Rainer Weigel, '
          <article-title>Interactive configuration based on incremental constraint satisfaction'</article-title>
          ,
          <source>in IFIP TC5/WG 5</source>
          .2 Workshop
          <string-name>
            <given-names>Series</given-names>
            <surname>Knowledge-Intensive</surname>
          </string-name>
          <string-name>
            <surname>CAD</surname>
          </string-name>
          , pp.
          <fpage>117</fpage>
          -
          <lpage>126</lpage>
          , Helsinki, Finland, (
          <year>1995</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <surname>M. M. D. Hassan</surname>
            ,
            <given-names>G. L.</given-names>
          </string-name>
          <string-name>
            <surname>Hogg</surname>
            , and
            <given-names>D. R.</given-names>
          </string-name>
          <string-name>
            <surname>Smith</surname>
          </string-name>
          , '
          <article-title>Shape: A construction algorithm for area placement evaluation'</article-title>
          ,
          <source>International Journal of Production Research</source>
          ,
          <volume>24</volume>
          (
          <issue>5</issue>
          ), pp.
          <fpage>1283</fpage>
          -
          <lpage>1295</lpage>
          , (
          <year>1986</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>Bjrn</given-names>
            <surname>Petter</surname>
          </string-name>
          <string-name>
            <surname>Jelle</surname>
          </string-name>
          , '
          <article-title>Traditional, state-of-the-art and future thermal building insulation materials and solutions - properties, requirements</article-title>
          and possibilities',
          <source>Energy and Buildings</source>
          ,
          <volume>43</volume>
          (
          <issue>10</issue>
          ),
          <fpage>2549</fpage>
          -
          <lpage>2563</lpage>
          , (
          <year>2011</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>U.</given-names>
            <surname>Junker</surname>
          </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>K.J.</given-names>
            <surname>Lee</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.W.</given-names>
            <surname>Kim</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.K.</given-names>
            <surname>Lee</surname>
          </string-name>
          , and
          <string-name>
            <given-names>T.H.</given-names>
            <surname>Kim</surname>
          </string-name>
          , '
          <article-title>Case-and constraintbased project planning for apartment construction</article-title>
          .',
          <source>AI Magazine</source>
          ,
          <volume>19</volume>
          (
          <issue>1</issue>
          ), pp.
          <fpage>13</fpage>
          -
          <lpage>24</lpage>
          , (
          <year>1998</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>B.</given-names>
            <surname>Medjdoub</surname>
          </string-name>
          and
          <string-name>
            <given-names>B.</given-names>
            <surname>Yannou</surname>
          </string-name>
          , '
          <article-title>Separating topology and geometry in space planning'</article-title>
          ,
          <source>Computer-Aided Design</source>
          ,
          <volume>32</volume>
          (
          <issue>1</issue>
          ),
          <fpage>39</fpage>
          -
          <lpage>61</lpage>
          , (
          <year>2000</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>U.</given-names>
            <surname>Montanari</surname>
          </string-name>
          , '
          <article-title>Networks of constraints: Fundamental properties and applications to picture processing'</article-title>
          ,
          <source>Information Sciences</source>
          ,
          <volume>7</volume>
          (
          <issue>0</issue>
          ),
          <fpage>95</fpage>
          -
          <lpage>132</lpage>
          , (
          <year>1974</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>L.</given-names>
            <surname>Pe</surname>
          </string-name>
          <article-title>´rez-</article-title>
          <string-name>
            <surname>Lombard</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Ortiz</surname>
            , and
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Pout</surname>
          </string-name>
          , '
          <article-title>A review on buildings energy consumption information'</article-title>
          ,
          <source>Energy and Buildings</source>
          ,
          <volume>40</volume>
          (
          <issue>3</issue>
          ),
          <fpage>394</fpage>
          -
          <lpage>398</lpage>
          , (
          <year>2008</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <surname>C.</surname>
          </string-name>
          <article-title>Prud'homme and JG</article-title>
          . Fages, '
          <article-title>An introduction to choco 3.0 an open source java constraint programming library'</article-title>
          ,
          <source>in CP Solvers: Modeling</source>
          , Applications, Integration, and Standardization. International workshop.,
          <string-name>
            <surname>Uppsala</surname>
            <given-names>Sweden</given-names>
          </string-name>
          , (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <surname>Christian</surname>
            <given-names>Schulte</given-names>
          </string-name>
          ,
          <source>Programming Constraint Services, volume 2302 of Lecture Notes in Artificial Intelligence</source>
          , Springer-Verlag,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>Christian</given-names>
            <surname>Schulte</surname>
          </string-name>
          and Mats Carlsson, '
          <article-title>Finite domain constraint programming systems', Handbook of constraint programming</article-title>
          ,
          <volume>495</volume>
          -
          <fpage>526</fpage>
          , (
          <year>2006</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>Christian</given-names>
            <surname>Schulte</surname>
          </string-name>
          and
          <string-name>
            <given-names>Gert</given-names>
            <surname>Smolka</surname>
          </string-name>
          .
          <article-title>Finite domain constraint programming in oz. a tutorial</article-title>
          .,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <surname>Christian</surname>
            <given-names>Schulte</given-names>
          </string-name>
          , Guido Tack, and
          <string-name>
            <given-names>Mikael Z.</given-names>
            <surname>Lagerkvist</surname>
          </string-name>
          .
          <article-title>Modeling and programming with gecode</article-title>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>S</given-names>
            <surname>Shikder</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A</given-names>
            <surname>Price</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M</given-names>
            <surname>Mourshed</surname>
          </string-name>
          , '
          <article-title>Interactive constraint-based space layout planning'</article-title>
          ,
          <source>W070-Special Track 18th CIB World Building Congress May 2010 Salford, United Kingdom</source>
          ,
          <volume>112</volume>
          , (
          <year>2010</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <surname>Timo</surname>
            <given-names>Soininen</given-names>
          </string-name>
          , Juha Tiihonen, Tomi Ma¨nnist o¨, and Reijo Sulonen, '
          <article-title>Towards a general ontology of configuration'</article-title>
          ,
          <source>Artif. Intell. Eng. Des. Anal. Manuf</source>
          .,
          <volume>12</volume>
          (
          <issue>4</issue>
          ),
          <fpage>357</fpage>
          -
          <lpage>372</lpage>
          , (
          <year>September 1998</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>E´ lise Vareilles. Paul Gaborit. Michel</given-names>
            <surname>Aldanondo</surname>
          </string-name>
          . Sabinne Carbonnel. Laurent Steffan, '
          <article-title>Cofiade constraints filtering for aiding design'</article-title>
          , in Actes des neuviemes Journe´es Francophones de Programmation par Contraintes, Toulouse France, (
          <year>2012</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>E.</given-names>
            <surname>Vareilles</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. F.</given-names>
            <surname>Barco</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Falcon</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Aldanondo</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P.</given-names>
            <surname>Gaborit</surname>
          </string-name>
          , '
          <article-title>Configuration of high performance apartment buildings renovation: a constraint based approach'</article-title>
          , in Conference of Industrial Engineering and
          <article-title>Engineering Management (IEEM)</article-title>
          . IEEE., (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          [29]
          <string-name>
            <surname>Dong</surname>
            <given-names>Yang</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>Ming</given-names>
            <surname>Dong</surname>
          </string-name>
          , and Rui Miao, '
          <article-title>Development of a product configuration system with an ontology-based approach'</article-title>
          , Computer-Aided Design,
          <volume>40</volume>
          (
          <issue>8</issue>
          ),
          <fpage>863</fpage>
          -
          <lpage>878</lpage>
          , (
          <year>2008</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          [30]
          <string-name>
            <given-names>M.</given-names>
            <surname>Zawidzki</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Tateyama</surname>
          </string-name>
          ,
          <string-name>
            <surname>and I. Nishikawa</surname>
          </string-name>
          , '
          <article-title>The constraints satisfaction problem approach in the design of an architectural functional layout'</article-title>
          , Engineering Optimization,
          <volume>43</volume>
          (
          <issue>9</issue>
          ), pp.
          <fpage>943</fpage>
          -
          <lpage>966</lpage>
          , (
          <year>2011</year>
          ).
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>