UPPAAL-Tiga: Time for Playing Games!

Similar documents
Designing Autonomous Robot Systems - Evaluation of the R3-COP Decision Support System Approach

Smart Grids Simulation with MECSYCO

Teachers response to unexplained answers

Towards a MWE-driven A* parsing with LTAGs [WG2,WG3]

User Profile Modelling for Digital Resource Management Systems

Specification of a multilevel model for an individualized didactic planning: case of learning to read

Students concept images of inverse functions

A Novel Approach for the Recognition of a wide Arabic Handwritten Word Lexicon

Process Assessment Issues in a Bachelor Capstone Project

University of Groningen. Systemen, planning, netwerken Bosman, Aart

Language properties and Grammar of Parallel and Series Parallel Languages

Learning Methods for Fuzzy Systems

On-Line Data Analytics

Language specific preferences in anaphor resolution: Exposure or gricean maxims?

Raising awareness on Archaeology: A Multiplayer Game-Based Approach with Mixed Reality

Automating the E-learning Personalization

Erkki Mäkinen State change languages as homomorphic images of Szilard languages

Maeha a Nui: A Multilingual Primary School Project in French Polynesia

Agent-Based Software Engineering

Robot Learning Simultaneously a Task and How to Interpret Human Instructions

Technology-mediated realistic mathematics education and the bridge21 model: A teaching experiment

How to read a Paper ISMLL. Dr. Josif Grabocka, Carlotta Schatten

Data Fusion Models in WSNs: Comparison and Analysis

Introduction to Simulation

Exact Equality and Successor Function : Two Keys Concepts on the Path towards Understanding Exact Numbers

Does Linguistic Communication Rest on Inference?

Lecture 10: Reinforcement Learning

Document number: 2013/ Programs Committee 6/2014 (July) Agenda Item 42.0 Bachelor of Engineering with Honours in Software Engineering

Fragment Analysis and Test Case Generation using F- Measure for Adaptive Random Testing and Partitioned Block based Adaptive Random Testing

A MULTI-AGENT SYSTEM FOR A DISTANCE SUPPORT IN EDUCATIONAL ROBOTICS

Self Study Report Computer Science

Report from the visiting committee

THE DEPARTMENT OF DEFENSE HIGH LEVEL ARCHITECTURE. Richard M. Fujimoto

AQUA: An Ontology-Driven Question Answering System

A Study of Synthetic Oversampling for Twitter Imbalanced Sentiment Analysis

Communities of Practice: Going One Step Too Far?.

Major Milestones, Team Activities, and Individual Deliverables

Computer Science PhD Program Evaluation Proposal Based on Domain and Non-Domain Characteristics

ISFA2008U_120 A SCHEDULING REINFORCEMENT LEARNING ALGORITHM

TRAINING TEACHER STUDENTS TO USE HISTORY AND EPISTEMOLOGY TOOLS: THEORY AND PRACTICE ON THE BASIS OF EXPERIMENTS CONDUCTED AT MONTPELLIER UNIVERSITY

CS Machine Learning

Different Requirements Gathering Techniques and Issues. Javaria Mushtaq

Montana Content Standards for Mathematics Grade 3. Montana Content Standards for Mathematical Practices and Mathematics Content Adopted November 2011

A General Class of Noncontext Free Grammars Generating Context Free Languages

The Prosody of French Interrogatives

EECS 571 PRINCIPLES OF REAL-TIME COMPUTING Fall 10. Instructor: Kang G. Shin, 4605 CSE, ;

HOW DO YOU IMPROVE YOUR CORPORATE LEARNING?

Analysis of Enzyme Kinetic Data

SAM - Sensors, Actuators and Microcontrollers in Mobile Robots

A systems engineering laboratory in the context of the Bologna Process

ECE-492 SENIOR ADVANCED DESIGN PROJECT

AUTOMATIC DETECTION OF PROLONGED FRICATIVE PHONEMES WITH THE HIDDEN MARKOV MODELS APPROACH 1. INTRODUCTION

PH.D. IN COMPUTER SCIENCE PROGRAM (POST M.S.)

REFERENCE FRAMEWORK FOR THE TRAINING OF COOPERATING TEACHERS AND UNIVERSITY SUPERVISORS. (Abridged version)

Detailed Information and Rules

Modeling user preferences and norms in context-aware systems

Comparison of network inference packages and methods for multiple networks inference

Course Content Concepts

Efficient Use of Space Over Time Deployment of the MoreSpace Tool

Circuit Simulators: A Revolutionary E-Learning Platform

Specification and Evaluation of Machine Translation Toy Systems - Criteria for laboratory assignments

GACE Computer Science Assessment Test at a Glance

