SlideShare a Scribd company logo
1 of 48
Download to read offline
Building Information Modeling Using Constraint Logic Programming
Joaquı́n Arias1
Seppo Törmä2
Manuel Carro3,4
Gopal Gupta5
1
CETINIA, Universidad Rey Juan Carlos, Madrid, Spain 2
VisuaLynk Oy, Espoo, Finland
3
Universidad Politécnica de Madrid, Spain 4
IMDEA Software Institute, Pozuelo, Spain
5
University of Texas at Dallas, Richardson, USA
2 August 2022 [ICLP’22]
www.ia.urjc.es
Introduction: Modeling BIM models
• Building Information Modeling (BIM) represents the 3D geometry and
properties (costs, materials, process, etc.), of buildings as digital models.
• For each building, architects and engineers create specifics models.
• These specifics models must be shared and combined.
• Automated tools are needed to check the integrity of the merged model.
• In addition, the models must comply with building regulations.
• The design and construction of a building is a sequence of decisions.
Center for Intelligent Information Technologies 1/15
www.ia.urjc.es
Introduction: Modeling BIM models
• Building Information Modeling (BIM) represents the 3D geometry and
properties (costs, materials, process, etc.), of buildings as digital models.
• For each building, architects and engineers create specifics models.
• These specifics models must be shared and combined.
• Automated tools are needed to check the integrity of the merged model.
• In addition, the models must comply with building regulations.
• The design and construction of a building is a sequence of decisions.
Automated BIM tools must:
• Combine geometrical reasoning and symbolic/conceptual knowledge.
• Reason in presence of vague concepts and incomplete information.
• Deal with the ambiguity present in regulatory codes and standards.
Center for Intelligent Information Technologies 1/15
www.ia.urjc.es
Motivation and Proposal
Logic programming-based tools meet many of the requirements:
• The following examples overcome some limitations of IFC-based tools:
• The query language, BimSPARQL [13].
• Model checkers for safety [14] or acoustic rules [9], and BIMRL [12].
• A translator of building regulation, KBimCode [7].
• A tool based on clingo, ASP4BIM [8].
• However, they have limitations in meeting all requirements.
Center for Intelligent Information Technologies 2/15
www.ia.urjc.es
Motivation and Proposal
Logic programming-based tools meet many of the requirements:
• The following examples overcome some limitations of IFC-based tools:
• The query language, BimSPARQL [13].
• Model checkers for safety [14] or acoustic rules [9], and BIMRL [12].
• A translator of building regulation, KBimCode [7].
• A tool based on clingo, ASP4BIM [8].
• However, they have limitations in meeting all requirements.
Our Proposal
• Use tools integrating Constraint Logic Programming with ASP to
model dynamic information and restrictions in BIM models.
• Shift from BIM verification to BIM refinement and to facilitate the
implementation of new specifications, construction standards, etc.
Center for Intelligent Information Technologies 2/15
www.ia.urjc.es
Contributions
• A framework, based on Constraint Answer Set Programming (CASP),
that allows unified geometrical and non-geometrical information.
• The prototype of a preliminary 3D reasoner under Prolog with
CLP(Q/R) that we evaluate with several BIM models.
• The outline of an alternative implementation of this spatial reasoner
under CASP, using s(CASP) [2], a goal-directed implementation.
Center for Intelligent Information Technologies 3/15
www.ia.urjc.es
Contributions
• A framework, based on Constraint Answer Set Programming (CASP),
that allows unified geometrical and non-geometrical information.
• The prototype of a preliminary 3D reasoner under Prolog with
CLP(Q/R) that we evaluate with several BIM models.
• The outline of an alternative implementation of this spatial reasoner
under CASP, using s(CASP) [2], a goal-directed implementation.
Evidence of advantages of s(CASP) in evaluating BIM models:
• It has the relevance property,
• It can generate justifications for negative queries, and
• It makes representing and reasoning with ambiguities easier.
Center for Intelligent Information Technologies 3/15
www.ia.urjc.es
Background: BIM + IFC
• Building information modeling (BIM):
• Combine geometrical information with:
costs, materials, process, etc.
• Allow cost estimations, quantify takeoffs,
energy analysis, etc.
• Goal: achieve consistent of digital models:
• shared with architects, engineers...
• throughout the life cycle of a facility.
• The UK Government requires Level 2 of BIM
maturity for any public project.
• BIM authoring tools: Revit, ArchiCAD, Tekla
Structures, Allplan...
• Common data model: Industry Foundation
Classes (IFC) [4].
Center for Intelligent Information Technologies 4/15
www.ia.urjc.es
Background: s(CASP)
• Goal directed execution of Constraint ASP without grounding [2].
• Provide constructive negation, also for constraints:
Center for Intelligent Information Technologies 5/15
www.ia.urjc.es
Background: s(CASP)
• Goal directed execution of Constraint ASP without grounding [2].
• Provide constructive negation, also for constraints:
Program
1 size(r1,S):- S #>= 21.
Center for Intelligent Information Technologies 5/15
www.ia.urjc.es
Background: s(CASP)
• Goal directed execution of Constraint ASP without grounding [2].
• Provide constructive negation, also for constraints:
Program
1 size(r1,S):- S #>= 21.
Query Model
?- not size(r1,S). { not size(r1,S | {S #< 21})}
Center for Intelligent Information Technologies 5/15
www.ia.urjc.es
Background: s(CASP)
• Goal directed execution of Constraint ASP without grounding [2].
• Provide constructive negation, also for constraints:
Program
1 size(r1,S):- S #>= 21.
Query Model
?- not size(r1,S). { not size(r1,S | {S #< 21})}
• ... handle non-stratified negation (generating [partial] models featuring
relevance [10]):
Center for Intelligent Information Technologies 5/15
www.ia.urjc.es
Background: s(CASP)
• Goal directed execution of Constraint ASP without grounding [2].
• Provide constructive negation, also for constraints:
Program
1 size(r1,S):- S #>= 21.
Query Model
?- not size(r1,S). { not size(r1,S | {S #< 21})}
• ... handle non-stratified negation (generating [partial] models featuring
relevance [10]):
Program
1 small(r1):- not big(r1).
2 big(r1):- not small(r1).
3 kitchen(r1).
Center for Intelligent Information Technologies 5/15
www.ia.urjc.es
Background: s(CASP)
• Goal directed execution of Constraint ASP without grounding [2].
• Provide constructive negation, also for constraints:
Program
1 size(r1,S):- S #>= 21.
Query Model
?- not size(r1,S). { not size(r1,S | {S #< 21})}
• ... handle non-stratified negation (generating [partial] models featuring
relevance [10]):
Program
1 small(r1):- not big(r1).
2 big(r1):- not small(r1).
3 kitchen(r1).
Queries Models
?- small(r1). { small(r1), not big(r1)}
Center for Intelligent Information Technologies 5/15
www.ia.urjc.es
Background: s(CASP)
• Goal directed execution of Constraint ASP without grounding [2].
• Provide constructive negation, also for constraints:
Program
1 size(r1,S):- S #>= 21.
Query Model
?- not size(r1,S). { not size(r1,S | {S #< 21})}
• ... handle non-stratified negation (generating [partial] models featuring
relevance [10]):
Program
1 small(r1):- not big(r1).
2 big(r1):- not small(r1).
3 kitchen(r1).
Queries Models
?- small(r1). { small(r1), not big(r1)}
?- big(r1). { big(r1), not small(r1)}
Center for Intelligent Information Technologies 5/15
www.ia.urjc.es
Background: s(CASP)
• Goal directed execution of Constraint ASP without grounding [2].
• Provide constructive negation, also for constraints:
Program
1 size(r1,S):- S #>= 21.
Query Model
?- not size(r1,S). { not size(r1,S | {S #< 21})}
• ... handle non-stratified negation (generating [partial] models featuring
relevance [10]):
Program
1 small(r1):- not big(r1).
2 big(r1):- not small(r1).
3 kitchen(r1).
Queries Models
?- small(r1). { small(r1), not big(r1)}
?- big(r1). { big(r1), not small(r1)}
?- kitchen(r1). { kitchen(r1)}
Center for Intelligent Information Technologies 5/15
www.ia.urjc.es
Background: s(CASP)
• Goal directed execution of Constraint ASP without grounding [2].
• Provide constructive negation, also for constraints:
Program
1 size(r1,S):- S #>= 21.
Query Model
?- not size(r1,S). { not size(r1,S | {S #< 21})}
• ... handle non-stratified negation (generating [partial] models featuring
relevance [10]):
Program
1 small(r1):- not big(r1).
2 big(r1):- not small(r1).
3 kitchen(r1).
Queries Models
?- small(r1). { small(r1), not big(r1)}
?- big(r1). { big(r1), not small(r1)}
?- kitchen(r1). { kitchen(r1)}
• Support classical negation, i.e., -small(r1) means that we have explicit
evidence that r1 is not small.
Center for Intelligent Information Technologies 5/15
www.ia.urjc.es
Background: s(CASP)
• Goal directed execution of Constraint ASP without grounding [2].
• Provide constructive negation, also for constraints:
Program
1 size(r1,S):- S #>= 21.
Query Model
?- not size(r1,S). { not size(r1,S | {S #< 21})}
• ... handle non-stratified negation (generating [partial] models featuring
relevance [10]):
Program
1 small(r1):- not big(r1).
2 big(r1):- not small(r1).
3 kitchen(r1).
Queries Models
?- small(r1). { small(r1), not big(r1)}
?- big(r1). { big(r1), not small(r1)}
?- kitchen(r1). { kitchen(r1)}
• Support classical negation, i.e., -small(r1) means that we have explicit
evidence that r1 is not small.
• s(CASP) generates justification trees (in natural language) [1].
Center for Intelligent Information Technologies 5/15
www.ia.urjc.es
Modeling Vague Concepts
• An efficient representation of vague concepts due to unknown
information, ambiguity, and/or administrative discretion, is needed.
Consider the building regulation norm:
In the room there is at least one window, and
each window must be wider than 0.60 m.
If the room is small, it can be between 0.50
and 0.60 m wide.
1 requirement(Room):- not small(Room),
2 window_belongs(Window,Room),
3 width(Window,Width), Width #> 0.60.
4 requirement(Room):- small(Room),
5 window_belongs(Window,Room),
6 width(Window,Width), Width #> 0.50.
• If the size of a room or the criteria to consider that a room is small is
unknown, only the first rule would succeed.
Center for Intelligent Information Technologies 6/15
www.ia.urjc.es
Modeling Vague Concepts
• An efficient representation of vague concepts due to unknown
information, ambiguity, and/or administrative discretion, is needed.
Consider the building regulation norm:
In the room there is at least one window, and
each window must be wider than 0.60 m.
If the room is small, it can be between 0.50
and 0.60 m wide.
1 requirement(Room):- not small(Room),
2 window_belongs(Window,Room),
3 width(Window,Width), Width #> 0.60.
4 requirement(Room):- small(Room),
5 window_belongs(Window,Room),
6 width(Window,Width), Width #> 0.50.
• If the size of a room or the criteria to consider that a room is small is
unknown, only the first rule would succeed.
Proposal: Use of stable model semantics [3; 5]
• In the previous example we can consider two scenarios (models):
... in one a given room is small and in the other, it is not.
Center for Intelligent Information Technologies 6/15
www.ia.urjc.es
Modeling and manipulating 3D objects: CLP(Q/R)
• Convex shapes are represented using linear equations.
• CLP(Q/R) [6] can be used to solve the resulting linear constraints.
• Using CLP(Q/R) objects are represented as a list of convex shapes:
1 box(point(Xa,Ya,Za), point(Xb,Yb,Zb), [convex([X,Y,Z])]) :-
2 X#>=Xa, X#<Xb, Y#>=Ya, Y#<Yb, Z#>=Za, Z#<Zb.
Center for Intelligent Information Technologies 7/15
www.ia.urjc.es
Modeling and manipulating 3D objects: CLP(Q/R)
• Convex shapes are represented using linear equations.
• CLP(Q/R) [6] can be used to solve the resulting linear constraints.
• Using CLP(Q/R) objects are represented as a list of convex shapes:
1 box(point(Xa,Ya,Za), point(Xb,Yb,Zb), [convex([X,Y,Z])]) :-
2 X#>=Xa, X#<Xb, Y#>=Ya, Y#<Yb, Z#>=Za, Z#<Zb.
• Operations: union, intersection, complement, and subtraction:
1 obj(r1, [convex([X,Y])]) :- X#>=1, X#<4, Y#>=2, Y#<5.
2 obj(r2, [convex([X,Y])]) :- X#>=3, X#<5, Y#>=1, Y#<4.
?- obj(r1,Sh1), obj(r2,Sh2),sh_intersection(Sh1, Sh2, Int).
Int = [convex([A,B])], A#>=3, A#<4, B#>=2, B#<4 ?
?- obj(r1,Sh1), obj(r2,Sh2),sh_subtraction(Sh1, Sh2, Sub).
Sub = [convex([A,B]),convex([C,D])],
A#>=1,A#<3,B#>=2,B#<5, C#>=3,C#<4,D#>=4,D#<5 ?
Center for Intelligent Information Technologies 7/15
www.ia.urjc.es
Modeling and manipulating 3D objects: s(CASP) I
• The representation of the convex shapes are part of the program:
1 convex(r1, X, Y) :- X#>=1, X#<4, Y#>=2, Y#<5.
2 convex(r2, X, Y) :- X#>=3, X#<5, Y#>=1, Y#<4.
• They are handled as part of the constraint store of the program.
• A non-convex object is represented with several clauses, one for each
convex shape:
Center for Intelligent Information Technologies 8/15
www.ia.urjc.es
Modeling and manipulating 3D objects: s(CASP) I
• The representation of the convex shapes are part of the program:
1 convex(r1, X, Y) :- X#>=1, X#<4, Y#>=2, Y#<5.
2 convex(r2, X, Y) :- X#>=3, X#<5, Y#>=1, Y#<4.
• They are handled as part of the constraint store of the program.
• A non-convex object is represented with several clauses, one for each
convex shape:
?- shape_intersect(r1,r2,Int).
Int = convex([A | { A#>=3, A#<4 }, B | { B#>=2, B#<4 }]) ?
?- shape_subtract(r1,r2,Sub).
Sub = convex([A | { A#>=1, A#<3 }, B | { B#>=2, B#<5 }]) ? ;
Sub = convex([A | { A#>=3, A#<4 }, B | { B#>=4, B#<5 }]) ?
Center for Intelligent Information Technologies 8/15
www.ia.urjc.es
Modeling and manipulating 3D objects: s(CASP) II
Operations on a 2D space using s(CASP)
1 % Union = ShA ∪ ShB
2 shape_union(IdA, IdB, convex([X,Y])) :- convex(IdA,X,Y).
3 shape_union(IdA, IdB, convex([X,Y])) :- convex(IdB,X,Y).
4 % Intersection = ShA ∩ ShB
5 shape_intersect(IdA, IdB, convex([X,Y])) :- convex(IdA,X,Y), convex(IdB,X,Y).
6 % Complement = ¬ ShA
7 shape_complement(IdA, convex([X,Y])) :- not convex(IdA,X,Y).
8 % Subtract = ShA ∩ ¬ ShB
9 shape_subtract(IdA, IdB, convex([X,Y])) :- convex(IdA,X,Y), not convex(IdB,X,Y).
• 9 lines of code instead of 39 lines.
• Spatial operations are translated into logical operations.
Center for Intelligent Information Technologies 9/15
www.ia.urjc.es
(Non)-monotonic iteration in BIM models
• Consider the design process of a room and the fire safety norm below:
• If a gas boiler is used, the ventilation must be natural.
window surface area is at least 10% of the floor area.
• If the boiler is electric, the ventilation could be natural or mechanical.
Center for Intelligent Information Technologies 10/15
www.ia.urjc.es
(Non)-monotonic iteration in BIM models
• Consider the design process of a room and the fire safety norm below:
• If a gas boiler is used, the ventilation must be natural.
window surface area is at least 10% of the floor area.
• If the boiler is electric, the ventilation could be natural or mechanical.
• Possible timeline:
1. Initially, the shared BIM model has no
ventilation or boiler restrictions.
2. The architect reduces the size of the
window (surface less that 10%).
3. ALERT: An electric boiler is selected.
4. At the same time, the engineer selects a
gas boiler for efficiency.
5. ALERT: Ventilation must be natural.
6. ERROR: when attempting to merge both
models, an inconsistency is detected.
Center for Intelligent Information Technologies 10/15
www.ia.urjc.es
(Non)-monotonic iteration in BIM models
• Consider the design process of a room and the fire safety norm below:
• If a gas boiler is used, the ventilation must be natural.
window surface area is at least 10% of the floor area.
• If the boiler is electric, the ventilation could be natural or mechanical.
• Possible timeline:
1. Initially, the shared BIM model has no
ventilation or boiler restrictions.
2. The architect reduces the size of the
window (surface less that 10%).
3. ALERT: An electric boiler is selected.
4. At the same time, the engineer selects a
gas boiler for efficiency.
5. ALERT: Ventilation must be natural.
6. ERROR: when attempting to merge both
models, an inconsistency is detected.
• A naive approach to handle the ERROR
would broadcast the inconsistency.
Center for Intelligent Information Technologies 10/15
www.ia.urjc.es
(Non)-monotonic iteration in BIM models
• Consider the design process of a room and the fire safety norm below:
• If a gas boiler is used, the ventilation must be natural.
window surface area is at least 10% of the floor area.
• If the boiler is electric, the ventilation could be natural or mechanical.
• Possible timeline:
1. Initially, the shared BIM model has no
ventilation or boiler restrictions.
2. The architect reduces the size of the
window (surface less that 10%).
3. ALERT: An electric boiler is selected.
4. At the same time, the engineer selects a
gas boiler for efficiency.
5. ALERT: Ventilation must be natural.
6. ERROR: when attempting to merge both
models, an inconsistency is detected.
• A naive approach to handle the ERROR
would broadcast the inconsistency.
Proposal:
• A continuous integration reasoner:
• that determines who is the expert whose
opinion prevails
• makes a decision based on that.
• notifies the other party to confirm the
adjustments.
Center for Intelligent Information Technologies 10/15
www.ia.urjc.es
(Non)-monotonic iteration in BIM models (cont.)
Encoding of a Continuous Integration reasoner
1 %% BIM Continuous Integration
2 valid_data(P,Data) :-
3 data(P,Data),
4 not canceled(P, Data).
5
6 canceled(P, Data) :-
7 higher_confidence(P1, P),
8 data(P1, Data1),
9 inconsistent(Data, Data1).
10 higher_confidence(PHi, PLo) :-
11 PHi #> PLo.
12 %% Example
13 inconsistent(boiler(gas),
14 ventilation(artificial)).
15 inconsistent(ventilation(artificial),
16 boiler(gas)).
17 data(1,ventilation(X)).
18 data(2,ventilation(natural)).
19 data(2,boiler(gas)).
20 % data(3,ventilation(artificial)).
21 % data(3,boiler(electrical)).
22 % data(4,boiler(gas)).
Center for Intelligent Information Technologies 11/15
www.ia.urjc.es
Evaluation I: Comprehensibility (reason in presence of vague concepts)
• Reason about various scenarios simultaneously (or not).
1 % Hotel with 8 rooms - only the size of 3 of them is known.
2 room(r1). room(r2). room(r3). room(r4).
3 room(r5). room(r6). room(r7). room(r8).
4 size(r1, 25). size(r2, 5). size(r3, 15).
5 % Uncertain whether rooms of 10 to 20 m2 are small or not.
6 evidence(Room, small) :- size(Room,Size), Size#<10.
7 -evidence(Room, small) :- size(Room,Size), Size#>20.
8 % Explicit evidence for / against or generate two models.
9 small(Room) :- evidence(Room,small).
10 -small(Room) :- -evidence(Room,small).
11 small(Room) :- not evidence(Room,small), not -small(Room).
12 -small(Room) :- not -evidence(Room,small), not small(Room).
13 % Inferring conclusions from evidence and/or assumptions.
14 room_is(Room,big) :- room(Room), -small(Room).
15 room_is(Room,small) :- room(Room), small(Room).
Center for Intelligent Information Technologies 12/15
www.ia.urjc.es
Evaluation I: Comprehensibility (reason in presence of vague concepts)
• Reason about various scenarios simultaneously (or not).
1 % Hotel with 8 rooms - only the size of 3 of them is known.
2 room(r1). room(r2). room(r3). room(r4).
3 room(r5). room(r6). room(r7). room(r8).
4 size(r1, 25). size(r2, 5). size(r3, 15).
5 % Uncertain whether rooms of 10 to 20 m2 are small or not.
6 evidence(Room, small) :- size(Room,Size), Size#<10.
7 -evidence(Room, small) :- size(Room,Size), Size#>20.
8 % Explicit evidence for / against or generate two models.
9 small(Room) :- evidence(Room,small).
10 -small(Room) :- -evidence(Room,small).
11 small(Room) :- not evidence(Room,small), not -small(Room).
12 -small(Room) :- not -evidence(Room,small), not small(Room).
13 % Inferring conclusions from evidence and/or assumptions.
14 room_is(Room,big) :- room(Room), -small(Room).
15 room_is(Room,small) :- room(Room), small(Room).
• For ?- room_is(Room,Size):
• s(CASP) returns 14 partial
models.
• clingo returns 64 models.
Center for Intelligent Information Technologies 12/15
www.ia.urjc.es
Evaluation I: Comprehensibility (reason in presence of vague concepts)
• Reason about various scenarios simultaneously (or not).
1 % Hotel with 8 rooms - only the size of 3 of them is known.
2 room(r1). room(r2). room(r3). room(r4).
3 room(r5). room(r6). room(r7). room(r8).
4 size(r1, 25). size(r2, 5). size(r3, 15).
5 % Uncertain whether rooms of 10 to 20 m2 are small or not.
6 evidence(Room, small) :- size(Room,Size), Size#<10.
7 -evidence(Room, small) :- size(Room,Size), Size#>20.
8 % Explicit evidence for / against or generate two models.
9 small(Room) :- evidence(Room,small).
10 -small(Room) :- -evidence(Room,small).
11 small(Room) :- not evidence(Room,small), not -small(Room).
12 -small(Room) :- not -evidence(Room,small), not small(Room).
13 % Inferring conclusions from evidence and/or assumptions.
14 room_is(Room,big) :- room(Room), -small(Room).
15 room_is(Room,small) :- room(Room), small(Room).
• For ?- room_is(Room,Size):
• s(CASP) returns 14 partial
models.
• clingo returns 64 models.
Considering 16 rooms
• s(CASP) returns 30 partial models.
• clingo returns 16384 models.
Center for Intelligent Information Technologies 12/15
www.ia.urjc.es
Evaluation I: Comprehensibility (reason in presence of vague concepts)
• Reason about various scenarios simultaneously (or not).
1 % Hotel with 8 rooms - only the size of 3 of them is known.
2 room(r1). room(r2). room(r3). room(r4).
3 room(r5). room(r6). room(r7). room(r8).
4 size(r1, 25). size(r2, 5). size(r3, 15).
5 % Uncertain whether rooms of 10 to 20 m2 are small or not.
6 evidence(Room, small) :- size(Room,Size), Size#<10.
7 -evidence(Room, small) :- size(Room,Size), Size#>20.
8 % Explicit evidence for / against or generate two models.
9 small(Room) :- evidence(Room,small).
10 -small(Room) :- -evidence(Room,small).
11 small(Room) :- not evidence(Room,small), not -small(Room).
12 -small(Room) :- not -evidence(Room,small), not small(Room).
13 % Inferring conclusions from evidence and/or assumptions.
14 room_is(Room,big) :- room(Room), -small(Room).
15 room_is(Room,small) :- room(Room), small(Room).
• For ?- room_is(Room,Size):
• s(CASP) returns 14 partial
models.
• clingo returns 64 models.
Considering 16 rooms
• s(CASP) returns 30 partial models.
• clingo returns 16384 models.
This exponential explosion in the
# models generated by clingo...
... reduces the comprehensibility.
Center for Intelligent Information Technologies 12/15
www.ia.urjc.es
Evaluation II: Geometrical and non-geometrical information.
(a) Duplex_Q1.html (b) Duplex_Q2.html
(c) Office_Q1.html (d) Office_Q2.html
Query Duplex Q1: The doors are in green and the rest of the objects are in blue.
Center for Intelligent Information Technologies 13/15
www.ia.urjc.es
Evaluation II: Geometrical and non-geometrical information.
(a) Duplex_Q1.html (b) Duplex_Q2.html
(c) Office_Q1.html (d) Office_Q2.html
Query Duplex Q2: imposes the constraints Ya#<-4 to select certain doors, and Y#>=-7, Y#<-4
to create a space (unbounded in the axis x and z) that defines a slice of the model.
Center for Intelligent Information Technologies 13/15
www.ia.urjc.es
Evaluation II: Geometrical and non-geometrical information.
(a) Duplex_Q1.html (b) Duplex_Q2.html
(c) Office_Q1.html (d) Office_Q2.html
Constraints can be used in s(CASP) to reason about unbounded spaces
• Finer constraints, such as Ya#<-4.002, can be used without performance impact.
• That is in general not the case with other ASP systems.
Center for Intelligent Information Technologies 13/15
www.ia.urjc.es
Evaluation II: Geometrical and non-geometrical information.
(a) Duplex_Q1.html (b) Duplex_Q2.html
(c) Office_Q1.html (d) Office_Q2.html
Query Office Q1/Q2: selects objects of type IfcBeam in the Architecture model that are not
covered by objects in the Structural BIM model.
(c) shows the objects that intersect the beam. (d) shows the uncovered parts drawn in red.
Center for Intelligent Information Technologies 13/15
www.ia.urjc.es
Evaluation II: Geometrical and non-geometrical information.
(a) Duplex_Q1.html (b) Duplex_Q2.html
(c) Office_Q1.html (d) Office_Q2.html
Performance Query Office Q1/Q2
• Finds the first beam with uncovered parts in only 0.104 sec.
• Selects 691 beams out of 3639 objects in the architecture model and detected 511 beams
not covered by the more than 1300 objects in the structure model in 48 sec.
Center for Intelligent Information Technologies 13/15
www.ia.urjc.es
Evaluation III: Explainability of the inferred conclusions.
Center for Intelligent Information Technologies 14/15
www.ia.urjc.es
Evaluation III: Explainability of the inferred conclusions.
Center for Intelligent Information Technologies 14/15
www.ia.urjc.es
Conclusions
• We have highlighted the advantages of a well-founded approach to:
• Represent geometrical and non-geometrical building information
(including specifications, codes, and/or guidelines) as digital models.
• Handle changes to the models during their design, construction, and/or
facility time (removing, adding, or changing objects and properties).
• The use of CLP, and more specifically s(CASP), makes it possible to:
• Realize commonsense reasoning including geometrical data.
• Represent knowledge involving vague and/or unknown information.
Center for Intelligent Information Technologies 15/15
www.ia.urjc.es
Conclusions
• We have highlighted the advantages of a well-founded approach to:
• Represent geometrical and non-geometrical building information
(including specifications, codes, and/or guidelines) as digital models.
• Handle changes to the models during their design, construction, and/or
facility time (removing, adding, or changing objects and properties).
• The use of CLP, and more specifically s(CASP), makes it possible to:
• Realize commonsense reasoning including geometrical data.
• Represent knowledge involving vague and/or unknown information.
Future work
• Shift from BIM verification to BIM refinement.
• Develop non-monotonic model refinement methods.
• Integrate logical reasoning in BIM Software.
Center for Intelligent Information Technologies 15/15
www.ia.urjc.es
Conclusions
• We have highlighted the advantages of a well-founded approach to:
• Represent geometrical and non-geometrical building information
(including specifications, codes, and/or guidelines) as digital models.
• Handle changes to the models during their design, construction, and/or
facility time (removing, adding, or changing objects and properties).
• The use of CLP, and more specifically s(CASP), makes it possible to:
• Realize commonsense reasoning including geometrical data.
• Represent knowledge involving vague and/or unknown information.
Future work
• Shift from BIM verification to BIM refinement.
• Develop non-monotonic model refinement methods.
• Integrate logical reasoning in BIM Software. THANKS!
Center for Intelligent Information Technologies 15/15
References www.ia.urjc.es
Referencias I
[1] J. Arias, M. Carro, Z. Chen, and G. Gupta (2020). Justifications for Goal-Directed
Constraint Answer Set Programming. In: Proceedings 36th International Conference on
Logic Programming (Technical Communications). Vol. 325. EPTCS. Open Publishing
Association, pp. 59–72. doi: 10.4204/EPTCS.325.12.
[2] J. Arias, M. Carro, E. Salazar, K. Marple, and G. Gupta (2018). Constraint Answer Set
Programming without Grounding. In: Theory and Practice of Logic Programming 18.3-4,
pp. 337–354. doi: 10.1017/S1471068418000285.
[3] J. Arias, M. Moreno-Rebato, J. A. Rodriguez-Garcı́a, and S. Ossowski (2021). Modeling
Administrative Discretion Using Goal-Directed Answer Set Programming. In:
Advances in Artificial Intelligence, CAEPIA 20/21. Vol. 12882. LNCS. Springer, pp. 258–267.
doi: 10.1007/978-3-030-85713-4_25.
[4] BuildingSMART (2020). Industry Foundation Classes (IFC). Available at:
https://technical.buildingsmart.org/standards/ifc/. Accessed on July, 2020.
Center for Intelligent Information Technologies 16/15
References www.ia.urjc.es
Referencias II
[5] M. Gelfond and V. Lifschitz (1988). The Stable Model Semantics for Logic Programming.
In: ICLP’88, pp. 1070–1080.
[6] C. Holzbaur (1995). OFAI CLP(Q,R) Manual, Edition 1.3.3. Tech. rep. TR-95-09. Vienna:
Austrian Research Institute for Artificial Intelligence.
[7] H. Lee, J. Lee, S. Park, and I. Kim (2016). Translating building legislation into a
computer-executable format for evaluating building permit requirements. en. In:
Automation in Construction 71, pp. 49–61. doi: 10.1016/j.autcon.2016.04.008.
[8] B. Li, J. Teizer, and C. Schultz (2020). Non-monotonic Spatial Reasoning for Safety
Analysis in Construction. In: Proceedings of the 22nd International Symposium on
Principles and Practice of Declarative Programming, pp. 1–12.
Center for Intelligent Information Technologies 17/15
References www.ia.urjc.es
Referencias III
[9] P. Pauwels, D. Van Deursen, R. Verstraeten, J. De Roo, R. De Meyer, R. Van De Walle, and
J. Van Campenhout (2011). A semantic rule checking environment for building
performance checking. en. In: Automation in Construction 20.5, pp. 506–518. doi:
10.1016/j.autcon.2010.11.017.
[10] L. M. Pereira and J. N. Aparı́cio (1989). Relevant Counterfactuals. In: EPIA 89, 4th
Portuguese Conference on Artificial Intelligence, Lisbon, Portugal, September 26-29, 1989,
Proceedings, pp. 107–118. doi: 10.1007/3-540-51665-4_78.
[11] Singapore Government (2016). Corenet BIM e-Submission.
https://www.corenet.gov.sg/general/building-information-modeling-(bim)-e-
submission.aspx.
[12] W. Solihin (2015). A simplified BIM data representation using a relational database
schema for an efficient rule checking system and its associated rule checking
language. PhD thesis. Georgia Institute of Technology.
Center for Intelligent Information Technologies 18/15
References www.ia.urjc.es
Referencias IV
[13] C. Zhang, J. Beetz, and B. de Vries (2018). BimSPARQL: Domain-specific functional
SPARQL extensions for querying RDF building data. In: Semantic Web 9.6,
pp. 829–855.
[14] S. Zhang, J. Teizer, J. Lee, C. Eastman, and M. Venugopal (2013). Building Information
Modeling (BIM) and Safety: Automatic Safety Checking of Construction Models
and Schedules. en. In: Automation in Construction 29, pp. 183–195. doi:
10.1016/j.autcon.2012.05.006.
Center for Intelligent Information Technologies 19/15

More Related Content

Similar to Building Information Modeling Using Constraint Logic Programming

Supporting Architectural Variabiality in Software Product Lines
Supporting Architectural Variabiality in Software Product LinesSupporting Architectural Variabiality in Software Product Lines
Supporting Architectural Variabiality in Software Product LinesJaime Chavarriaga
 
Building product suggestions for a BIM model based on rule sets and a semant...
Building product suggestions for a BIM model based on rule sets and a  semant...Building product suggestions for a BIM model based on rule sets and a  semant...
Building product suggestions for a BIM model based on rule sets and a semant...Gonçal Costa Jutglar
 
Meetup 21/9/2017 - Image Recogonition: onmisbaar voor een slimme stad?
Meetup 21/9/2017 - Image Recogonition: onmisbaar voor een slimme stad?Meetup 21/9/2017 - Image Recogonition: onmisbaar voor een slimme stad?
Meetup 21/9/2017 - Image Recogonition: onmisbaar voor een slimme stad?Digipolis Antwerpen
 
Real-Time Engineering Simulators
Real-Time Engineering SimulatorsReal-Time Engineering Simulators
Real-Time Engineering SimulatorsGSE Systems, Inc.
 
Software Applications
Software ApplicationsSoftware Applications
Software ApplicationsXinYee Khoo
 
Software Application Presentation Slide
Software Application Presentation SlideSoftware Application Presentation Slide
Software Application Presentation SlideLee Pei Gie
 
The Role of Simulation in BIM
The Role of Simulation in BIMThe Role of Simulation in BIM
The Role of Simulation in BIMIES VE
 
Resume Shwo Tsai Jason Chen
Resume Shwo Tsai Jason ChenResume Shwo Tsai Jason Chen
Resume Shwo Tsai Jason Chenjasonchen888
 
Fiatech 2014 - Big BIM Implementation, Zuhair Haddad
Fiatech 2014 - Big BIM Implementation, Zuhair HaddadFiatech 2014 - Big BIM Implementation, Zuhair Haddad
Fiatech 2014 - Big BIM Implementation, Zuhair HaddadCCT International
 
Development_of_Computer_Aided_Critical_Lift_Planning_Software-libre
Development_of_Computer_Aided_Critical_Lift_Planning_Software-libreDevelopment_of_Computer_Aided_Critical_Lift_Planning_Software-libre
Development_of_Computer_Aided_Critical_Lift_Planning_Software-libreSrikanth Chadalavada
 
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...Nesma
 
Architecture vs. Design in Agile: What’s the Right Answer?
Architecture vs. Design in Agile: What’s the Right Answer?Architecture vs. Design in Agile: What’s the Right Answer?
Architecture vs. Design in Agile: What’s the Right Answer?TechWell
 
Qualcomm Webinar: Solving Unsolvable Combinatorial Problems with AI
Qualcomm Webinar: Solving Unsolvable Combinatorial Problems with AIQualcomm Webinar: Solving Unsolvable Combinatorial Problems with AI
Qualcomm Webinar: Solving Unsolvable Combinatorial Problems with AIQualcomm Research
 
How Accurate is Future Facilities 6Sigma DCX
How Accurate is Future Facilities 6Sigma DCXHow Accurate is Future Facilities 6Sigma DCX
How Accurate is Future Facilities 6Sigma DCXRobert Schmidt
 
Seminar pasqualina potena
Seminar pasqualina potenaSeminar pasqualina potena
Seminar pasqualina potenafbk-das
 
Visualizing the engineering project lifecycle - Unite Copenhagen
Visualizing the engineering project lifecycle - Unite CopenhagenVisualizing the engineering project lifecycle - Unite Copenhagen
Visualizing the engineering project lifecycle - Unite CopenhagenUnity Technologies
 

Similar to Building Information Modeling Using Constraint Logic Programming (20)

Supporting Architectural Variabiality in Software Product Lines
Supporting Architectural Variabiality in Software Product LinesSupporting Architectural Variabiality in Software Product Lines
Supporting Architectural Variabiality in Software Product Lines
 
Building product suggestions for a BIM model based on rule sets and a semant...
Building product suggestions for a BIM model based on rule sets and a  semant...Building product suggestions for a BIM model based on rule sets and a  semant...
Building product suggestions for a BIM model based on rule sets and a semant...
 
Meetup 21/9/2017 - Image Recogonition: onmisbaar voor een slimme stad?
Meetup 21/9/2017 - Image Recogonition: onmisbaar voor een slimme stad?Meetup 21/9/2017 - Image Recogonition: onmisbaar voor een slimme stad?
Meetup 21/9/2017 - Image Recogonition: onmisbaar voor een slimme stad?
 
FAISAL SULEMAN_CV
FAISAL SULEMAN_CVFAISAL SULEMAN_CV
FAISAL SULEMAN_CV
 
Real-Time Engineering Simulators
Real-Time Engineering SimulatorsReal-Time Engineering Simulators
Real-Time Engineering Simulators
 
Software Applications
Software ApplicationsSoftware Applications
Software Applications
 
Software Application Presentation Slide
Software Application Presentation SlideSoftware Application Presentation Slide
Software Application Presentation Slide
 
The Role of Simulation in BIM
The Role of Simulation in BIMThe Role of Simulation in BIM
The Role of Simulation in BIM
 
Resume Shwo Tsai Jason Chen
Resume Shwo Tsai Jason ChenResume Shwo Tsai Jason Chen
Resume Shwo Tsai Jason Chen
 
Fiatech 2014 - Big BIM Implementation, Zuhair Haddad
Fiatech 2014 - Big BIM Implementation, Zuhair HaddadFiatech 2014 - Big BIM Implementation, Zuhair Haddad
Fiatech 2014 - Big BIM Implementation, Zuhair Haddad
 
Mentor vlsi lab btech_4_1
Mentor vlsi lab btech_4_1Mentor vlsi lab btech_4_1
Mentor vlsi lab btech_4_1
 
Development_of_Computer_Aided_Critical_Lift_Planning_Software-libre
Development_of_Computer_Aided_Critical_Lift_Planning_Software-libreDevelopment_of_Computer_Aided_Critical_Lift_Planning_Software-libre
Development_of_Computer_Aided_Critical_Lift_Planning_Software-libre
 
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
 
Architecture vs. Design in Agile: What’s the Right Answer?
Architecture vs. Design in Agile: What’s the Right Answer?Architecture vs. Design in Agile: What’s the Right Answer?
Architecture vs. Design in Agile: What’s the Right Answer?
 
Resume
ResumeResume
Resume
 
Qualcomm Webinar: Solving Unsolvable Combinatorial Problems with AI
Qualcomm Webinar: Solving Unsolvable Combinatorial Problems with AIQualcomm Webinar: Solving Unsolvable Combinatorial Problems with AI
Qualcomm Webinar: Solving Unsolvable Combinatorial Problems with AI
 
Niti Srivastava_CV
Niti Srivastava_CVNiti Srivastava_CV
Niti Srivastava_CV
 
How Accurate is Future Facilities 6Sigma DCX
How Accurate is Future Facilities 6Sigma DCXHow Accurate is Future Facilities 6Sigma DCX
How Accurate is Future Facilities 6Sigma DCX
 
Seminar pasqualina potena
Seminar pasqualina potenaSeminar pasqualina potena
Seminar pasqualina potena
 
Visualizing the engineering project lifecycle - Unite Copenhagen
Visualizing the engineering project lifecycle - Unite CopenhagenVisualizing the engineering project lifecycle - Unite Copenhagen
Visualizing the engineering project lifecycle - Unite Copenhagen
 

Recently uploaded

Raman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral Analysis
Raman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral AnalysisRaman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral Analysis
Raman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral AnalysisDiwakar Mishra
 
Biological Classification BioHack (3).pdf
Biological Classification BioHack (3).pdfBiological Classification BioHack (3).pdf
Biological Classification BioHack (3).pdfmuntazimhurra
 
VIRUSES structure and classification ppt by Dr.Prince C P
VIRUSES structure and classification ppt by Dr.Prince C PVIRUSES structure and classification ppt by Dr.Prince C P
VIRUSES structure and classification ppt by Dr.Prince C PPRINCE C P
 
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdfPests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdfPirithiRaju
 
Disentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOSTDisentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOSTSérgio Sacani
 
Presentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxPresentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxgindu3009
 
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...Sérgio Sacani
 
Botany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdfBotany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdfSumit Kumar yadav
 
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43bNightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43bSérgio Sacani
 
Botany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questionsBotany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questionsSumit Kumar yadav
 
Zoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdfZoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdfSumit Kumar yadav
 
DIFFERENCE IN BACK CROSS AND TEST CROSS
DIFFERENCE IN  BACK CROSS AND TEST CROSSDIFFERENCE IN  BACK CROSS AND TEST CROSS
DIFFERENCE IN BACK CROSS AND TEST CROSSLeenakshiTyagi
 
Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)PraveenaKalaiselvan1
 
fundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomologyfundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomologyDrAnita Sharma
 
Isotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoIsotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoSérgio Sacani
 
GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)Areesha Ahmad
 
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.Nitya salvi
 
Physiochemical properties of nanomaterials and its nanotoxicity.pptx
Physiochemical properties of nanomaterials and its nanotoxicity.pptxPhysiochemical properties of nanomaterials and its nanotoxicity.pptx
Physiochemical properties of nanomaterials and its nanotoxicity.pptxAArockiyaNisha
 
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...Lokesh Kothari
 

Recently uploaded (20)

Raman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral Analysis
Raman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral AnalysisRaman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral Analysis
Raman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral Analysis
 
Biological Classification BioHack (3).pdf
Biological Classification BioHack (3).pdfBiological Classification BioHack (3).pdf
Biological Classification BioHack (3).pdf
 
VIRUSES structure and classification ppt by Dr.Prince C P
VIRUSES structure and classification ppt by Dr.Prince C PVIRUSES structure and classification ppt by Dr.Prince C P
VIRUSES structure and classification ppt by Dr.Prince C P
 
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdfPests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
 
Disentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOSTDisentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOST
 
Presentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxPresentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptx
 
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
 
Botany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdfBotany 4th semester file By Sumit Kumar yadav.pdf
Botany 4th semester file By Sumit Kumar yadav.pdf
 
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43bNightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
 
Botany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questionsBotany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questions
 
Zoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdfZoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdf
 
DIFFERENCE IN BACK CROSS AND TEST CROSS
DIFFERENCE IN  BACK CROSS AND TEST CROSSDIFFERENCE IN  BACK CROSS AND TEST CROSS
DIFFERENCE IN BACK CROSS AND TEST CROSS
 
Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)Recombinant DNA technology (Immunological screening)
Recombinant DNA technology (Immunological screening)
 
fundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomologyfundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomology
 
Isotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoIsotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on Io
 
GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)
 
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
 
Physiochemical properties of nanomaterials and its nanotoxicity.pptx
Physiochemical properties of nanomaterials and its nanotoxicity.pptxPhysiochemical properties of nanomaterials and its nanotoxicity.pptx
Physiochemical properties of nanomaterials and its nanotoxicity.pptx
 
The Philosophy of Science
The Philosophy of ScienceThe Philosophy of Science
The Philosophy of Science
 
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
 

Building Information Modeling Using Constraint Logic Programming

  • 1. Building Information Modeling Using Constraint Logic Programming Joaquı́n Arias1 Seppo Törmä2 Manuel Carro3,4 Gopal Gupta5 1 CETINIA, Universidad Rey Juan Carlos, Madrid, Spain 2 VisuaLynk Oy, Espoo, Finland 3 Universidad Politécnica de Madrid, Spain 4 IMDEA Software Institute, Pozuelo, Spain 5 University of Texas at Dallas, Richardson, USA 2 August 2022 [ICLP’22]
  • 2. www.ia.urjc.es Introduction: Modeling BIM models • Building Information Modeling (BIM) represents the 3D geometry and properties (costs, materials, process, etc.), of buildings as digital models. • For each building, architects and engineers create specifics models. • These specifics models must be shared and combined. • Automated tools are needed to check the integrity of the merged model. • In addition, the models must comply with building regulations. • The design and construction of a building is a sequence of decisions. Center for Intelligent Information Technologies 1/15
  • 3. www.ia.urjc.es Introduction: Modeling BIM models • Building Information Modeling (BIM) represents the 3D geometry and properties (costs, materials, process, etc.), of buildings as digital models. • For each building, architects and engineers create specifics models. • These specifics models must be shared and combined. • Automated tools are needed to check the integrity of the merged model. • In addition, the models must comply with building regulations. • The design and construction of a building is a sequence of decisions. Automated BIM tools must: • Combine geometrical reasoning and symbolic/conceptual knowledge. • Reason in presence of vague concepts and incomplete information. • Deal with the ambiguity present in regulatory codes and standards. Center for Intelligent Information Technologies 1/15
  • 4. www.ia.urjc.es Motivation and Proposal Logic programming-based tools meet many of the requirements: • The following examples overcome some limitations of IFC-based tools: • The query language, BimSPARQL [13]. • Model checkers for safety [14] or acoustic rules [9], and BIMRL [12]. • A translator of building regulation, KBimCode [7]. • A tool based on clingo, ASP4BIM [8]. • However, they have limitations in meeting all requirements. Center for Intelligent Information Technologies 2/15
  • 5. www.ia.urjc.es Motivation and Proposal Logic programming-based tools meet many of the requirements: • The following examples overcome some limitations of IFC-based tools: • The query language, BimSPARQL [13]. • Model checkers for safety [14] or acoustic rules [9], and BIMRL [12]. • A translator of building regulation, KBimCode [7]. • A tool based on clingo, ASP4BIM [8]. • However, they have limitations in meeting all requirements. Our Proposal • Use tools integrating Constraint Logic Programming with ASP to model dynamic information and restrictions in BIM models. • Shift from BIM verification to BIM refinement and to facilitate the implementation of new specifications, construction standards, etc. Center for Intelligent Information Technologies 2/15
  • 6. www.ia.urjc.es Contributions • A framework, based on Constraint Answer Set Programming (CASP), that allows unified geometrical and non-geometrical information. • The prototype of a preliminary 3D reasoner under Prolog with CLP(Q/R) that we evaluate with several BIM models. • The outline of an alternative implementation of this spatial reasoner under CASP, using s(CASP) [2], a goal-directed implementation. Center for Intelligent Information Technologies 3/15
  • 7. www.ia.urjc.es Contributions • A framework, based on Constraint Answer Set Programming (CASP), that allows unified geometrical and non-geometrical information. • The prototype of a preliminary 3D reasoner under Prolog with CLP(Q/R) that we evaluate with several BIM models. • The outline of an alternative implementation of this spatial reasoner under CASP, using s(CASP) [2], a goal-directed implementation. Evidence of advantages of s(CASP) in evaluating BIM models: • It has the relevance property, • It can generate justifications for negative queries, and • It makes representing and reasoning with ambiguities easier. Center for Intelligent Information Technologies 3/15
  • 8. www.ia.urjc.es Background: BIM + IFC • Building information modeling (BIM): • Combine geometrical information with: costs, materials, process, etc. • Allow cost estimations, quantify takeoffs, energy analysis, etc. • Goal: achieve consistent of digital models: • shared with architects, engineers... • throughout the life cycle of a facility. • The UK Government requires Level 2 of BIM maturity for any public project. • BIM authoring tools: Revit, ArchiCAD, Tekla Structures, Allplan... • Common data model: Industry Foundation Classes (IFC) [4]. Center for Intelligent Information Technologies 4/15
  • 9. www.ia.urjc.es Background: s(CASP) • Goal directed execution of Constraint ASP without grounding [2]. • Provide constructive negation, also for constraints: Center for Intelligent Information Technologies 5/15
  • 10. www.ia.urjc.es Background: s(CASP) • Goal directed execution of Constraint ASP without grounding [2]. • Provide constructive negation, also for constraints: Program 1 size(r1,S):- S #>= 21. Center for Intelligent Information Technologies 5/15
  • 11. www.ia.urjc.es Background: s(CASP) • Goal directed execution of Constraint ASP without grounding [2]. • Provide constructive negation, also for constraints: Program 1 size(r1,S):- S #>= 21. Query Model ?- not size(r1,S). { not size(r1,S | {S #< 21})} Center for Intelligent Information Technologies 5/15
  • 12. www.ia.urjc.es Background: s(CASP) • Goal directed execution of Constraint ASP without grounding [2]. • Provide constructive negation, also for constraints: Program 1 size(r1,S):- S #>= 21. Query Model ?- not size(r1,S). { not size(r1,S | {S #< 21})} • ... handle non-stratified negation (generating [partial] models featuring relevance [10]): Center for Intelligent Information Technologies 5/15
  • 13. www.ia.urjc.es Background: s(CASP) • Goal directed execution of Constraint ASP without grounding [2]. • Provide constructive negation, also for constraints: Program 1 size(r1,S):- S #>= 21. Query Model ?- not size(r1,S). { not size(r1,S | {S #< 21})} • ... handle non-stratified negation (generating [partial] models featuring relevance [10]): Program 1 small(r1):- not big(r1). 2 big(r1):- not small(r1). 3 kitchen(r1). Center for Intelligent Information Technologies 5/15
  • 14. www.ia.urjc.es Background: s(CASP) • Goal directed execution of Constraint ASP without grounding [2]. • Provide constructive negation, also for constraints: Program 1 size(r1,S):- S #>= 21. Query Model ?- not size(r1,S). { not size(r1,S | {S #< 21})} • ... handle non-stratified negation (generating [partial] models featuring relevance [10]): Program 1 small(r1):- not big(r1). 2 big(r1):- not small(r1). 3 kitchen(r1). Queries Models ?- small(r1). { small(r1), not big(r1)} Center for Intelligent Information Technologies 5/15
  • 15. www.ia.urjc.es Background: s(CASP) • Goal directed execution of Constraint ASP without grounding [2]. • Provide constructive negation, also for constraints: Program 1 size(r1,S):- S #>= 21. Query Model ?- not size(r1,S). { not size(r1,S | {S #< 21})} • ... handle non-stratified negation (generating [partial] models featuring relevance [10]): Program 1 small(r1):- not big(r1). 2 big(r1):- not small(r1). 3 kitchen(r1). Queries Models ?- small(r1). { small(r1), not big(r1)} ?- big(r1). { big(r1), not small(r1)} Center for Intelligent Information Technologies 5/15
  • 16. www.ia.urjc.es Background: s(CASP) • Goal directed execution of Constraint ASP without grounding [2]. • Provide constructive negation, also for constraints: Program 1 size(r1,S):- S #>= 21. Query Model ?- not size(r1,S). { not size(r1,S | {S #< 21})} • ... handle non-stratified negation (generating [partial] models featuring relevance [10]): Program 1 small(r1):- not big(r1). 2 big(r1):- not small(r1). 3 kitchen(r1). Queries Models ?- small(r1). { small(r1), not big(r1)} ?- big(r1). { big(r1), not small(r1)} ?- kitchen(r1). { kitchen(r1)} Center for Intelligent Information Technologies 5/15
  • 17. www.ia.urjc.es Background: s(CASP) • Goal directed execution of Constraint ASP without grounding [2]. • Provide constructive negation, also for constraints: Program 1 size(r1,S):- S #>= 21. Query Model ?- not size(r1,S). { not size(r1,S | {S #< 21})} • ... handle non-stratified negation (generating [partial] models featuring relevance [10]): Program 1 small(r1):- not big(r1). 2 big(r1):- not small(r1). 3 kitchen(r1). Queries Models ?- small(r1). { small(r1), not big(r1)} ?- big(r1). { big(r1), not small(r1)} ?- kitchen(r1). { kitchen(r1)} • Support classical negation, i.e., -small(r1) means that we have explicit evidence that r1 is not small. Center for Intelligent Information Technologies 5/15
  • 18. www.ia.urjc.es Background: s(CASP) • Goal directed execution of Constraint ASP without grounding [2]. • Provide constructive negation, also for constraints: Program 1 size(r1,S):- S #>= 21. Query Model ?- not size(r1,S). { not size(r1,S | {S #< 21})} • ... handle non-stratified negation (generating [partial] models featuring relevance [10]): Program 1 small(r1):- not big(r1). 2 big(r1):- not small(r1). 3 kitchen(r1). Queries Models ?- small(r1). { small(r1), not big(r1)} ?- big(r1). { big(r1), not small(r1)} ?- kitchen(r1). { kitchen(r1)} • Support classical negation, i.e., -small(r1) means that we have explicit evidence that r1 is not small. • s(CASP) generates justification trees (in natural language) [1]. Center for Intelligent Information Technologies 5/15
  • 19. www.ia.urjc.es Modeling Vague Concepts • An efficient representation of vague concepts due to unknown information, ambiguity, and/or administrative discretion, is needed. Consider the building regulation norm: In the room there is at least one window, and each window must be wider than 0.60 m. If the room is small, it can be between 0.50 and 0.60 m wide. 1 requirement(Room):- not small(Room), 2 window_belongs(Window,Room), 3 width(Window,Width), Width #> 0.60. 4 requirement(Room):- small(Room), 5 window_belongs(Window,Room), 6 width(Window,Width), Width #> 0.50. • If the size of a room or the criteria to consider that a room is small is unknown, only the first rule would succeed. Center for Intelligent Information Technologies 6/15
  • 20. www.ia.urjc.es Modeling Vague Concepts • An efficient representation of vague concepts due to unknown information, ambiguity, and/or administrative discretion, is needed. Consider the building regulation norm: In the room there is at least one window, and each window must be wider than 0.60 m. If the room is small, it can be between 0.50 and 0.60 m wide. 1 requirement(Room):- not small(Room), 2 window_belongs(Window,Room), 3 width(Window,Width), Width #> 0.60. 4 requirement(Room):- small(Room), 5 window_belongs(Window,Room), 6 width(Window,Width), Width #> 0.50. • If the size of a room or the criteria to consider that a room is small is unknown, only the first rule would succeed. Proposal: Use of stable model semantics [3; 5] • In the previous example we can consider two scenarios (models): ... in one a given room is small and in the other, it is not. Center for Intelligent Information Technologies 6/15
  • 21. www.ia.urjc.es Modeling and manipulating 3D objects: CLP(Q/R) • Convex shapes are represented using linear equations. • CLP(Q/R) [6] can be used to solve the resulting linear constraints. • Using CLP(Q/R) objects are represented as a list of convex shapes: 1 box(point(Xa,Ya,Za), point(Xb,Yb,Zb), [convex([X,Y,Z])]) :- 2 X#>=Xa, X#<Xb, Y#>=Ya, Y#<Yb, Z#>=Za, Z#<Zb. Center for Intelligent Information Technologies 7/15
  • 22. www.ia.urjc.es Modeling and manipulating 3D objects: CLP(Q/R) • Convex shapes are represented using linear equations. • CLP(Q/R) [6] can be used to solve the resulting linear constraints. • Using CLP(Q/R) objects are represented as a list of convex shapes: 1 box(point(Xa,Ya,Za), point(Xb,Yb,Zb), [convex([X,Y,Z])]) :- 2 X#>=Xa, X#<Xb, Y#>=Ya, Y#<Yb, Z#>=Za, Z#<Zb. • Operations: union, intersection, complement, and subtraction: 1 obj(r1, [convex([X,Y])]) :- X#>=1, X#<4, Y#>=2, Y#<5. 2 obj(r2, [convex([X,Y])]) :- X#>=3, X#<5, Y#>=1, Y#<4. ?- obj(r1,Sh1), obj(r2,Sh2),sh_intersection(Sh1, Sh2, Int). Int = [convex([A,B])], A#>=3, A#<4, B#>=2, B#<4 ? ?- obj(r1,Sh1), obj(r2,Sh2),sh_subtraction(Sh1, Sh2, Sub). Sub = [convex([A,B]),convex([C,D])], A#>=1,A#<3,B#>=2,B#<5, C#>=3,C#<4,D#>=4,D#<5 ? Center for Intelligent Information Technologies 7/15
  • 23. www.ia.urjc.es Modeling and manipulating 3D objects: s(CASP) I • The representation of the convex shapes are part of the program: 1 convex(r1, X, Y) :- X#>=1, X#<4, Y#>=2, Y#<5. 2 convex(r2, X, Y) :- X#>=3, X#<5, Y#>=1, Y#<4. • They are handled as part of the constraint store of the program. • A non-convex object is represented with several clauses, one for each convex shape: Center for Intelligent Information Technologies 8/15
  • 24. www.ia.urjc.es Modeling and manipulating 3D objects: s(CASP) I • The representation of the convex shapes are part of the program: 1 convex(r1, X, Y) :- X#>=1, X#<4, Y#>=2, Y#<5. 2 convex(r2, X, Y) :- X#>=3, X#<5, Y#>=1, Y#<4. • They are handled as part of the constraint store of the program. • A non-convex object is represented with several clauses, one for each convex shape: ?- shape_intersect(r1,r2,Int). Int = convex([A | { A#>=3, A#<4 }, B | { B#>=2, B#<4 }]) ? ?- shape_subtract(r1,r2,Sub). Sub = convex([A | { A#>=1, A#<3 }, B | { B#>=2, B#<5 }]) ? ; Sub = convex([A | { A#>=3, A#<4 }, B | { B#>=4, B#<5 }]) ? Center for Intelligent Information Technologies 8/15
  • 25. www.ia.urjc.es Modeling and manipulating 3D objects: s(CASP) II Operations on a 2D space using s(CASP) 1 % Union = ShA ∪ ShB 2 shape_union(IdA, IdB, convex([X,Y])) :- convex(IdA,X,Y). 3 shape_union(IdA, IdB, convex([X,Y])) :- convex(IdB,X,Y). 4 % Intersection = ShA ∩ ShB 5 shape_intersect(IdA, IdB, convex([X,Y])) :- convex(IdA,X,Y), convex(IdB,X,Y). 6 % Complement = ¬ ShA 7 shape_complement(IdA, convex([X,Y])) :- not convex(IdA,X,Y). 8 % Subtract = ShA ∩ ¬ ShB 9 shape_subtract(IdA, IdB, convex([X,Y])) :- convex(IdA,X,Y), not convex(IdB,X,Y). • 9 lines of code instead of 39 lines. • Spatial operations are translated into logical operations. Center for Intelligent Information Technologies 9/15
  • 26. www.ia.urjc.es (Non)-monotonic iteration in BIM models • Consider the design process of a room and the fire safety norm below: • If a gas boiler is used, the ventilation must be natural. window surface area is at least 10% of the floor area. • If the boiler is electric, the ventilation could be natural or mechanical. Center for Intelligent Information Technologies 10/15
  • 27. www.ia.urjc.es (Non)-monotonic iteration in BIM models • Consider the design process of a room and the fire safety norm below: • If a gas boiler is used, the ventilation must be natural. window surface area is at least 10% of the floor area. • If the boiler is electric, the ventilation could be natural or mechanical. • Possible timeline: 1. Initially, the shared BIM model has no ventilation or boiler restrictions. 2. The architect reduces the size of the window (surface less that 10%). 3. ALERT: An electric boiler is selected. 4. At the same time, the engineer selects a gas boiler for efficiency. 5. ALERT: Ventilation must be natural. 6. ERROR: when attempting to merge both models, an inconsistency is detected. Center for Intelligent Information Technologies 10/15
  • 28. www.ia.urjc.es (Non)-monotonic iteration in BIM models • Consider the design process of a room and the fire safety norm below: • If a gas boiler is used, the ventilation must be natural. window surface area is at least 10% of the floor area. • If the boiler is electric, the ventilation could be natural or mechanical. • Possible timeline: 1. Initially, the shared BIM model has no ventilation or boiler restrictions. 2. The architect reduces the size of the window (surface less that 10%). 3. ALERT: An electric boiler is selected. 4. At the same time, the engineer selects a gas boiler for efficiency. 5. ALERT: Ventilation must be natural. 6. ERROR: when attempting to merge both models, an inconsistency is detected. • A naive approach to handle the ERROR would broadcast the inconsistency. Center for Intelligent Information Technologies 10/15
  • 29. www.ia.urjc.es (Non)-monotonic iteration in BIM models • Consider the design process of a room and the fire safety norm below: • If a gas boiler is used, the ventilation must be natural. window surface area is at least 10% of the floor area. • If the boiler is electric, the ventilation could be natural or mechanical. • Possible timeline: 1. Initially, the shared BIM model has no ventilation or boiler restrictions. 2. The architect reduces the size of the window (surface less that 10%). 3. ALERT: An electric boiler is selected. 4. At the same time, the engineer selects a gas boiler for efficiency. 5. ALERT: Ventilation must be natural. 6. ERROR: when attempting to merge both models, an inconsistency is detected. • A naive approach to handle the ERROR would broadcast the inconsistency. Proposal: • A continuous integration reasoner: • that determines who is the expert whose opinion prevails • makes a decision based on that. • notifies the other party to confirm the adjustments. Center for Intelligent Information Technologies 10/15
  • 30. www.ia.urjc.es (Non)-monotonic iteration in BIM models (cont.) Encoding of a Continuous Integration reasoner 1 %% BIM Continuous Integration 2 valid_data(P,Data) :- 3 data(P,Data), 4 not canceled(P, Data). 5 6 canceled(P, Data) :- 7 higher_confidence(P1, P), 8 data(P1, Data1), 9 inconsistent(Data, Data1). 10 higher_confidence(PHi, PLo) :- 11 PHi #> PLo. 12 %% Example 13 inconsistent(boiler(gas), 14 ventilation(artificial)). 15 inconsistent(ventilation(artificial), 16 boiler(gas)). 17 data(1,ventilation(X)). 18 data(2,ventilation(natural)). 19 data(2,boiler(gas)). 20 % data(3,ventilation(artificial)). 21 % data(3,boiler(electrical)). 22 % data(4,boiler(gas)). Center for Intelligent Information Technologies 11/15
  • 31. www.ia.urjc.es Evaluation I: Comprehensibility (reason in presence of vague concepts) • Reason about various scenarios simultaneously (or not). 1 % Hotel with 8 rooms - only the size of 3 of them is known. 2 room(r1). room(r2). room(r3). room(r4). 3 room(r5). room(r6). room(r7). room(r8). 4 size(r1, 25). size(r2, 5). size(r3, 15). 5 % Uncertain whether rooms of 10 to 20 m2 are small or not. 6 evidence(Room, small) :- size(Room,Size), Size#<10. 7 -evidence(Room, small) :- size(Room,Size), Size#>20. 8 % Explicit evidence for / against or generate two models. 9 small(Room) :- evidence(Room,small). 10 -small(Room) :- -evidence(Room,small). 11 small(Room) :- not evidence(Room,small), not -small(Room). 12 -small(Room) :- not -evidence(Room,small), not small(Room). 13 % Inferring conclusions from evidence and/or assumptions. 14 room_is(Room,big) :- room(Room), -small(Room). 15 room_is(Room,small) :- room(Room), small(Room). Center for Intelligent Information Technologies 12/15
  • 32. www.ia.urjc.es Evaluation I: Comprehensibility (reason in presence of vague concepts) • Reason about various scenarios simultaneously (or not). 1 % Hotel with 8 rooms - only the size of 3 of them is known. 2 room(r1). room(r2). room(r3). room(r4). 3 room(r5). room(r6). room(r7). room(r8). 4 size(r1, 25). size(r2, 5). size(r3, 15). 5 % Uncertain whether rooms of 10 to 20 m2 are small or not. 6 evidence(Room, small) :- size(Room,Size), Size#<10. 7 -evidence(Room, small) :- size(Room,Size), Size#>20. 8 % Explicit evidence for / against or generate two models. 9 small(Room) :- evidence(Room,small). 10 -small(Room) :- -evidence(Room,small). 11 small(Room) :- not evidence(Room,small), not -small(Room). 12 -small(Room) :- not -evidence(Room,small), not small(Room). 13 % Inferring conclusions from evidence and/or assumptions. 14 room_is(Room,big) :- room(Room), -small(Room). 15 room_is(Room,small) :- room(Room), small(Room). • For ?- room_is(Room,Size): • s(CASP) returns 14 partial models. • clingo returns 64 models. Center for Intelligent Information Technologies 12/15
  • 33. www.ia.urjc.es Evaluation I: Comprehensibility (reason in presence of vague concepts) • Reason about various scenarios simultaneously (or not). 1 % Hotel with 8 rooms - only the size of 3 of them is known. 2 room(r1). room(r2). room(r3). room(r4). 3 room(r5). room(r6). room(r7). room(r8). 4 size(r1, 25). size(r2, 5). size(r3, 15). 5 % Uncertain whether rooms of 10 to 20 m2 are small or not. 6 evidence(Room, small) :- size(Room,Size), Size#<10. 7 -evidence(Room, small) :- size(Room,Size), Size#>20. 8 % Explicit evidence for / against or generate two models. 9 small(Room) :- evidence(Room,small). 10 -small(Room) :- -evidence(Room,small). 11 small(Room) :- not evidence(Room,small), not -small(Room). 12 -small(Room) :- not -evidence(Room,small), not small(Room). 13 % Inferring conclusions from evidence and/or assumptions. 14 room_is(Room,big) :- room(Room), -small(Room). 15 room_is(Room,small) :- room(Room), small(Room). • For ?- room_is(Room,Size): • s(CASP) returns 14 partial models. • clingo returns 64 models. Considering 16 rooms • s(CASP) returns 30 partial models. • clingo returns 16384 models. Center for Intelligent Information Technologies 12/15
  • 34. www.ia.urjc.es Evaluation I: Comprehensibility (reason in presence of vague concepts) • Reason about various scenarios simultaneously (or not). 1 % Hotel with 8 rooms - only the size of 3 of them is known. 2 room(r1). room(r2). room(r3). room(r4). 3 room(r5). room(r6). room(r7). room(r8). 4 size(r1, 25). size(r2, 5). size(r3, 15). 5 % Uncertain whether rooms of 10 to 20 m2 are small or not. 6 evidence(Room, small) :- size(Room,Size), Size#<10. 7 -evidence(Room, small) :- size(Room,Size), Size#>20. 8 % Explicit evidence for / against or generate two models. 9 small(Room) :- evidence(Room,small). 10 -small(Room) :- -evidence(Room,small). 11 small(Room) :- not evidence(Room,small), not -small(Room). 12 -small(Room) :- not -evidence(Room,small), not small(Room). 13 % Inferring conclusions from evidence and/or assumptions. 14 room_is(Room,big) :- room(Room), -small(Room). 15 room_is(Room,small) :- room(Room), small(Room). • For ?- room_is(Room,Size): • s(CASP) returns 14 partial models. • clingo returns 64 models. Considering 16 rooms • s(CASP) returns 30 partial models. • clingo returns 16384 models. This exponential explosion in the # models generated by clingo... ... reduces the comprehensibility. Center for Intelligent Information Technologies 12/15
  • 35. www.ia.urjc.es Evaluation II: Geometrical and non-geometrical information. (a) Duplex_Q1.html (b) Duplex_Q2.html (c) Office_Q1.html (d) Office_Q2.html Query Duplex Q1: The doors are in green and the rest of the objects are in blue. Center for Intelligent Information Technologies 13/15
  • 36. www.ia.urjc.es Evaluation II: Geometrical and non-geometrical information. (a) Duplex_Q1.html (b) Duplex_Q2.html (c) Office_Q1.html (d) Office_Q2.html Query Duplex Q2: imposes the constraints Ya#<-4 to select certain doors, and Y#>=-7, Y#<-4 to create a space (unbounded in the axis x and z) that defines a slice of the model. Center for Intelligent Information Technologies 13/15
  • 37. www.ia.urjc.es Evaluation II: Geometrical and non-geometrical information. (a) Duplex_Q1.html (b) Duplex_Q2.html (c) Office_Q1.html (d) Office_Q2.html Constraints can be used in s(CASP) to reason about unbounded spaces • Finer constraints, such as Ya#<-4.002, can be used without performance impact. • That is in general not the case with other ASP systems. Center for Intelligent Information Technologies 13/15
  • 38. www.ia.urjc.es Evaluation II: Geometrical and non-geometrical information. (a) Duplex_Q1.html (b) Duplex_Q2.html (c) Office_Q1.html (d) Office_Q2.html Query Office Q1/Q2: selects objects of type IfcBeam in the Architecture model that are not covered by objects in the Structural BIM model. (c) shows the objects that intersect the beam. (d) shows the uncovered parts drawn in red. Center for Intelligent Information Technologies 13/15
  • 39. www.ia.urjc.es Evaluation II: Geometrical and non-geometrical information. (a) Duplex_Q1.html (b) Duplex_Q2.html (c) Office_Q1.html (d) Office_Q2.html Performance Query Office Q1/Q2 • Finds the first beam with uncovered parts in only 0.104 sec. • Selects 691 beams out of 3639 objects in the architecture model and detected 511 beams not covered by the more than 1300 objects in the structure model in 48 sec. Center for Intelligent Information Technologies 13/15
  • 40. www.ia.urjc.es Evaluation III: Explainability of the inferred conclusions. Center for Intelligent Information Technologies 14/15
  • 41. www.ia.urjc.es Evaluation III: Explainability of the inferred conclusions. Center for Intelligent Information Technologies 14/15
  • 42. www.ia.urjc.es Conclusions • We have highlighted the advantages of a well-founded approach to: • Represent geometrical and non-geometrical building information (including specifications, codes, and/or guidelines) as digital models. • Handle changes to the models during their design, construction, and/or facility time (removing, adding, or changing objects and properties). • The use of CLP, and more specifically s(CASP), makes it possible to: • Realize commonsense reasoning including geometrical data. • Represent knowledge involving vague and/or unknown information. Center for Intelligent Information Technologies 15/15
  • 43. www.ia.urjc.es Conclusions • We have highlighted the advantages of a well-founded approach to: • Represent geometrical and non-geometrical building information (including specifications, codes, and/or guidelines) as digital models. • Handle changes to the models during their design, construction, and/or facility time (removing, adding, or changing objects and properties). • The use of CLP, and more specifically s(CASP), makes it possible to: • Realize commonsense reasoning including geometrical data. • Represent knowledge involving vague and/or unknown information. Future work • Shift from BIM verification to BIM refinement. • Develop non-monotonic model refinement methods. • Integrate logical reasoning in BIM Software. Center for Intelligent Information Technologies 15/15
  • 44. www.ia.urjc.es Conclusions • We have highlighted the advantages of a well-founded approach to: • Represent geometrical and non-geometrical building information (including specifications, codes, and/or guidelines) as digital models. • Handle changes to the models during their design, construction, and/or facility time (removing, adding, or changing objects and properties). • The use of CLP, and more specifically s(CASP), makes it possible to: • Realize commonsense reasoning including geometrical data. • Represent knowledge involving vague and/or unknown information. Future work • Shift from BIM verification to BIM refinement. • Develop non-monotonic model refinement methods. • Integrate logical reasoning in BIM Software. THANKS! Center for Intelligent Information Technologies 15/15
  • 45. References www.ia.urjc.es Referencias I [1] J. Arias, M. Carro, Z. Chen, and G. Gupta (2020). Justifications for Goal-Directed Constraint Answer Set Programming. In: Proceedings 36th International Conference on Logic Programming (Technical Communications). Vol. 325. EPTCS. Open Publishing Association, pp. 59–72. doi: 10.4204/EPTCS.325.12. [2] J. Arias, M. Carro, E. Salazar, K. Marple, and G. Gupta (2018). Constraint Answer Set Programming without Grounding. In: Theory and Practice of Logic Programming 18.3-4, pp. 337–354. doi: 10.1017/S1471068418000285. [3] J. Arias, M. Moreno-Rebato, J. A. Rodriguez-Garcı́a, and S. Ossowski (2021). Modeling Administrative Discretion Using Goal-Directed Answer Set Programming. In: Advances in Artificial Intelligence, CAEPIA 20/21. Vol. 12882. LNCS. Springer, pp. 258–267. doi: 10.1007/978-3-030-85713-4_25. [4] BuildingSMART (2020). Industry Foundation Classes (IFC). Available at: https://technical.buildingsmart.org/standards/ifc/. Accessed on July, 2020. Center for Intelligent Information Technologies 16/15
  • 46. References www.ia.urjc.es Referencias II [5] M. Gelfond and V. Lifschitz (1988). The Stable Model Semantics for Logic Programming. In: ICLP’88, pp. 1070–1080. [6] C. Holzbaur (1995). OFAI CLP(Q,R) Manual, Edition 1.3.3. Tech. rep. TR-95-09. Vienna: Austrian Research Institute for Artificial Intelligence. [7] H. Lee, J. Lee, S. Park, and I. Kim (2016). Translating building legislation into a computer-executable format for evaluating building permit requirements. en. In: Automation in Construction 71, pp. 49–61. doi: 10.1016/j.autcon.2016.04.008. [8] B. Li, J. Teizer, and C. Schultz (2020). Non-monotonic Spatial Reasoning for Safety Analysis in Construction. In: Proceedings of the 22nd International Symposium on Principles and Practice of Declarative Programming, pp. 1–12. Center for Intelligent Information Technologies 17/15
  • 47. References www.ia.urjc.es Referencias III [9] P. Pauwels, D. Van Deursen, R. Verstraeten, J. De Roo, R. De Meyer, R. Van De Walle, and J. Van Campenhout (2011). A semantic rule checking environment for building performance checking. en. In: Automation in Construction 20.5, pp. 506–518. doi: 10.1016/j.autcon.2010.11.017. [10] L. M. Pereira and J. N. Aparı́cio (1989). Relevant Counterfactuals. In: EPIA 89, 4th Portuguese Conference on Artificial Intelligence, Lisbon, Portugal, September 26-29, 1989, Proceedings, pp. 107–118. doi: 10.1007/3-540-51665-4_78. [11] Singapore Government (2016). Corenet BIM e-Submission. https://www.corenet.gov.sg/general/building-information-modeling-(bim)-e- submission.aspx. [12] W. Solihin (2015). A simplified BIM data representation using a relational database schema for an efficient rule checking system and its associated rule checking language. PhD thesis. Georgia Institute of Technology. Center for Intelligent Information Technologies 18/15
  • 48. References www.ia.urjc.es Referencias IV [13] C. Zhang, J. Beetz, and B. de Vries (2018). BimSPARQL: Domain-specific functional SPARQL extensions for querying RDF building data. In: Semantic Web 9.6, pp. 829–855. [14] S. Zhang, J. Teizer, J. Lee, C. Eastman, and M. Venugopal (2013). Building Information Modeling (BIM) and Safety: Automatic Safety Checking of Construction Models and Schedules. en. In: Automation in Construction 29, pp. 183–195. doi: 10.1016/j.autcon.2012.05.006. Center for Intelligent Information Technologies 19/15