MoTif for the AntWorld Simulation Tool Contest
description
Transcript of MoTif for the AntWorld Simulation Tool Contest
![Page 1: MoTif for the AntWorld Simulation Tool Contest](https://reader035.fdocuments.us/reader035/viewer/2022070407/56814348550346895dafc23f/html5/thumbnails/1.jpg)
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: MoTif for the AntWorld Simulation Tool Contest](https://reader035.fdocuments.us/reader035/viewer/2022070407/56814348550346895dafc23f/html5/thumbnails/2.jpg)
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: MoTif for the AntWorld Simulation Tool Contest](https://reader035.fdocuments.us/reader035/viewer/2022070407/56814348550346895dafc23f/html5/thumbnails/3.jpg)
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: MoTif for the AntWorld Simulation Tool Contest](https://reader035.fdocuments.us/reader035/viewer/2022070407/56814348550346895dafc23f/html5/thumbnails/4.jpg)
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: MoTif for the AntWorld Simulation Tool Contest](https://reader035.fdocuments.us/reader035/viewer/2022070407/56814348550346895dafc23f/html5/thumbnails/5.jpg)
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: MoTif for the AntWorld Simulation Tool Contest](https://reader035.fdocuments.us/reader035/viewer/2022070407/56814348550346895dafc23f/html5/thumbnails/6.jpg)
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: MoTif for the AntWorld Simulation Tool Contest](https://reader035.fdocuments.us/reader035/viewer/2022070407/56814348550346895dafc23f/html5/thumbnails/7.jpg)
MoTif for the AntWorld Simulation Tool Contest
GraBaTS’08
ANTWORLD RULES
7
![Page 8: MoTif for the AntWorld Simulation Tool Contest](https://reader035.fdocuments.us/reader035/viewer/2022070407/56814348550346895dafc23f/html5/thumbnails/8.jpg)
MoTif for the AntWorld Simulation Tool Contest
GraBaTS’08
SOME ANTWORLD RULES
8
dropFood checkAntOnOutCircleconnectNodesInSameCircle
goToSameNodeIn moveTowardsHill grabFood
![Page 9: MoTif for the AntWorld Simulation Tool Contest](https://reader035.fdocuments.us/reader035/viewer/2022070407/56814348550346895dafc23f/html5/thumbnails/9.jpg)
MoTif for the AntWorld Simulation Tool Contest
GraBaTS’08 MODELLING OF TRANSFORMATION: SYSTEM
9
![Page 10: MoTif for the AntWorld Simulation Tool Contest](https://reader035.fdocuments.us/reader035/viewer/2022070407/56814348550346895dafc23f/html5/thumbnails/10.jpg)
MoTif for the AntWorld Simulation Tool Contest
GraBaTS’08 MODELLING OF THE TRANSFORMATION: Round CRule
10
• Layers
![Page 11: MoTif for the AntWorld Simulation Tool Contest](https://reader035.fdocuments.us/reader035/viewer/2022070407/56814348550346895dafc23f/html5/thumbnails/11.jpg)
MoTif for the AntWorld Simulation Tool Contest
GraBaTS’08MODELLING OF THE TRANSFORMATION: AntMovements CRule
11
![Page 12: MoTif for the AntWorld Simulation Tool Contest](https://reader035.fdocuments.us/reader035/viewer/2022070407/56814348550346895dafc23f/html5/thumbnails/12.jpg)
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: MoTif for the AntWorld Simulation Tool Contest](https://reader035.fdocuments.us/reader035/viewer/2022070407/56814348550346895dafc23f/html5/thumbnails/13.jpg)
MoTif for the AntWorld Simulation Tool Contest
GraBaTS’08
13
?