The Impact of Neuroscience on Foreign Languages in School

Mathematics. Mathematics

Document WSIS/PC-3/CONTR/187-E 5 November 2003 Original: English and French

Probability and Game Theory Course Syllabus

BUILD-IT: Intuitive plant layout mediated by natural interaction

What s in a Step? Toward General, Abstract Representations of Tutoring System Log Data

DOCTOR OF PHILOSOPHY HANDBOOK

PUBLIC CASE REPORT Use of the GeoGebra software at upper secondary school

arxiv: v1 [cs.hc] 21 Nov 2012

MONTPELLIER FRENCH COURSE YOUTH APPLICATION FORM 2016

Designing a Computer to Play Nim: A Mini-Capstone Project in Digital Design I

arxiv: v1 [math.at] 10 Jan 2016

PDAs and Handhelds: ICT at your side and not in your face

THE WEB 2.0 AS A PLATFORM FOR THE ACQUISITION OF SKILLS, IMPROVE ACADEMIC PERFORMANCE AND DESIGNER CAREER PROMOTION IN THE UNIVERSITY

On Human Computer Interaction, HCI. Dr. Saif al Zahir Electrical and Computer Engineering Department UBC

1. Share the following information with your partner. Spell each name to your partner. Change roles. One object in the classroom:

University of Waterloo School of Accountancy. AFM 102: Introductory Management Accounting. Fall Term 2004: Section 4

Mathematics subject curriculum

Matching Similarity for Keyword-Based Clustering

Software Maintenance

Quantitative Evaluation of an Intuitive Teaching Method for Industrial Robot Using a Force / Moment Direction Sensor

International Journal of Computational Intelligence and Informatics, Vol. 1 : No. 4, January - March 2012

Multisensor Data Fusion: From Algorithms And Architectural Design To Applications (Devices, Circuits, And Systems)

Machine Learning from Garden Path Sentences: The Application of Computational Linguistics

An Estimating Method for IT Project Expected Duration Oriented to GERT

We are strong in research and particularly noted in software engineering, information security and privacy, and humane gaming.

Rule discovery in Web-based educational systems using Grammar-Based Genetic Programming

Axiom 2013 Team Description Paper

Inquiry Learning Methodologies and the Disposition to Energy Systems Problem Solving

The dilemma of Saussurean communication

Probabilistic Model Checking of DTMC Models of User Activity Patterns

Objectives. Chapter 2: The Representation of Knowledge. Expert Systems: Principles and Programming, Fourth Edition

MASTER OF SCIENCE (M.S.) MAJOR IN COMPUTER SCIENCE

Laboratorio di Intelligenza Artificiale e Robotica

Arts, Literature and Communication (500.A1)

The Use of Statistical, Computational and Modelling Tools in Higher Learning Institutions: A Case Study of the University of Dodoma

Dynamic Pictures and Interactive. Björn Wittenmark, Helena Haglund, and Mikael Johansson. Department of Automatic Control

Running Head: STUDENT CENTRIC INTEGRATED TECHNOLOGY

Transcription:

UPPAAL-Tiga: Time for Playing Games! Gerd Behrmann, Agnès Cougnard, Alexandre David, Emmanuel Fleury, Kim Guldstrand Larsen, Didier Lime To cite this version: Gerd Behrmann, Agnès Cougnard, Alexandre David, Emmanuel Fleury, Kim Guldstrand Larsen, et al.. UPPAAL-Tiga: Time for Playing Games!. W. Damm, H. Hermanns. 19th International Conference on Computer Aided Verification (CAV07), 2007, Berlin, Germany. Springer, 4590, pp.121-125, 2007, Lecture Notes in Computer Science. <10.1007/978-3-540-73368-3_14>. <hal-00350466> HAL Id: hal-00350466 https://hal.archives-ouvertes.fr/hal-00350466 Submitted on 6 Jan 2009 HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

