Solving Timed Games with Variable Observations: Proof of Concept Peter Bulychev Franck Cassez Alexandre David Kim G. Larsen Jean-François Raskin Pierre-Alain.

Slides:



Advertisements
Similar presentations
2.6. B OUNDING V OLUME H IERARCHIES Overview of different forms of bounding volume hierarchy.
Advertisements

UCb Kim Guldstrand Larsen Symbolic Model Checking …and Verification Options How UPPAAL really works & How to make UPPAAL really work.
UCb Symbolic Reachability and Beyound or how UPPAAL really works Kim Guldstrand Larsen
How SAS implements structured programming constructs
50.530: Software Engineering
CS 267: Automated Verification Lecture 8: Automata Theoretic Model Checking Instructor: Tevfik Bultan.
Greta YorshEran YahavMartin Vechev IBM Research. { ……………… …… …………………. ……………………. ………………………… } P1() Challenge: Correct and Efficient Synchronization { ……………………………
Greta YorshEran YahavMartin Vechev IBM Research. { ……………… …… …………………. ……………………. ………………………… } T1() Challenge: Correct and Efficient Synchronization { ……………………………
1 Fault Diagnosis for Timed Automata Stavros Tripakis VERIMAG.
Types of Logic Circuits
Knowledge Based Synthesis of Control for Distributed Systems Doron Peled.
50.530: Software Engineering Sun Jun SUTD. Week 10: Invariant Generation.
Game-theoretic approach to the simulation checking problem Peter Bulychev Vladimir Zakharov Lomonosov Moscow State University.
UPPAAL Introduction Chien-Liang Chen.
Timed Automata.
1 Partial Order Reduction. 2 Basic idea P1P1 P2P2 P3P3 a1a1 a2a2 a3a3 a1a1 a1a1 a2a2 a2a2 a2a2 a2a2 a3a3 a3a3 a3a3 a3a3 a1a1 a1a1 3 independent processes.
Nir Piterman Department of Computer Science TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAA Bypassing Complexity.
1 Midterm I review Reading: Chapters Test Details In class, Wednesday, Feb. 25, :10pm-4pm Comprehensive Closed book, closed notes.
Peter Bulychev Alexandre David Kim G. Larsen Marius Mikucionis TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAA A.
Inferring Synchronization under Limited Observability Martin Vechev Eran Yahav Greta Yorsh IBM T.J. Watson Research Center.
Sequential Circuit Design
Convertibility Verification and Converter Synthesis: Two Faces of the Same Coin Jie-Hong Jiang EE249 Discussion 11/21/2002 Passerone et al., ICCAD ’ 02.
11/11/2009Software Design Laboratory1 The solution to a cyclic relaxation problem Edsger W. Dijkstra Presenter Aly Farahat Ph.D. Student Software Design.
Approaches to Reactive System Synthesis J.-H. Roland Jiang.
Data Flow Analysis Compiler Design Nov. 3, 2005.
Sanjit A. Seshia and Randal E. Bryant Computer Science Department
Synthesis of Interface Specifications for Java Classes Rajeev Alur University of Pennsylvania Joint work with P. Cerny, G. Gupta, P. Madhusudan, W. Nam,
Self-Stabilization An Introduction Aly Farahat Ph.D. Student Automatic Software Design Lab Computer Science Department Michigan Technological University.
EE291E - UC BERKELEY EE291E: Hybrid Systems T. John Koo and S. Shankar Sastry Department of EECS University of California at Berkeley Spring 2002
View from 30,000 feet and Introduction to Graph Problems Lecture 19 CS 312.
Lazy Abstraction Tom Henzinger Ranjit Jhala Rupak Majumdar Grégoire Sutre.
Finite probability space set  (sample space) function P:  R + (probability distribution)  P(x) = 1 x 
Applying Edge Partitioning to SPFD's 1 Applying Edge Partitioning to SPFD’s 219B Project Presentation Trevor Meyerowitz Mentor: Subarna Sinha Professor:
Chapter 8 Asynchronous System Model by Mikhail Nesterenko “Distributed Algorithms” by Nancy A. Lynch.
Domain testing Tor Stålhane. Domain testing revisited We have earlier looked at domain testing as a simple strategy for selecting test cases. We will.
Modeling Process CSCE 668Set 14: Simulations 2 May be several algorithms (processes) runs on each processor to simulate the desired communication system.
Transformation of Timed Automata into Mixed Integer Linear Programs Sebastian Panek.
DECIDABILITY OF PRESBURGER ARITHMETIC USING FINITE AUTOMATA Presented by : Shubha Jain Reference : Paper by Alexandre Boudet and Hubert Comon.
Minimization of Symbolic Automata Presented By: Loris D’Antoni Joint work with: Margus Veanes 01/24/14, POPL14.
CSC312 Automata Theory Lecture # 19 Chapter # 8 by Cohen Finite Automata with Output.
Space Complexity. Reminder: P, NP classes P NP is the class of problems for which: –Guessing phase: A polynomial time algorithm generates a plausible.
Yang Cai Oct 08, An overview of today’s class Basic LP Formulation for Multiple Bidders Succinct LP: Reduced Form of an Auction The Structure of.
Inferring Synchronization under Limited Observability Martin Vechev, Eran Yahav, Greta Yorsh IBM T.J. Watson Research Center (work in progress)
Honors Track: Competitive Programming & Problem Solving Optimization Problems Kevin Verbeek.
A Problem That Is Complete for PSPACE (Polynomial Space) BY TEJA SUDHA GARIGANTI.
Intro to Planning Or, how to represent the planning problem in logic.
6.853: Topics in Algorithmic Game Theory Fall 2011 Constantinos Daskalakis Lecture 22.
The decidability of Presburger Arithmetic By Guillermo Guillen 04/13/05 Dr. Smith COT 6421 FIU Spring 2005.
Chapter 8 Asynchronous System Model by Mikhail Nesterenko “Distributed Algorithms” by Nancy A. Lynch.
Learning Universally Quantified Invariants of Linear Data Structures Pranav Garg 1, Christof Loding, 2 P. Madhusudan 1 and Daniel Neider 2 1 University.
More on Logic Today we look at the for loop and then put all of this together to look at some more complex forms of logic that a program will need The.
Space Complexity. Reminder: P, NP classes P is the class of problems that can be solved with algorithms that runs in polynomial time NP is the class of.
1 Lexical Analysis Uses formalism of Regular Languages Uses formalism of Regular Languages Regular Expressions Regular Expressions Deterministic Finite.
Symbolic Model Checking of Software Nishant Sinha with Edmund Clarke, Flavio Lerda, Michael Theobald Carnegie Mellon University.
A Review of Software Testing - P. David Coward
RankSQL: Query Algebra and Optimization for Relational Top-k Queries
Learning Invariants using Decision Trees and Implication Counterexamples Pranav Garg Amazon India.
Sequential Flexibility
Task: It is necessary to choose the most suitable variant from some set of objects by those or other criteria.
The Multiple Dimensions of Mean-Payoff Games
Intro to Theory of Computation
Alternating tree Automata and Parity games
FINISH a b c d e f g h i j k l m n o p q r s t u v w x y z a b c d e f
Memoryless Determinacy of Parity Games
Discrete Controller Synthesis
FINISH a b c d e f g h i j k l m n o p q r s t u v w x y z a b c d e f
Decidability continued….
  Homework 6 (June 20) Material covered: Slides
LECTURE 2-9 PSPACE-Complete
Lexical Analysis Uses formalism of Regular Languages
Presentation transcript:

Solving Timed Games with Variable Observations: Proof of Concept Peter Bulychev Franck Cassez Alexandre David Kim G. Larsen Jean-François Raskin Pierre-Alain Reynier

GASICS Workshop2 Timed Game Automata Timed Game Automata is a Timed Automata where transitions are split into controllable and uncontrollable We support safety objectives: control: AG (not Bad) Memoryless strategy: state  action UPPAAL Tiga can be used to solve safety timed games a b

GASICS Workshop3 Timed Game Automata x≤1: a True: DELAY Strategy x≤1: b True: DELAY control: AG (not Bad) a b

GASICS Workshop4 Controller synthesis with partial observation Consider that controller doesn’t have full information about the current state of a system Observation is a valuation of a finite number of state-based boolean predicates (sensors) We allow predicates of the form: (L1 or L2 or L3) and (1≤x<2) Controller makes its decisions based on history of the observations seen so far Controller sees only changes on observations => stuttering-invariant strategy

GASICS Workshop5 Controller synthesis with partial observation: the algorithm Partition the state-space w.r.t. values of the predicates. Predicates p 1, p 2 Losing is observable. p1p2p1p2  p 1  p 2 p 1  p 2 p1p2p1p2 LOSING a a a b DELAY b

Running example (LH boxes) GASICS Workshop6 Possible sets of observations: {H, L} {H, L, y≥3} control: AG (not Bad) {y ≥ 1} {H, L, y≥5} full information {H, L, y≥1} EJECT RESET

GASICS Workshop7 Controller synthesis with partial observation: the algorithm Partition the state-space w.r.t. observations. Observations O1 O2 O3. Winning/losing is observable. Algorithm, described in F. Cassez et al., 2007: Symbolic On-the-fly Subset construction-based Implemented in UPPAAL Tiga

Running example (LH boxes) GASICS Workshop8 {} control: AG (not Bad) Available observations: {H, L, y ≥ 5} {H} {} DELAY {y ≥ 5} DELAY EJECT {}{y ≥ 5} DELAY {L} {} DELAY {y ≥ 5} DELAY EJECT E0,x==y==0 H,x==y==0 E1 \/ E2,x==y==0E1 \/ E2,x==y==5 RESET E1 \/ E2,x==5, y==0 E1 \/ E2,x==10, y==5 H,x==y==0 E3 \/ E4,x==y==0E3 \/ E4,x==y==5

Problem statement Assume a finite set of available sensors and each sensor has some cost We want to synthesize a controller that will achieve its goal by using a set of sensors with a minimal cost Input: Timed Game Automata A Safety propertyφ A set of predicates Pred = {p 1, …, p n } Cost function ω = {p 1 ->c 1, …, p n ->c n } Goal: To find a set of predicates P with a minimal total cost such that A,P|=φ is true GASICS Workshop9

Basic algorithm Consider a lattice of all possible predicates sets GASICS Workshop10 {φ}{φ} {φ} U Pred

Basic algorithm 1. Check if φ is controllable on A with full information GASICS Workshop11 {φ}{φ} {φ} U Pred Full information

Basic algorithm 1. Check if φ is controllable on A with full information 2. Check A,P|=φ for some set of predicates P GASICS Workshop12 {φ}{φ} {φ} U Pred P

Basic algorithm 1. Check if φ is controllable on A with full information 2. Check A,P|=φ for some set of predicates P 3. If A,P|=φ is true, then we remove from further consideration all sets P’ s.t. P ⊆ P’ GASICS Workshop13 {φ}{φ} {φ} U Pred P

Basic algorithm GASICS Workshop14 {φ}{φ} {φ} U Pred 1. Check if φ is controllable on A with full information 2. Check A,P|=φ for some set of predicates P 3. If A,P|=φ is true, then we remove from further consideration all sets P’ s.t. P ⊆ P’ remove from further consideration all sets P’ s.t. ω(P’) ≥ ω(P) P

Basic algorithm 1. Check if φ is controllable on A with full information 2. Check A,P|=φ for some set of predicates P 3. If A,P|=φ is true, then we remove from further consideration all sets P’ s.t. P ⊆ P’ remove from further consideration all sets P’ s.t. ω(P’) ≥ ω(P) 4. Otherwise, we remove from further consideration all sets P’ s.t. P’ ⊆ P GASICS Workshop15 {φ}{φ} {φ} U Pred

Basic algorithm The set of possible observation sets is finite, so the algorithm will converge GASICS Workshop16 {φ}{φ} {φ} U Pred

Basic algorithm Optimizations: Which exploration strategy to use? Random Top-bottom Bottom-top Midpoint What information to reuse? Losing states from below Winning states from above State space from below GASICS Workshop17 {φ}{φ} {φ} U Pred

Basic algorithm Optimizations: Which exploration strategy to use? Random Top-bottom Bottom-top Midpoint What information to reuse? Losing states from below Winning states from above State space from below GASICS Workshop18 {φ}{φ} {φ} U Pred

Basic algorithm Optimizations: Which exploration strategy to use? Random Top-bottom Bottom-top Midpoint What information to reuse? Losing states from below Winning states from above State space from below GASICS Workshop19 {φ}{φ} {φ} U Pred

Basic algorithm Optimizations: Which exploration strategy to use? Random Top-bottom Bottom-top Midpoint What information to reuse? Losing states from below Winning states from above State space from below GASICS Workshop20 {φ}{φ} {φ} U Pred

Basic algorithm Optimizations: Which exploration strategy to use? Random Top-bottom Bottom-top Midpoint What information to reuse? Losing states from below Winning states from above State space from below GASICS Workshop21 {φ}{φ} {φ} U Pred

Basic algorithm Optimizations: Which exploration strategy to use? Random Top-bottom Bottom-top Midpoint What information to reuse? Losing states from below Winning states from above State space from below GASICS Workshop22 {φ}{φ} {φ} U Pred

State space reusage GASICS Workshop23 {φ}{φ} {φ} U Pred a a a b a b L 1, x≥4 L 2, x≥5 L 3, x<2 L 4, x≥8 L 5, x≥7 L 6, x<2 (L 1, x≥4) ∨ (L 2, x≥5) ∨ (L 3, x<2) (L 4, x≥8) ∨ (L 5, x≥7) ∨ (L 6, x<2) L 6, x<2

State space reusage GASICS Workshop24 {φ}{φ} {φ} U Pred a a a b a b L 1, x≥4 L 2, x≥5 L 3, x<2 L 4, x≥8 L 5, x≥7 L 6, x<2 (L 1, x≥4) ∨ (L 2, x≥5) ∨ (L 3, x<2) (L 4, x≥8) ∨ (L 5, x≥7) ∨ (L 6, x<2) L 6, x<2

Implementation details 25 Efficient Stable Ready for industry applications Has a nice GUI Easy to prototype new very specific features

Python framework for timed automata manipulation PyDBM – Python wrapper for UPPAAL DBM library pyuppaal – syntactic parser of UPPAAL models dbmpyuppaal – parses a model using pyuppaal and replaces all guards and invariants by their DBMs opaal – model checker for timed automata More information at: GASICS Workshop26

Results GASICS Workshop27 EJECT RESET Possible observations and their cost: {H -> 1, L ->1, y≥1 -> 10, y≥2 -> 9, …, y≥10 -> 1} Optimal solution: {H, y≥5}

Results (average running time) GASICS Workshop28

Questions? GASICS Workshop29