SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
PetriNect : Modeling gestural interactions with executable Petri nets




             PetriNect : Modeling gestural interactions with
                          executable Petri nets

               Romuald Deshayes1                  Philippe Palanque2     Tom Mens1

                                  Université de Mons – UMONS, Belgium
                                       firstname.name@umons.ac.be

                                        Université de Toulouse, France
                                                  name@irit.fr


                                             4 september 2012




  Romuald Deshayes – UMONS                                                           1 / 31
PetriNect : Modeling gestural interactions with executable Petri nets




Table of contents

      1    Introduction
              Goal
              Case Study
              Tools and formalisms used
      2    Petshop and ICO
      3    Modeling of the case study
      4    Discussion
      5    Future Work and improvements
      6    Conclusion

  Romuald Deshayes – UMONS                                              2 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Introduction




Introduction




                                          Introduction
         Goal
         Case Study
         Tools and formalisms used




  Romuald Deshayes – UMONS                                              3 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Introduction




What is it about ?


                                                                        (Informal) Games
          Formal specification
              techniques


                                                       VS




  Romuald Deshayes – UMONS                                                                 4 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Introduction
     Goal


Goal of the talk

      Why and how to use formal specification techniques for interaction
      with games ?

              Why ?
                     Because it is not more                             How ?
                     complicated than                                       By using tools
                     coding                                                 allowing to execute
                     And it is safer ! Games                                formal models
                     also have the right to                                 See what’s next !
                     security




  Romuald Deshayes – UMONS                                                                        5 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Introduction
     Case Study


Case study
      Pong Game
              Almost like the classic game
              Uses Kinect
              With free hands only (gestural interaction)
              ⇒ Very simple to play
                     Move the hand to control the paddle
                     Close it to grab the ball
              Interaction modeled with executable Petri-nets




  Romuald Deshayes – UMONS                                              6 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Introduction
     Case Study


Gestural interaction

      Gestural Interaction ?
          In a general way : control a computer with the hands
              In our case study : move or manipulate virtual objects
              displayed on the screen with gestures

      Possible Gestures
              FlyOver
              Grab
              Release
              Drag
              Zoom (in/out)

  Romuald Deshayes – UMONS                                              7 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Introduction
     Case Study


Kinect
      Kinect : what and why ?
          3D sensor
              Equipped with powerful real-time tracking algorithms
              Detects hand position in metric space (point in space)
              Homemade algorithm to detect if hand is open/closed

      For our case study, we will use the position and status of the hands
      and the head




  Romuald Deshayes – UMONS                                               8 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Introduction
     Tools and formalisms used


Tools and formalisms used




      Work done in IRIT Lab
              Petri-net rules
              Formalism called ICO based on Petri-nets
              Tool called Petshop to create ICO’s and execute them




  Romuald Deshayes – UMONS                                              9 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Petshop and ICO




Petshop and ICO




                                   Petshop and ICO




  Romuald Deshayes – UMONS                                              10 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Petshop and ICO




Petri-net
              Directed bipartite graph
              Node correspond to Places and Transitions
              Directed arcs connect places and transitions
              Tokens travel from place to place
              State of the Petri net is represented by the position of the
              tokens in the places
              Non-deterministic execution
              locality in transitions




  Romuald Deshayes – UMONS                                                   11 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Petshop and ICO




ICO

      ICO : main key concepts
              Defined as a formal description technique designed to the
              specification, modeling and implementation of interactive
              systems
              Uses high-level Petri nets (HLPN) to describe interactive
              systems’ behavioural aspects
              In HLPN, tokens can carry informations
              In ICO, tokens can store Java objects (e.g. Kinect data)
              In ICO, transitions can contain Java code (some processing on
              Kinect data)


  Romuald Deshayes – UMONS                                                12 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Petshop and ICO




ICO example




  Romuald Deshayes – UMONS                                              13 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Petshop and ICO




Petshop



      Petshop
              Tool suite dedicated to the engineering of interactive systems.
              Supports ICO
              Allows the editing, simulation and dynamic execution of
              models.
      Use of petshop to create our models, link them together, execute
      them, and interact with Java code




  Romuald Deshayes – UMONS                                                  14 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Petshop and ICO




Petshop




  Romuald Deshayes – UMONS                                              15 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Modeling of the case study




Modeling of the case study




                      Modeling of the case study




  Romuald Deshayes – UMONS                                              16 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Modeling of the case study




Modeling of the case study


              Models used to process kinect raw data
              Transform data into abstract events
              Events are interpreted by virtual objects models




  Romuald Deshayes – UMONS                                              17 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Modeling of the case study




Modeling of the case study
              Use Petshop to create a 3 layered ICO model
              Encapsulate the data of hands and head of each player into
              tokens (position and state)
              Models are created to be independent of the number of players
              (ID for each player)
              Only one instance of each layer whatever the amount of virtual
              objects to control
              Each virtual object can be modeled using petshop (4th layer)




  Romuald Deshayes – UMONS                                                18 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Modeling of the case study