UPPAAL-Tiga: Time for Playing Games! (Tool Paper) Gerd Behrmann 1,Agnès Cougnard 1, Alexandre David 1, Emmanuel Fleury 2, Kim G. Larsen 1, and Didier Lime 3 1 CISS, Aalborg University, Aalborg, Denmark {behrmann,adavid,kgl}@cs.aau.dk 2 LaBRI, Bordeaux-1 University, CNRS (UMR 5800), Talence, France fleury@labri.fr 3 IRCCyN, École Centrale de Nantes, CNRS (UMR 6597), Nantes, France Didier.Lime@irccyn.ec-nantes.fr Abstract. In 2005 we proposed the first efficient on-the-fly algorithm for solving games based on timed game automata with respect to reachability and safety properties. The first prototype presented at that time has now matured to a fully integrated tool with dramatic improvements both in terms of performance and the availability of the extended input language of Uppaal-4.0. The new tool can output strategies or let the user play against them both from the command line and from the graphical simulator that was completely re-designed. 1 Introduction For more than a decade timed, priced and hybrid games have been proposed and studied by various researchers [AMPS98, DAHM01, MPS95, BCFL04]. Though several decidability results and algorithms have been presented, so far only prototype tools have been developed [AT02]. Uppaal-Tiga 1 is the first efficient tool supporting the analysis of timed games allowing synthesis of controllers for control problems modelled as timed game automata and with safety or liveness control objectives. 2 What Can Be Done with Uppaal-Tiga? Control Problems. The modeling formalism of Uppaal-Tiga consists of a network of timed game automata [MPS95] (NTGA). A timed game automaton is a timed automaton [AD94] in which the set of actions is partitioned into controllable actions and uncontrollable actions. The former are actions that can be triggered by the controller, the latter by the environment/opponent. The opponent has 1 http://www.cs.aau.dk/ adavid/tiga/ W. Damm and H. Hermanns (Eds.): CAV 2007, LNCS 4590, pp. 121 125, 2007. c Springer-Verlag Berlin Heidelberg 2007

122 G. Behrmann et al. priority over the controller. Given a NTGA, we are mainly interested in two types of control objectives: The reachability objective: Is it possible to find a strategy for the triggering of controllable actions guaranteeing that a given set of (goal) states of the system is reached regardless of what and when uncontrollable actions are taken? The safety objective: Is it possible to find a strategy for the triggering of controllable actions guaranteeing that a given set of (bad) states of the system are never reached regardless of what and when uncontrollable actions are taken? Formally, control objectives are formulated as control: P, where P is TCTL formula specifying either a safety property (A[] φ or A[φ 1 W φ 2 ]) or a liveness property (A<> φ or A[φ 1 U φ 2 ]). Given a control objective control: P the search engine of Uppaal-Tiga will provide a strategy (if any such exists) under which the behaviour will satisfy P. Here a (winning) strategy is simply a function describing for each state of the system what the controller should do either in terms of performing a particular controllable action or to delay. x<1 u 2 x := 0 x<1 u 3 c 3 l 1 l 2 l 3 l 4 x>1;u 1 x 1;c 1 x 2;c 2 x 1;c 4 l 5 Goal Fig. 1. Timed game automaton example Example. To illustrate the use of Uppaal-Tiga, consider the example in Fig. 1, consisting of a timed game automaton A with one clock x. Ithas two types of edges: controllable (c i ) and uncontrollable (u i ). A defines the rules of the game. In our current example (Fig. 1), we define the simple reachability objective control: A<> A.Goal. Uppaal-Tiga searches for a winning strategy on this game using the algorithm proposed in [CDF + 05]. Each winning condition, entered in Uppaal-Tiga as a regular query, is marked as satisfied if there exists a winning strategy and not satisfied if none exists. Hence, in our example, the query control: A<> A.Goal will be marked satisfied. Moreover, the tool can output the corresponding strategy from the command line or let the user play against it in the simulator as shown in Fig. 2. For controllable games (here), Uppaal-Tiga plays the controller and the user is the opponent. The first transition is for the controller (Uppaal-Tiga), the second for the opponent (user), and the third is for the opponent but it will be countered by the controller (Uppaal-Tiga takes the transition to l 2 ), hence it is greyed the opponent cannot take this action. Applications. Uppaal-Tiga has recently been used for an industrial case study with the company Skov A/S specializing in climate control systems used for modern pig and poultry stables [DJLR07]. The synthesis capability of the tool has been combined with Simulink and Real-Time Workshop to provide a complete tool chain for synthesis, simulation, and automatic generation of production code. Uppaal-Tiga has also been recently applied to check for (bi-)simulation between timed automata and timed game automata [CDL07]. Given two timed

