Planning Integrating Logic and Constraint Reasoning in a Timeline-based Planner Riccardo De Benedictis and Amedeo Cesta Institute of Cognitive Science and Technology National Research Council Rome – Italy 25/09/2015
Planning The Timeline-based Approach • A set of relevant features which need to be controlled to obtain a desired temporal behavior • Physical or logical subsystems which are relevant to a given planning context • The planner/scheduler plays the role of the controller for these entities AI*IA-2015 riccardo.debenedictis@istc.cnr.it
Planning The I L O C Reasoning Environment – Objects and Constraints • An object-oriented environment for the definition of objects and constraints among them • Every object is an instance of a specific type • Primitive types (e.g., bools, ints, reals, etc.) • Complex types (e.g., robots, trucks, locations, etc.) • Dot notation for addressing objects and enforcing constraints: <object>.<property> • Constraints 𝑚. 𝑦 ≤ 𝑠. 𝑦 ¬ 𝑚. 𝑦 ≤ 5 𝑚. 𝑦 ≥ 5 ∧ 𝑚. 𝑦 ≤ 10 𝑚. 𝑦 ≤ 5 ∨ 𝑚. 𝑦 ≥ 10 𝑚. 𝑦 ≥ 10 → 𝑚. 𝑧 ≥ 10 ∃𝑚 ∈ 𝑀𝑝𝑑𝑏𝑢𝑗𝑝𝑜𝑡: 𝑚. 𝑦 ≥ 10 ∀𝑚 ∈ 𝑀𝑝𝑑𝑏𝑢𝑗𝑝𝑜𝑡: 𝑚. 𝑦 ≤ 100 AI*IA-2015 riccardo.debenedictis@istc.cnr.it
Planning The I L O C Reasoning Environment - Rules • First-order Horn clauses • At most one positive literal ( head of the clause) • Any number of negative literals ( body of the clause) 𝐼𝑓𝑏𝑒 ⇐ 𝐶𝑝𝑒𝑧 • The body contains calls to predicates (sub-goals) and constraints (in any logical combination) • No constraints in the head of the clause • Rules having the same head are disjunctive • First-order resolution • Not ordered sub-goaling AI*IA-2015 riccardo.debenedictis@istc.cnr.it
Planning Timeline-based Planning within I L O C • Create timeline complex types • StateVariable, ReusableResource, ConsumableResource, etc. • extendable through inheritance • Endow predicates with numerical parameters representing time : • starting time • ending time • duration (duration = end - start) • Endow predicates with a scope parameter • denotes on which object (e.g., timeline) the formula will appear • Extend resolution for managing objects’ inconsistencies • add further “implicit” constraints on the formula according to the scope’s type • i.e., we provide scheduling capabilities to timelines AI*IA-2015 riccardo.debenedictis@istc.cnr.it
Planning Timeline-based Planning within I L O C • Create timeline complex types • StateVariable, ReusableResource, ConsumableResource, etc. class Robot extends StateVariable { • extendable through inheritance … } • Endow predicates with numerical parameters representing time : Going(Location l, Robot scope, real start, real end, real duration) := … • starting time At(Location l, Robot scope, real start, real end, real duration) := … • ending time • duration (duration = end - start) • Endow predicates with a scope parameter Robot extends StateVariable • denotes on which object (e.g., timeline) the formula will appear 𝑓 1 ≤ 𝑡 2 ∨ 𝑓 2 ≤ 𝑡 1 ∨ 𝑡𝑑 1 ≠ 𝑡𝑑 2 At(l 2 , sc 3 , s 3 , e 3 , d 3 ) At(l 1 , sc 1 , s 1 , e 1 , d 1 ) • Extend resolution for managing objects’ inconsistencies Going(l 2 , sc 2 , s 2 , e 2 , d 2 ) • add further “implicit” constraints on the formula according to the scope’s type t • i.e., we provide scheduling capabilities to timelines AI*IA-2015 riccardo.debenedictis@istc.cnr.it
Planning Scope Variables and Execution Uncertainty 𝑒 2 Truck 2 Truck 1 𝑒 1 𝑒 0 t 10:00 11:00 12:00 13:00 13:30 15:30 𝑒 0 . 𝑓𝑜𝑒 ≤ 17: 00 𝑒 1 . 𝑡𝑢𝑏𝑠𝑢 = 13: 30 𝑒 0 . 𝑒𝑣𝑠𝑏𝑢𝑗𝑝𝑜 ≥ 2: 00 AI*IA-2015 riccardo.debenedictis@istc.cnr.it
Planning Scope Variables and Execution Uncertainty 𝑒 2 Truck 2 𝑒 0 Truck 1 𝑒 1 𝑒 0 t 10:00 11:00 12:00 13:00 13:30 15:30 𝑒 0 . 𝑓𝑜𝑒 ≤ 17: 00 𝑒 1 . 𝑡𝑢𝑏𝑠𝑢 = 13: 30 𝑒 0 . 𝑒𝑣𝑠𝑏𝑢𝑗𝑝𝑜 ≥ 2: 00 𝑒 0 . 𝑡𝑢𝑏𝑠𝑢 ≥ 11: 00 AI*IA-2015 riccardo.debenedictis@istc.cnr.it
Planning Scope Variables and Execution Uncertainty 𝑒 0 𝑒 2 Truck 2 𝑒 0 𝑒 0 Truck 1 𝑒 1 𝑒 0 t 10:00 11:00 12:00 13:00 13:30 15:30 𝑒 0 . 𝑓𝑜𝑒 ≤ 17: 00 𝑒 1 . 𝑡𝑢𝑏𝑠𝑢 = 13: 30 𝑒 0 . 𝑒𝑣𝑠𝑏𝑢𝑗𝑝𝑜 ≥ 2: 00 𝑒 0 . 𝑡𝑢𝑏𝑠𝑢 ≥ 11: 00 𝑒 0 . 𝑡𝑢𝑏𝑠𝑢 ≥ 12: 00 AI*IA-2015 riccardo.debenedictis@istc.cnr.it
Planning Conclusions 100000 • An uniform schema for 10000 • Logic Programming (LP) Execution time (ms) • not-ordered subgoaling • Constraint Programming (CP) 1000 iLoC (AR) iLoC (MR) • similar to CLP • Timeline-reasoning VHPOP2.2 100 OPTIC • e.g., Scheduling COLIN 10 • Heuristics 1 02 04 06 08 10 12 14 16 18 20 22 • Static and Dynamic Nr. blocks • Different planners • VHPOP (partial order approach) • OPTIC (TRPG heuristic) • COLIN (TRPG heuristic) • CPT, TPSHE, ITSAT, LPG, etc … will be added soon!!! :D AI*IA-2015 riccardo.debenedictis@istc.cnr.it
Planning Conclusions 100000 • An uniform schema for 10000 • Logic Programming (LP) 1000000 Execution time (ms) • not-ordered subgoaling • Constraint Programming (CP) 1000 iLoC (AR) 100000 iLoC (MR) • similar to CLP Execution time (ms) • Timeline-reasoning VHPOP2.2 100 10000 OPTIC iLoC (AR) • e.g., Scheduling 1000 COLIN iLoC (MR) 10 VHPOP2.2 100 OPTIC • Heuristics 1 COLIN 02 04 06 08 10 12 14 16 18 20 22 • Static and Dynamic 10 Nr. blocks 1 01 03 05 07 09 15 25 35 45 60 80 100 • Different planners Nr. ceramics • VHPOP (partial order approach) • OPTIC (TRPG heuristic) • COLIN (TRPG heuristic) • CPT, TPSHE, ITSAT, LPG, etc … will be added soon!!! :D AI*IA-2015 riccardo.debenedictis@istc.cnr.it
Planning Conclusions 100000 • An uniform schema for 10000 • Logic Programming (LP) 1000000 Execution time (ms) • not-ordered subgoaling • Constraint Programming (CP) 1000 iLoC (AR) 100000 iLoC (MR) • similar to CLP Execution time (ms) • Timeline-reasoning 10000000 VHPOP2.2 100 10000 OPTIC iLoC (AR) • e.g., Scheduling 1000000 1000 COLIN iLoC (MR) 10 Execution time (ms) 100000 VHPOP2.2 100 OPTIC • Heuristics iLoC (AR) 1 10000 COLIN 02 04 06 08 10 12 14 16 18 20 22 • Static and Dynamic iLoC (MR) 10 Nr. blocks 1000 VHPOP2.2 1 OPTIC 100 01 03 05 07 09 15 25 35 45 60 80 100 COLIN • Different planners Nr. ceramics 10 • VHPOP (partial order approach) 1 • OPTIC (TRPG heuristic) 001 003 005 007 009 015 025 035 045 060 080 100 • COLIN (TRPG heuristic) Nr. dishes • CPT, TPSHE, ITSAT, LPG, etc … will be added soon!!! :D AI*IA-2015 riccardo.debenedictis@istc.cnr.it
Planning Conclusions 100000 • An uniform schema for 10000 • Logic Programming (LP) 1000000 Execution time (ms) • not-ordered subgoaling • Constraint Programming (CP) 1000 iLoC (AR) 100000 iLoC (MR) • similar to CLP Execution time (ms) • Timeline-reasoning 10000000 VHPOP2.2 100 10000 OPTIC iLoC (AR) • e.g., Scheduling 1000000 1000 COLIN iLoC (MR) 10 Execution time (ms) 100000 VHPOP2.2 Thank you! 100 OPTIC • Heuristics iLoC (AR) 1 10000 COLIN 02 04 06 08 10 12 14 16 18 20 22 • Static and Dynamic iLoC (MR) 10 Nr. blocks 1000 VHPOP2.2 1 OPTIC 100 01 03 05 07 09 15 25 35 Questions? 45 60 80 100 COLIN • Different planners Nr. ceramics 10 Acquario Room (G-GF) • VHPOP (partial order approach) 1 • OPTIC (TRPG heuristic) 001 003 005 007 009 015 025 035 045 060 080 100 • COLIN (TRPG heuristic) Nr. dishes • CPT, TPSHE, ITSAT, LPG, etc … will be added soon!!! :D AI*IA-2015 riccardo.debenedictis@istc.cnr.it
Recommend
More recommend