Raw data to positions


      Layer 1 : Raw data to positions
              Receives positions of hands and head of each player at regular
              time intervals
              3 tokens are generated at each kinect frame refresh (1 for the
              head, 1 for each hand)
              Informations about head and hand positions are stored in the
              tokens
              ICO model joins data from head and hand and create a new
              token for each hand
              Tokens are sent to the next layer


  Romuald Deshayes – UMONS                                                   19 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Modeling of the case study




Raw data to positions




  Romuald Deshayes – UMONS                                              20 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Modeling of the case study




Positions to gestures



      Layer 2 : Positions to gestures
              Receives absolute positions of hands (1 token per hand per
              player)
              Uses 2 consecutive tokens to calculate relative movement
              Detects state changes of the hands (open/closed)
              Sends open/close/move events to the 3rd layer




  Romuald Deshayes – UMONS                                                 21 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Modeling of the case study




Positions to gestures




  Romuald Deshayes – UMONS                                              22 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Modeling of the case study




Gestures to events

      Layer 3 : Gestures to events
              Receives move/open/close events from layer 2
              Stores the state of each player in a 4 places sub Petri net
              Joins information about the player and events from layer 2 to
              generate events
              Generates 5 different events
                     Grab
                     Release
                     Flyover
                     Drag
                     Zoom (in/out)
              Sends events to modeled objects

  Romuald Deshayes – UMONS                                                    23 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Modeling of the case study




Gestures to events




  Romuald Deshayes – UMONS                                              24 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Discussion




Discussion




                                            Discussion




  Romuald Deshayes – UMONS                                              25 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Discussion




Discussion


      Modeling has a lot of advantages :
               Reusable models, easy to maintain or extend (dynamicity)
               Models hide some technical complexity
               Amenable to formal analysis
               Can deal with Multi-user
               Easy to integrate with many different virtual objects
               Goal : toolkit for gestural interaction




  Romuald Deshayes – UMONS                                                26 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Future Work and improvements




Future Work and improvements




               Future Work and improvements




  Romuald Deshayes – UMONS                                              27 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Future Work and improvements




Future work and improvements


      Future Work and improvements :
              Specify the game (rules and graphics) with Petri nets
              Performance issue
                     Threads tweaking (constant token flow)
                     Compile for deployment
              Extend the models to deal with more gestures
              Create a DSL over ICO to simplify the specification of virtual
              objects behaviour




  Romuald Deshayes – UMONS                                                    28 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Conclusion




Conclusion




                                            Conclusion




  Romuald Deshayes – UMONS                                              29 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Conclusion




Conclusion


      Wrap-up
               Possible to specify gestural interaction of a game with formal
               methods
               Formal methods might help for safety issues in gaming too
               Lot of other advantages to resort to executable modeling
               instead of coding
                     Dynamicity lead to productivity increase
                     Hides some technical details
                     Easy to read and extend
               Petshop is a cool tool suite, USE IT !



  Romuald Deshayes – UMONS                                                      30 / 31
PetriNect : Modeling gestural interactions with executable Petri nets
  Conclusion




Thank you

                                   Thank you for your attention !


                                             Questions ?




  Romuald Deshayes – UMONS                                              31 / 31

Contenu connexe

Tendances

Deep Learning Tutorial
Deep Learning TutorialDeep Learning Tutorial
Deep Learning TutorialAmr Rashed
 
Deep learning tutorial 9/2019
Deep learning tutorial 9/2019Deep learning tutorial 9/2019
Deep learning tutorial 9/2019Amr Rashed
 
Deep Learning: Application & Opportunity
Deep Learning: Application & OpportunityDeep Learning: Application & Opportunity
Deep Learning: Application & OpportunityiTrain
 
DSRLab seminar Introduction to deep learning
DSRLab seminar   Introduction to deep learningDSRLab seminar   Introduction to deep learning
DSRLab seminar Introduction to deep learningPoo Kuan Hoong
 
Brain-Computer Interfacing, Consciousness, and the Global Brain: Towards the ...
Brain-Computer Interfacing, Consciousness, and the Global Brain: Towards the ...Brain-Computer Interfacing, Consciousness, and the Global Brain: Towards the ...
Brain-Computer Interfacing, Consciousness, and the Global Brain: Towards the ...ringoring
 
Basics of Deep learning
Basics of Deep learningBasics of Deep learning
Basics of Deep learningRamesh Kumar
 
Yann le cun
Yann le cunYann le cun
Yann le cunYandex
 
An introduction to Deep Learning
An introduction to Deep LearningAn introduction to Deep Learning
An introduction to Deep LearningDavid Rostcheck
 
MDEC Data Matters Series: machine learning and Deep Learning, A Primer
MDEC Data Matters Series: machine learning and Deep Learning, A PrimerMDEC Data Matters Series: machine learning and Deep Learning, A Primer
MDEC Data Matters Series: machine learning and Deep Learning, A PrimerPoo Kuan Hoong
 
Intro to Deep Learning for Computer Vision
Intro to Deep Learning for Computer VisionIntro to Deep Learning for Computer Vision
Intro to Deep Learning for Computer VisionChristoph Körner
 
An Introduction to Soft Computing
An Introduction to Soft ComputingAn Introduction to Soft Computing
An Introduction to Soft ComputingTameem Ahmad
 