UPPAAL-Tiga: Time for Playing Games! 123 Fig. 2. View of the simulator when playing a strategy automata, the tool can check if one (bi-)simulates the other and similarly for timed game automata with applications for controller synthesis with partial observability. This technique has been applied to the compositional verification of the ZeroConf protocol. Our tool is being used in the AMAES project 2, a French national project on Advanced Methods for Autonomous Embedded Systems. Uppaal-Tiga has been successfully applied for controlling the autonomous robot Dala [LC04] in charge of taking pictures and transmitting them back to Earth during limited transmission windows. It is desirable in such control problems to optimize the moves to save power. 3 What Is New? Input Language. The new generation of Uppaal-Tiga inherits the enriched input language of Uppaal-4.0, with the only exception of priorities. The user has now access to C-like syntax to declare functions, custom types, etc. In addition, users can now define more complex winning conditions by means of logical formulas in the indicated subset of TCTL. Strategies. Uppaal-Tiga is able to generate a strategy for the controller, which ultimately corresponds to a control program, or a counter-strategy for the opponent as a proof that the controller cannot win. These strategies can now be output as decision graphs (hybrid BDD/CDD graphs). The discrete part of the states is represented as a BDD and the symbolic part as a CDD [LPWY99]. Finally, Uppaal-Tiga allows the user to play against the strategy in both the GUI 3 and CLI. Performances. Uppaal-Tiga is faster by several orders of magnitude on large examples (more than 1000 times faster) and consumes much less memory (100 2 http://www-verimag.imag.fr/ krichen/amaes/ 3 This is a major new feature for the next major release.

124 G. Behrmann et al. times less) than the first prototype presented at CONCUR 05. This comes from the full integration of the algorithm in the Uppaal-4.0 [BDH + 06] 4 framework. This brings to Uppaal-Tiga some of the reliability and performances achieved by years of Uppaal developments. Also improvements have been made on the DBM library, in particular on subtractions, partitions, federations, specific operations for timed games (e.g. the computation of controllable predecessors w.r.t. delay), and the essential operation of merging several difference bound matrices (DBMs) into one. 4 Conclusion Uppaal-Tiga is a new (and the only efficient) tool for controller synthesis for control problems modeled as timed game automata. Its performance and usability has greatly been improved by its integration with Uppaal-4.0. In a future version methods for preventing synthesis of strategies generating zeno behaviour will be provided. Also the computationally much more complex problem of synthesis under partial observability is under investigation. References [AD94] Alur, R., Dill, D.: A Theory of Timed Automata. Theoretical Computer Science 126(2), 183 235 (1994) [AMPS98] Asarin, E., Maler, O., Pnueli, A., Sifakis, J.: Controller Synthesis for Timed Automata. In: Proc. IFAC Symp. on System Structure & Control, pp. 469 474. Elsevier, Amsterdam (1998) [AT02] Altisen, K., Tripakis, S.: Tools for controller synthesis of timed systems. In: RT-TOOLS 02 (2002) [BCFL04] Bouyer, P., Cassez, F., Fleury, E., Larsen, K.G.: Optimal Strategies in Priced Timed Game Automata. In: Lodaya, K., Mahajan, M. (eds.) FSTTCS 2004. LNCS, vol. 3328, pp. 148 160. Springer, Heidelberg (2004) [BDH + 06] Behrmann, G., David, A., Håkansson, J., Hendriks, M., Larsen, K.G., Pettersson, P., Yi, W.: UPPAAL 4.0. In: Proc. of 3 rd Int. Conf. on the Quantitative Evaluation of Systems, pp. 125 126. IEEE Computer Society Press, Los Alamitos (2006) [CDF + 05] Cassez, F., David, A., Fleury, E., Larsen, K.G., Lime, D.: Efficient On-thefly Algorithms for the Analysis of Timed Games. In: Abadi, M., de Alfaro, L. (eds.) CONCUR 2005. LNCS, vol. 3653, pp. 66 80. Springer, Heidelberg (2005) [CDL07] Chatain, T., David, A., Larsen, K.: Playing Games with Games (Unpublished) [DAHM01] De Alfaro, L., Henzinger, T.A., Majumdar, R.: Symbolic Algorithms for Infinite-State Games. In: Larsen, K.G., Nielsen, M. (eds.) CONCUR 2001. LNCS, vol. 2154, pp. 536 550. Springer, Heidelberg (2001) [DJLR07] David, A., Jessen, J.J., Larsen, K.G., Rasmussen, J.I.: Guided Controller Synthesis for Climate Controller Using UPPAAL-TIGA. Unpublished 4 http://www.uppaal.com

UPPAAL-Tiga: Time for Playing Games! 125 [LC04] Lemai-Chenevier, S.: IxTeT-eXeC: planification, réparation de plan et contrôle d exécution avec gestion du temps et des ressources. PhD thesis, Institut National Polytechnique de Toulouse (2004) [LPWY99] Larsen, K.G., Pearson, J., Weise, C., Yi, W.: Clock Difference Diagrams. Nordic Journal of Computing 6(3), 271 298 (1999) [MPS95] Maler, O., Pnueli, A., Sifakis, J.: On the Synthesis of Discrete Controllers fortimedsystems.in:mayr,e.w.,puech,c.(eds.)stacs95.lncs, vol. 900, pp. 229 242. Springer, Heidelberg (1995)