13
McGill University School of Computer Science Ph.D. Student in the Modelling, Simulation and Design Lab GraBaTS’08 MoTif for the AntWorld Simulation Tool Contest Eugene Syriani Hans Vangheluwe

McGill University School of Computer Science Ph.D. Student in the Modelling, Simulation and Design Lab GraBaTS08 Eugene Syriani Hans Vangheluwe

Embed Size (px)

Citation preview

Page 1: McGill University School of Computer Science Ph.D. Student in the Modelling, Simulation and Design Lab GraBaTS08 Eugene Syriani Hans Vangheluwe

McGill UniversitySchool of Computer Science

Ph.D. Student in the Modelling, Simulation and Design Lab

GraBaTS’08

MoTif for the AntWorld Simulation

Tool ContestEugene Syriani

Hans Vangheluwe

Page 2: McGill University School of Computer Science Ph.D. Student in the Modelling, Simulation and Design Lab GraBaTS08 Eugene Syriani Hans Vangheluwe

MoTif for the AntWorld Simulation Tool Contest

GraBaTS’08

OVERVIEW

Highlights of MoTif

Domain-Specific modelling with AToM3

MoTif Solution for the AntWorld case-study

Outlook2

Page 3: McGill University School of Computer Science Ph.D. Student in the Modelling, Simulation and Design Lab GraBaTS08 Eugene Syriani Hans Vangheluwe

MoTif for the AntWorld Simulation Tool Contest

GraBaTS’08

HIGHLIGHTS

Structure: Modular, Compositional Control Flow: Sequencing, Branching, Looping, Parallelism, Hierarchy Time

Rules: Subtype matching Pivot passing/binding NAC Attribute constraints Regex-like patterns

Efficient Matching Inter-rule optimization:

Performance Incremental changes

Expressiveness vs Performance

3

Page 4: McGill University School of Computer Science Ph.D. Student in the Modelling, Simulation and Design Lab GraBaTS08 Eugene Syriani Hans Vangheluwe

MoTif for the AntWorld Simulation Tool Contest

GraBaTS’08

DOMAIN-SPECIFIC MODELLING WITH ATOM3 [1]

4[1] de Lara J., Vangheluwe H., AToM3: A tool for multi-formalism and meta-modelling. FASE, LNCS 2306 (2002), 174-188

Page 5: McGill University School of Computer Science Ph.D. Student in the Modelling, Simulation and Design Lab GraBaTS08 Eugene Syriani Hans Vangheluwe

MoTif for the AntWorld Simulation Tool Contest

GraBaTS’08

MoTiF [2]

• AtomicRule (ARule): transformation rule application

• ForAllRule (FRule): apply on all matches (parallel independent)

• TransactionalRule (XRule): control backtracking enabled

• Selector: At most 1 rule is applied

• Synchronizer: synchronize (merge) “threads” of rule applications

• CoupledRule (CRule): parallel composition of inner models5[2] Syriani E. and Vangheluwe H.: Programmed Graph Rewriting with DEVS. AGTIVE 2007, LNCS (2008)

Page 6: McGill University School of Computer Science Ph.D. Student in the Modelling, Simulation and Design Lab GraBaTS08 Eugene Syriani Hans Vangheluwe

MoTif for the AntWorld Simulation Tool Contest

GraBaTS’08 MoTiF EXECUTION

COMPILE

GENERATE

IMPORT

SIMULATE

Class Grabfood : def match(): … def execute(): …

class Grabfood(ARule): def __init__(self): ARule.__init__(self, name=‘GF') self.state = ARuleState(Grabfood()) def weightFunction(self): return 1.0

Class Grabfood : def match(): … def execute(): …

class Grabfood: def match(): … def execute(): …

6

Page 7: McGill University School of Computer Science Ph.D. Student in the Modelling, Simulation and Design Lab GraBaTS08 Eugene Syriani Hans Vangheluwe

MoTif for the AntWorld Simulation Tool Contest

GraBaTS’08

ANTWORLD RULES

7

Page 8: McGill University School of Computer Science Ph.D. Student in the Modelling, Simulation and Design Lab GraBaTS08 Eugene Syriani Hans Vangheluwe

MoTif for the AntWorld Simulation Tool Contest

GraBaTS’08

SOME ANTWORLD RULES

8

dropFood checkAntOnOutCircleconnectNodesInSameCircle

goToSameNodeIn moveTowardsHill grabFood

Page 9: McGill University School of Computer Science Ph.D. Student in the Modelling, Simulation and Design Lab GraBaTS08 Eugene Syriani Hans Vangheluwe

MoTif for the AntWorld Simulation Tool Contest

GraBaTS’08 MODELLING OF TRANSFORMATION: SYSTEM

9

Page 10: McGill University School of Computer Science Ph.D. Student in the Modelling, Simulation and Design Lab GraBaTS08 Eugene Syriani Hans Vangheluwe

MoTif for the AntWorld Simulation Tool Contest

GraBaTS’08 MODELLING OF THE TRANSFORMATION: Round CRule

10

• Layers

Page 11: McGill University School of Computer Science Ph.D. Student in the Modelling, Simulation and Design Lab GraBaTS08 Eugene Syriani Hans Vangheluwe

MoTif for the AntWorld Simulation Tool Contest

GraBaTS’08MODELLING OF THE TRANSFORMATION: AntMovements CRule

11

Page 12: McGill University School of Computer Science Ph.D. Student in the Modelling, Simulation and Design Lab GraBaTS08 Eugene Syriani Hans Vangheluwe

MoTif for the AntWorld Simulation Tool Contest

GraBaTS’08

OUTLOOK

12

• Extension with human stepping on ants

• Model the user behaviour: event-driven model transformation

• Synthesis of a reactive web application with AJAX/SVG

• Real-time model transformation

• Continuum: Modelling → Simulation → Synthesis [3]

E. Syriani and H. Vangheluwe. DEVS: A Semantic Domain For Programmed Graph Transformation. In Discrete Event System Specification, Taylor & Francis (2008)

[3] Syriani E. and Vangheluwe H.: Programmed Graph Rewriting with Time for Simulation-based Design. ICMT 2007, LNCS 5063, pp. 91-106 (2008)

Page 13: McGill University School of Computer Science Ph.D. Student in the Modelling, Simulation and Design Lab GraBaTS08 Eugene Syriani Hans Vangheluwe

MoTif for the AntWorld Simulation Tool Contest

GraBaTS’08

13

?