Deep Learning Hardware: Past, Present, & Future
Deep Learning Hardware: Past, Present, & FutureDeep Learning Hardware: Past, Present, & Future
Deep Learning Hardware: Past, Present, & FutureRouyun Pan
 
Big Data Malaysia - A Primer on Deep Learning
Big Data Malaysia - A Primer on Deep LearningBig Data Malaysia - A Primer on Deep Learning
Big Data Malaysia - A Primer on Deep LearningPoo Kuan Hoong
 
Deep Learning Class #0 - You Can Do It
Deep Learning Class #0 - You Can Do ItDeep Learning Class #0 - You Can Do It
Deep Learning Class #0 - You Can Do ItHolberton School
 
Artificial neural networks
Artificial neural networksArtificial neural networks
Artificial neural networksstellajoseph
 
Deep neural networks
Deep neural networksDeep neural networks
Deep neural networksSi Haem
 
Handwritten Recognition using Deep Learning with R
Handwritten Recognition using Deep Learning with RHandwritten Recognition using Deep Learning with R
Handwritten Recognition using Deep Learning with RPoo Kuan Hoong
 

Tendances (20)

Deep Learning Tutorial
Deep Learning TutorialDeep Learning Tutorial
Deep Learning Tutorial
 
Deep learning tutorial 9/2019
Deep learning tutorial 9/2019Deep learning tutorial 9/2019
Deep learning tutorial 9/2019
 
Deep Learning: Application & Opportunity
Deep Learning: Application & OpportunityDeep Learning: Application & Opportunity
Deep Learning: Application & Opportunity
 
DSRLab seminar Introduction to deep learning
DSRLab seminar   Introduction to deep learningDSRLab seminar   Introduction to deep learning
DSRLab seminar Introduction to deep learning
 
Brain-Computer Interfacing, Consciousness, and the Global Brain: Towards the ...
Brain-Computer Interfacing, Consciousness, and the Global Brain: Towards the ...Brain-Computer Interfacing, Consciousness, and the Global Brain: Towards the ...
Brain-Computer Interfacing, Consciousness, and the Global Brain: Towards the ...
 
Basics of Deep learning
Basics of Deep learningBasics of Deep learning
Basics of Deep learning
 
Yann le cun
Yann le cunYann le cun
Yann le cun
 
An introduction to Deep Learning
An introduction to Deep LearningAn introduction to Deep Learning
An introduction to Deep Learning
 
MDEC Data Matters Series: machine learning and Deep Learning, A Primer
MDEC Data Matters Series: machine learning and Deep Learning, A PrimerMDEC Data Matters Series: machine learning and Deep Learning, A Primer
MDEC Data Matters Series: machine learning and Deep Learning, A Primer
 
Intro to Deep Learning for Computer Vision
Intro to Deep Learning for Computer VisionIntro to Deep Learning for Computer Vision
Intro to Deep Learning for Computer Vision
 
An Introduction to Soft Computing
An Introduction to Soft ComputingAn Introduction to Soft Computing
An Introduction to Soft Computing
 
Deep Learning Hardware: Past, Present, & Future
Deep Learning Hardware: Past, Present, & FutureDeep Learning Hardware: Past, Present, & Future
Deep Learning Hardware: Past, Present, & Future
 
Big Data Malaysia - A Primer on Deep Learning
Big Data Malaysia - A Primer on Deep LearningBig Data Malaysia - A Primer on Deep Learning
Big Data Malaysia - A Primer on Deep Learning
 
Deep Learning Class #0 - You Can Do It
Deep Learning Class #0 - You Can Do ItDeep Learning Class #0 - You Can Do It
Deep Learning Class #0 - You Can Do It
 
2012 12 12_adam_v_final
2012 12 12_adam_v_final2012 12 12_adam_v_final
2012 12 12_adam_v_final
 
Artificial neural networks
Artificial neural networksArtificial neural networks
Artificial neural networks
 
Soft computing
Soft computingSoft computing
Soft computing
 
Deep neural networks
Deep neural networksDeep neural networks
Deep neural networks
 
Handwritten Recognition using Deep Learning with R
Handwritten Recognition using Deep Learning with RHandwritten Recognition using Deep Learning with R
Handwritten Recognition using Deep Learning with R
 
deep learning
deep learningdeep learning
deep learning
 

Similaire à Petrinect: Modeling gestural interactions with executable Petri nets

Timo Honkela: From Patterns of Movement to Subjectivity of Understanding
Timo Honkela: From Patterns of Movement to Subjectivity of UnderstandingTimo Honkela: From Patterns of Movement to Subjectivity of Understanding
Timo Honkela: From Patterns of Movement to Subjectivity of UnderstandingTimo Honkela
 
Separating Gesture Detection and Application Control Concerns with a Multimo...
Separating Gesture Detection and Application Control Concerns with a Multimo...Separating Gesture Detection and Application Control Concerns with a Multimo...
Separating Gesture Detection and Application Control Concerns with a Multimo...Luís Fernandes
 
Ordine degli Psicologi della Lombardia - SMAU Milano 2017
 Ordine degli Psicologi della Lombardia - SMAU Milano 2017  Ordine degli Psicologi della Lombardia - SMAU Milano 2017
Ordine degli Psicologi della Lombardia - SMAU Milano 2017 SMAU
 
Introduction to Prototyping: What, Why, How
Introduction to Prototyping: What, Why, HowIntroduction to Prototyping: What, Why, How
Introduction to Prototyping: What, Why, HowAbdallah El Ali
 
Big Data Intelligence: from Correlation Discovery to Causal Reasoning
Big Data Intelligence: from Correlation Discovery to Causal Reasoning Big Data Intelligence: from Correlation Discovery to Causal Reasoning
Big Data Intelligence: from Correlation Discovery to Causal Reasoning Wanjin Yu
 
Deep learning 1.0 and Beyond, Part 2
Deep learning 1.0 and Beyond, Part 2Deep learning 1.0 and Beyond, Part 2
Deep learning 1.0 and Beyond, Part 2Deakin University
 
Research Assignment V2
Research Assignment V2Research Assignment V2
Research Assignment V2BLamond
 
Network of Excellence in Internet Science (JRA1, Towards a Theory of Internet...
Network of Excellence in Internet Science (JRA1, Towards a Theory of Internet...Network of Excellence in Internet Science (JRA1, Towards a Theory of Internet...
Network of Excellence in Internet Science (JRA1, Towards a Theory of Internet...i_scienceEU
 
Presentatie Internet of Things Conferentie 9 april 2013 door Ben van Lier van...
Presentatie Internet of Things Conferentie 9 april 2013 door Ben van Lier van...Presentatie Internet of Things Conferentie 9 april 2013 door Ben van Lier van...
Presentatie Internet of Things Conferentie 9 april 2013 door Ben van Lier van...Centric
 
Vwbpe collaboration on virtual harmony to moses
Vwbpe collaboration on virtual harmony to moses Vwbpe collaboration on virtual harmony to moses
Vwbpe collaboration on virtual harmony to moses Cynthia Calongne
 
Musstanser Avanzament 4 (Final No Animation)
Musstanser   Avanzament 4 (Final   No Animation)Musstanser   Avanzament 4 (Final   No Animation)
Musstanser Avanzament 4 (Final No Animation)Musstanser Tinauli
 
Artificial intelligence
Artificial intelligenceArtificial intelligence
Artificial intelligenceNitesh Kumar
 
Hybrid worlds nano_biotech_art_impulsionsdi
Hybrid worlds nano_biotech_art_impulsionsdiHybrid worlds nano_biotech_art_impulsionsdi
Hybrid worlds nano_biotech_art_impulsionsdiVictoria Vesna
 
Resta tmg conference presentation
Resta tmg conference presentation Resta tmg conference presentation
Resta tmg conference presentation Paul Resta
 
[JPDC,JCC@LMN22] Ad hoc systems Management and specification with distributed...
[JPDC,JCC@LMN22] Ad hoc systems Management and specification with distributed...[JPDC,JCC@LMN22] Ad hoc systems Management and specification with distributed...
[JPDC,JCC@LMN22] Ad hoc systems Management and specification with distributed...Universidad de los Andes
 
Computational Social Neuroscience - E Tognoli
Computational Social Neuroscience - E TognoliComputational Social Neuroscience - E Tognoli
Computational Social Neuroscience - E TognoliEmmanuelleTognoli
 
Cognitive Computing for Tacit Knowledge1
Cognitive Computing for Tacit Knowledge1Cognitive Computing for Tacit Knowledge1
Cognitive Computing for Tacit Knowledge1Lucia Gradinariu
 
Siggraph Asia 2019 VR & AI workshop-wiles-handout
Siggraph Asia 2019 VR & AI workshop-wiles-handoutSiggraph Asia 2019 VR & AI workshop-wiles-handout
Siggraph Asia 2019 VR & AI workshop-wiles-handoutJoaquim Jorge
 

Similaire à Petrinect: Modeling gestural interactions with executable Petri nets (20)

Timo Honkela: From Patterns of Movement to Subjectivity of Understanding
Timo Honkela: From Patterns of Movement to Subjectivity of UnderstandingTimo Honkela: From Patterns of Movement to Subjectivity of Understanding
Timo Honkela: From Patterns of Movement to Subjectivity of Understanding
 
Separating Gesture Detection and Application Control Concerns with a Multimo...
Separating Gesture Detection and Application Control Concerns with a Multimo...Separating Gesture Detection and Application Control Concerns with a Multimo...
Separating Gesture Detection and Application Control Concerns with a Multimo...
 
Ordine degli Psicologi della Lombardia - SMAU Milano 2017
 Ordine degli Psicologi della Lombardia - SMAU Milano 2017  Ordine degli Psicologi della Lombardia - SMAU Milano 2017
Ordine degli Psicologi della Lombardia - SMAU Milano 2017
 
Introduction to Prototyping: What, Why, How
Introduction to Prototyping: What, Why, HowIntroduction to Prototyping: What, Why, How
Introduction to Prototyping: What, Why, How
 
Big Data Intelligence: from Correlation Discovery to Causal Reasoning
Big Data Intelligence: from Correlation Discovery to Causal Reasoning Big Data Intelligence: from Correlation Discovery to Causal Reasoning
Big Data Intelligence: from Correlation Discovery to Causal Reasoning
 
The End of Privacy Hypothesis
The End of Privacy HypothesisThe End of Privacy Hypothesis
The End of Privacy Hypothesis
 
Deep learning 1.0 and Beyond, Part 2
Deep learning 1.0 and Beyond, Part 2Deep learning 1.0 and Beyond, Part 2
Deep learning 1.0 and Beyond, Part 2
 
Research Assignment V2
Research Assignment V2Research Assignment V2
Research Assignment V2
 
Network of Excellence in Internet Science (JRA1, Towards a Theory of Internet...
Network of Excellence in Internet Science (JRA1, Towards a Theory of Internet...Network of Excellence in Internet Science (JRA1, Towards a Theory of Internet...
Network of Excellence in Internet Science (JRA1, Towards a Theory of Internet...
 
Presentatie Internet of Things Conferentie 9 april 2013 door Ben van Lier van...
Presentatie Internet of Things Conferentie 9 april 2013 door Ben van Lier van...Presentatie Internet of Things Conferentie 9 april 2013 door Ben van Lier van...
Presentatie Internet of Things Conferentie 9 april 2013 door Ben van Lier van...
 
Vwbpe collaboration on virtual harmony to moses
Vwbpe collaboration on virtual harmony to moses Vwbpe collaboration on virtual harmony to moses
Vwbpe collaboration on virtual harmony to moses
 
Musstanser Avanzament 4 (Final No Animation)
Musstanser   Avanzament 4 (Final   No Animation)Musstanser   Avanzament 4 (Final   No Animation)
Musstanser Avanzament 4 (Final No Animation)
 
Artificial intelligence
Artificial intelligenceArtificial intelligence
Artificial intelligence
 
Hybrid worlds nano_biotech_art_impulsionsdi
Hybrid worlds nano_biotech_art_impulsionsdiHybrid worlds nano_biotech_art_impulsionsdi
Hybrid worlds nano_biotech_art_impulsionsdi
 
Biorobotics
BioroboticsBiorobotics
Biorobotics
 
Resta tmg conference presentation
Resta tmg conference presentation Resta tmg conference presentation
Resta tmg conference presentation
 
[JPDC,JCC@LMN22] Ad hoc systems Management and specification with distributed...
[JPDC,JCC@LMN22] Ad hoc systems Management and specification with distributed...[JPDC,JCC@LMN22] Ad hoc systems Management and specification with distributed...
[JPDC,JCC@LMN22] Ad hoc systems Management and specification with distributed...
 
Computational Social Neuroscience - E Tognoli
Computational Social Neuroscience - E TognoliComputational Social Neuroscience - E Tognoli
Computational Social Neuroscience - E Tognoli
 
Cognitive Computing for Tacit Knowledge1
Cognitive Computing for Tacit Knowledge1Cognitive Computing for Tacit Knowledge1
Cognitive Computing for Tacit Knowledge1
 
Siggraph Asia 2019 VR & AI workshop-wiles-handout
Siggraph Asia 2019 VR & AI workshop-wiles-handoutSiggraph Asia 2019 VR & AI workshop-wiles-handout
Siggraph Asia 2019 VR & AI workshop-wiles-handout
 

Plus de Tom Mens

How to be(come) a successful PhD student
How to be(come) a successful PhD studentHow to be(come) a successful PhD student
How to be(come) a successful PhD studentTom Mens
 
Recognising bot activity in collaborative software development
Recognising bot activity in collaborative software developmentRecognising bot activity in collaborative software development
Recognising bot activity in collaborative software developmentTom Mens
 
A Dataset of Bot and Human Activities in GitHub
A Dataset of Bot and Human Activities in GitHubA Dataset of Bot and Human Activities in GitHub
A Dataset of Bot and Human Activities in GitHubTom Mens
 
The (r)evolution of CI/CD on GitHub
 The (r)evolution of CI/CD on GitHub The (r)evolution of CI/CD on GitHub
The (r)evolution of CI/CD on GitHubTom Mens
 
Nurturing the Software Ecosystems of the Future
Nurturing the Software Ecosystems of the FutureNurturing the Software Ecosystems of the Future
Nurturing the Software Ecosystems of the FutureTom Mens
 
Comment programmer un robot en 30 minutes?
Comment programmer un robot en 30 minutes?Comment programmer un robot en 30 minutes?
Comment programmer un robot en 30 minutes?Tom Mens
 
On the rise and fall of CI services in GitHub
On the rise and fall of CI services in GitHubOn the rise and fall of CI services in GitHub
On the rise and fall of CI services in GitHubTom Mens
 
On backporting practices in package dependency networks
On backporting practices in package dependency networksOn backporting practices in package dependency networks
On backporting practices in package dependency networksTom Mens
 
Comparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and RubygemsComparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and RubygemsTom Mens
 
Lost in Zero Space
Lost in Zero SpaceLost in Zero Space
Lost in Zero SpaceTom Mens
 
Evaluating a bot detection model on git commit messages
Evaluating a bot detection model on git commit messagesEvaluating a bot detection model on git commit messages
Evaluating a bot detection model on git commit messagesTom Mens
 
Is my software ecosystem healthy? It depends!
Is my software ecosystem healthy? It depends!Is my software ecosystem healthy? It depends!
Is my software ecosystem healthy? It depends!Tom Mens
 
Bot or not? Detecting bots in GitHub pull request activity based on comment s...
Bot or not? Detecting bots in GitHub pull request activity based on comment s...Bot or not? Detecting bots in GitHub pull request activity based on comment s...
Bot or not? Detecting bots in GitHub pull request activity based on comment s...Tom Mens
 
On the fragility of open source software packaging ecosystems
On the fragility of open source software packaging ecosystemsOn the fragility of open source software packaging ecosystems
On the fragility of open source software packaging ecosystemsTom Mens
 
How magic is zero? An Empirical Analysis of Initial Development Releases in S...
How magic is zero? An Empirical Analysis of Initial Development Releases in S...How magic is zero? An Empirical Analysis of Initial Development Releases in S...
How magic is zero? An Empirical Analysis of Initial Development Releases in S...Tom Mens
 
Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)Tom Mens
 
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)Tom Mens
 
SecoHealth 2019 Research Achievements
SecoHealth 2019 Research AchievementsSecoHealth 2019 Research Achievements
SecoHealth 2019 Research AchievementsTom Mens
 
SECO-Assist 2019 research seminar
SECO-Assist 2019 research seminarSECO-Assist 2019 research seminar
SECO-Assist 2019 research seminarTom Mens
 
Empirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package ManagersEmpirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package ManagersTom Mens
 

Plus de Tom Mens (20)

How to be(come) a successful PhD student
How to be(come) a successful PhD studentHow to be(come) a successful PhD student
How to be(come) a successful PhD student
 
Recognising bot activity in collaborative software development
Recognising bot activity in collaborative software developmentRecognising bot activity in collaborative software development
Recognising bot activity in collaborative software development
 
A Dataset of Bot and Human Activities in GitHub
A Dataset of Bot and Human Activities in GitHubA Dataset of Bot and Human Activities in GitHub
A Dataset of Bot and Human Activities in GitHub
 
The (r)evolution of CI/CD on GitHub
 The (r)evolution of CI/CD on GitHub The (r)evolution of CI/CD on GitHub
The (r)evolution of CI/CD on GitHub
 
Nurturing the Software Ecosystems of the Future
Nurturing the Software Ecosystems of the FutureNurturing the Software Ecosystems of the Future
Nurturing the Software Ecosystems of the Future
 
Comment programmer un robot en 30 minutes?
Comment programmer un robot en 30 minutes?Comment programmer un robot en 30 minutes?
Comment programmer un robot en 30 minutes?
 
On the rise and fall of CI services in GitHub
On the rise and fall of CI services in GitHubOn the rise and fall of CI services in GitHub
On the rise and fall of CI services in GitHub
 
On backporting practices in package dependency networks
On backporting practices in package dependency networksOn backporting practices in package dependency networks
On backporting practices in package dependency networks
 
Comparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and RubygemsComparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
 
Lost in Zero Space
Lost in Zero SpaceLost in Zero Space
Lost in Zero Space
 
Evaluating a bot detection model on git commit messages
Evaluating a bot detection model on git commit messagesEvaluating a bot detection model on git commit messages
Evaluating a bot detection model on git commit messages
 
Is my software ecosystem healthy? It depends!
Is my software ecosystem healthy? It depends!Is my software ecosystem healthy? It depends!
Is my software ecosystem healthy? It depends!
 
Bot or not? Detecting bots in GitHub pull request activity based on comment s...
Bot or not? Detecting bots in GitHub pull request activity based on comment s...Bot or not? Detecting bots in GitHub pull request activity based on comment s...
Bot or not? Detecting bots in GitHub pull request activity based on comment s...
 
On the fragility of open source software packaging ecosystems
On the fragility of open source software packaging ecosystemsOn the fragility of open source software packaging ecosystems
On the fragility of open source software packaging ecosystems
 
How magic is zero? An Empirical Analysis of Initial Development Releases in S...
How magic is zero? An Empirical Analysis of Initial Development Releases in S...How magic is zero? An Empirical Analysis of Initial Development Releases in S...
How magic is zero? An Empirical Analysis of Initial Development Releases in S...
 
Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)
 
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
 
SecoHealth 2019 Research Achievements
SecoHealth 2019 Research AchievementsSecoHealth 2019 Research Achievements
SecoHealth 2019 Research Achievements
 
SECO-Assist 2019 research seminar
SECO-Assist 2019 research seminarSECO-Assist 2019 research seminar
SECO-Assist 2019 research seminar
 
Empirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package ManagersEmpirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package Managers
 

Dernier

GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Projectjordimapav
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmStan Meyer
 
EMBODO Lesson Plan Grade 9 Law of Sines.docx
EMBODO Lesson Plan Grade 9 Law of Sines.docxEMBODO Lesson Plan Grade 9 Law of Sines.docx
EMBODO Lesson Plan Grade 9 Law of Sines.docxElton John Embodo
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4JOYLYNSAMANIEGO
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17Celine George
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataBabyAnnMotar
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfTechSoup
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management systemChristalin Nelson
 
Integumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.pptIntegumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.pptshraddhaparab530
 
Activity 2-unit 2-update 2024. English translation
Activity 2-unit 2-update 2024. English translationActivity 2-unit 2-update 2024. English translation
Activity 2-unit 2-update 2024. English translationRosabel UA
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxAnupkumar Sharma
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptxiammrhaywood
 
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...JojoEDelaCruz
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfVirtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfErwinPantujan2
 

Dernier (20)

GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Project
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and Film
 
EMBODO Lesson Plan Grade 9 Law of Sines.docx
EMBODO Lesson Plan Grade 9 Law of Sines.docxEMBODO Lesson Plan Grade 9 Law of Sines.docx
EMBODO Lesson Plan Grade 9 Law of Sines.docx
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped data
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
 
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptxINCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
 
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptxLEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management system
 
Integumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.pptIntegumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.ppt
 
Activity 2-unit 2-update 2024. English translation
Activity 2-unit 2-update 2024. English translationActivity 2-unit 2-update 2024. English translation
Activity 2-unit 2-update 2024. English translation
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
 
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
 
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfVirtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
 

Petrinect: Modeling gestural interactions with executable Petri nets

  • 1. PetriNect : Modeling gestural interactions with executable Petri nets PetriNect : Modeling gestural interactions with executable Petri nets Romuald Deshayes1 Philippe Palanque2 Tom Mens1 Université de Mons – UMONS, Belgium firstname.name@umons.ac.be Université de Toulouse, France name@irit.fr 4 september 2012 Romuald Deshayes – UMONS 1 / 31
  • 2. PetriNect : Modeling gestural interactions with executable Petri nets Table of contents 1 Introduction Goal Case Study Tools and formalisms used 2 Petshop and ICO 3 Modeling of the case study 4 Discussion 5 Future Work and improvements 6 Conclusion Romuald Deshayes – UMONS 2 / 31
  • 3. PetriNect : Modeling gestural interactions with executable Petri nets Introduction Introduction Introduction Goal Case Study Tools and formalisms used Romuald Deshayes – UMONS 3 / 31
  • 4. PetriNect : Modeling gestural interactions with executable Petri nets Introduction What is it about ? (Informal) Games Formal specification techniques VS Romuald Deshayes – UMONS 4 / 31
  • 5. PetriNect : Modeling gestural interactions with executable Petri nets Introduction Goal Goal of the talk Why and how to use formal specification techniques for interaction with games ? Why ? Because it is not more How ? complicated than By using tools coding allowing to execute And it is safer ! Games formal models also have the right to See what’s next ! security Romuald Deshayes – UMONS 5 / 31
  • 6. PetriNect : Modeling gestural interactions with executable Petri nets Introduction Case Study Case study Pong Game Almost like the classic game Uses Kinect With free hands only (gestural interaction) ⇒ Very simple to play Move the hand to control the paddle Close it to grab the ball Interaction modeled with executable Petri-nets Romuald Deshayes – UMONS 6 / 31
  • 7. PetriNect : Modeling gestural interactions with executable Petri nets Introduction Case Study Gestural interaction Gestural Interaction ? In a general way : control a computer with the hands In our case study : move or manipulate virtual objects displayed on the screen with gestures Possible Gestures FlyOver Grab Release Drag Zoom (in/out) Romuald Deshayes – UMONS 7 / 31
  • 8. PetriNect : Modeling gestural interactions with executable Petri nets Introduction Case Study Kinect Kinect : what and why ? 3D sensor Equipped with powerful real-time tracking algorithms Detects hand position in metric space (point in space) Homemade algorithm to detect if hand is open/closed For our case study, we will use the position and status of the hands and the head Romuald Deshayes – UMONS 8 / 31
  • 9. PetriNect : Modeling gestural interactions with executable Petri nets Introduction Tools and formalisms used Tools and formalisms used Work done in IRIT Lab Petri-net rules Formalism called ICO based on Petri-nets Tool called Petshop to create ICO’s and execute them Romuald Deshayes – UMONS 9 / 31
  • 10. PetriNect : Modeling gestural interactions with executable Petri nets Petshop and ICO Petshop and ICO Petshop and ICO Romuald Deshayes – UMONS 10 / 31
  • 11. PetriNect : Modeling gestural interactions with executable Petri nets Petshop and ICO Petri-net Directed bipartite graph Node correspond to Places and Transitions Directed arcs connect places and transitions Tokens travel from place to place State of the Petri net is represented by the position of the tokens in the places Non-deterministic execution locality in transitions Romuald Deshayes – UMONS 11 / 31
  • 12. PetriNect : Modeling gestural interactions with executable Petri nets Petshop and ICO ICO ICO : main key concepts Defined as a formal description technique designed to the specification, modeling and implementation of interactive systems Uses high-level Petri nets (HLPN) to describe interactive systems’ behavioural aspects In HLPN, tokens can carry informations In ICO, tokens can store Java objects (e.g. Kinect data) In ICO, transitions can contain Java code (some processing on Kinect data) Romuald Deshayes – UMONS 12 / 31
  • 13. PetriNect : Modeling gestural interactions with executable Petri nets Petshop and ICO ICO example Romuald Deshayes – UMONS 13 / 31
  • 14. PetriNect : Modeling gestural interactions with executable Petri nets Petshop and ICO Petshop Petshop Tool suite dedicated to the engineering of interactive systems. Supports ICO Allows the editing, simulation and dynamic execution of models. Use of petshop to create our models, link them together, execute them, and interact with Java code Romuald Deshayes – UMONS 14 / 31
  • 15. PetriNect : Modeling gestural interactions with executable Petri nets Petshop and ICO Petshop Romuald Deshayes – UMONS 15 / 31
  • 16. PetriNect : Modeling gestural interactions with executable Petri nets Modeling of the case study Modeling of the case study Modeling of the case study Romuald Deshayes – UMONS 16 / 31
  • 17. PetriNect : Modeling gestural interactions with executable Petri nets Modeling of the case study Modeling of the case study Models used to process kinect raw data Transform data into abstract events Events are interpreted by virtual objects models Romuald Deshayes – UMONS 17 / 31
  • 18. PetriNect : Modeling gestural interactions with executable Petri nets Modeling of the case study Modeling of the case study Use Petshop to create a 3 layered ICO model Encapsulate the data of hands and head of each player into tokens (position and state) Models are created to be independent of the number of players (ID for each player) Only one instance of each layer whatever the amount of virtual objects to control Each virtual object can be modeled using petshop (4th layer) Romuald Deshayes – UMONS 18 / 31
  • 19. PetriNect : Modeling gestural interactions with executable Petri nets Modeling of the case study Raw data to positions Layer 1 : Raw data to positions Receives positions of hands and head of each player at regular time intervals 3 tokens are generated at each kinect frame refresh (1 for the head, 1 for each hand) Informations about head and hand positions are stored in the tokens ICO model joins data from head and hand and create a new token for each hand Tokens are sent to the next layer Romuald Deshayes – UMONS 19 / 31
  • 20. PetriNect : Modeling gestural interactions with executable Petri nets Modeling of the case study Raw data to positions Romuald Deshayes – UMONS 20 / 31
  • 21. PetriNect : Modeling gestural interactions with executable Petri nets Modeling of the case study Positions to gestures Layer 2 : Positions to gestures Receives absolute positions of hands (1 token per hand per player) Uses 2 consecutive tokens to calculate relative movement Detects state changes of the hands (open/closed) Sends open/close/move events to the 3rd layer Romuald Deshayes – UMONS 21 / 31
  • 22. PetriNect : Modeling gestural interactions with executable Petri nets Modeling of the case study Positions to gestures Romuald Deshayes – UMONS 22 / 31
  • 23. PetriNect : Modeling gestural interactions with executable Petri nets Modeling of the case study Gestures to events Layer 3 : Gestures to events Receives move/open/close events from layer 2 Stores the state of each player in a 4 places sub Petri net Joins information about the player and events from layer 2 to generate events Generates 5 different events Grab Release Flyover Drag Zoom (in/out) Sends events to modeled objects Romuald Deshayes – UMONS 23 / 31
  • 24. PetriNect : Modeling gestural interactions with executable Petri nets Modeling of the case study Gestures to events Romuald Deshayes – UMONS 24 / 31
  • 25. PetriNect : Modeling gestural interactions with executable Petri nets Discussion Discussion Discussion Romuald Deshayes – UMONS 25 / 31
  • 26. PetriNect : Modeling gestural interactions with executable Petri nets Discussion Discussion Modeling has a lot of advantages : Reusable models, easy to maintain or extend (dynamicity) Models hide some technical complexity Amenable to formal analysis Can deal with Multi-user Easy to integrate with many different virtual objects Goal : toolkit for gestural interaction Romuald Deshayes – UMONS 26 / 31
  • 27. PetriNect : Modeling gestural interactions with executable Petri nets Future Work and improvements Future Work and improvements Future Work and improvements Romuald Deshayes – UMONS 27 / 31
  • 28. PetriNect : Modeling gestural interactions with executable Petri nets Future Work and improvements Future work and improvements Future Work and improvements : Specify the game (rules and graphics) with Petri nets Performance issue Threads tweaking (constant token flow) Compile for deployment Extend the models to deal with more gestures Create a DSL over ICO to simplify the specification of virtual objects behaviour Romuald Deshayes – UMONS 28 / 31
  • 29. PetriNect : Modeling gestural interactions with executable Petri nets Conclusion Conclusion Conclusion Romuald Deshayes – UMONS 29 / 31
  • 30. PetriNect : Modeling gestural interactions with executable Petri nets Conclusion Conclusion Wrap-up Possible to specify gestural interaction of a game with formal methods Formal methods might help for safety issues in gaming too Lot of other advantages to resort to executable modeling instead of coding Dynamicity lead to productivity increase Hides some technical details Easy to read and extend Petshop is a cool tool suite, USE IT ! Romuald Deshayes – UMONS 30 / 31
  • 31. PetriNect : Modeling gestural interactions with executable Petri nets Conclusion Thank you Thank you for your attention ! Questions ? Romuald Deshayes – UMONS 31 / 31