The Algorithmics of Probabilistic Automata Weak Bisimulation Andrea Turrini Saarland University based on a joint work with Holger Hermanns.

Slides:



Advertisements
Similar presentations
An improved on-the-fly tableau construction for a real-time temporal logic Marc Geilen 12 July 2003 /e.
Advertisements

Aa Voiced Position: low, front KS09.
1 LP Duality Lecture 13: Feb Min-Max Theorems In bipartite graph, Maximum matching = Minimum Vertex Cover In every graph, Maximum Flow = Minimum.
Linear Programming Problem
Solving IPs – Cutting Plane Algorithm General Idea: Begin by solving the LP relaxation of the IP problem. If the LP relaxation results in an integer solution,
ECE Longest Path dual 1 ECE 665 Spring 2005 ECE 665 Spring 2005 Computer Algorithms with Applications to VLSI CAD Linear Programming Duality – Longest.
Linear Programming – Simplex Method
Timed Automata.
T h e G a s L a w s. T H E G A S L A W S z B o y l e ‘ s L a w z D a l t o n ‘ s L a w z C h a r l e s ‘ L a w z T h e C o m b i n e d G a s L a w z B.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2002 Lecture 8 Tuesday, 11/19/02 Linear Programming.
ESE601: Hybrid Systems Some tools for verification Spring 2006.
Luca de Alfaro Thomas A. Henzinger Ranjit Jhala UC Berkeley Compositional Methods for Probabilistic Systems.
Possibilistic and probabilistic abstraction-based model checking Michael Huth Computing Imperial College London, United Kingdom.
Succinct Approximations of Distributed Hybrid Behaviors P.S. Thiagarajan School of Computing, National University of Singapore Joint Work with: Yang Shaofa.
Generalizing Plans to New Environments in Relational MDPs
Discrete Abstractions of Hybrid Systems Rajeev Alur, Thomas A. Henzinger, Gerardo Lafferriere and George J. Pappas.
Hidden Markov Models Pairwise Alignments. Hidden Markov Models Finite state automata with multiple states as a convenient description of complex dynamic.
Math443/543 Mathematical Modeling and Optimization
Scheduling Using Timed Automata Borzoo Bonakdarpour Wednesday, April 13, 2005 Selected Topics in Algorithms and Complexity (CSE960)
Multiagent Planning with Factored MDPs Carlos Guestrin Daphne Koller Stanford University Ronald Parr Duke University.
Lecture 10: Support Vector Machines
Linear Programming – Max Flow – Min Cut Orgad Keller.
Optimization of Linear Problems: Linear Programming (LP) © 2011 Daniel Kirschen and University of Washington 1.
LP formulation of Economic Dispatch
Computational aspects of stability in weighted voting games Edith Elkind (NTU, Singapore) Based on joint work with Leslie Ann Goldberg, Paul W. Goldberg,
Linear Programming Operations Research – Engineering and Math Management Sciences – Business Goals for this section  Modeling situations in a linear environment.
Learning Letter Sounds Jack Hartman Shake, Rattle, and Read
A1A1 A4A4 A2A2 A3A3 Context-Specific Multiagent Coordination and Planning with Factored MDPs Carlos Guestrin Shobha Venkataraman Daphne Koller Stanford.
Complexity theory and combinatorial optimization Class #2 – 17 th of March …. where we deal with decision problems, finite automata, Turing machines pink.
Types of IP Models All-integer linear programs Mixed integer linear programs (MILP) Binary integer linear programs, mixed or all integer: some or all of.
0 A Toy Production Problem  How many units to produce from each product type in order to maximize the profit? ProductMan-PowerMachineProfit Type A3 h1.
Markov Decision Processes1 Definitions; Stationary policies; Value improvement algorithm, Policy improvement algorithm, and linear programming for discounted.
Linear Programming: Data Fitting Steve Gu Mar 21, 2008.
1 1 Slide © 2005 Thomson/South-Western Chapter 2 Introduction to Linear Programming n Linear Programming Problem n Problem Formulation n A Maximization.
Introduction to Linear Programming BSAD 141 Dave Novak.
Duality Theory  Every LP problem (called the ‘Primal’) has associated with another problem called the ‘Dual’.  The ‘Dual’ problem is an LP defined directly.
Review for E&CE Find the minimal cost spanning tree for the graph below (where Values on edges represent the costs). 3 Ans. 18.
Linear Programming – Simplex Method
Efficient Solution Algorithms for Factored MDPs by Carlos Guestrin, Daphne Koller, Ronald Parr, Shobha Venkataraman Presented by Arkady Epshteyn.
Lecture 81 Regional Automaton CS 5270 Lecture 8. Lecture 82 What We Need to Do Problem: –We need to analyze the timed behavior of a TTS. –The timed behavior.
1 Max 8X 1 + 5X 2 (Weekly profit) subject to 2X 1 + 1X 2  1000 (Plastic) 3X 1 + 4X 2  2400 (Production Time) X 1 + X 2  700 (Total production) X 1.
1 Outline:  Optimization of Timed Systems  TA-Modeling of Scheduling Tasks  Transformation of TA into Mixed-Integer Programs  Tree Search for TA using.
Optimization unconstrained and constrained Calculus part II.
MPRI 3 Dec 2007Catuscia Palamidessi 1 Why Probability and Nondeterminism? Concurrency Theory Nondeterminism –Scheduling within parallel composition –Unknown.
Robust Optimization and Applications Laurent El Ghaoui IMA Tutorial, March 11, 2003.
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
Stochastic Optimization
Calculus-Based Optimization AGEC 317 Economic Analysis for Agribusiness and Management.
LINEAR PROGRAMMING 3.4 Learning goals represent constraints by equations or inequalities, and by systems of equations and/or inequalities, and interpret.
Review for E&CE Find the minimal cost spanning tree for the graph below (where Values on edges represent the costs). 3 Ans. 18.
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
Operations Research.  Operations Research (OR) aims to having the optimization solution for some administrative problems, such as transportation, decision-making,
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
Krishnendu ChatterjeeFormal Methods Class1 MARKOV CHAINS.
Deciding Probabilistic Automata Weak Bisimulation in Polynomial Time
Solver Feature Excel’s KY San Jose State University Engineering 10.
Probabilistic Timed Automata
An Introduction to Linear Programming Pertemuan 4
Multiple Events.
Kalman Filtering: Control with Limited/Noisy Measurements
1.206J/16.77J/ESD.215J Airline Schedule Planning
ENGM 435/535 Optimization Adapting to Non-standard forms.
Linear Programming Problem
Lecture 19 Linear Program
Graphical solution A Graphical Solution Procedure (LPs with 2 decision variables can be solved/viewed this way.) 1. Plot each constraint as an equation.
Dr. Arslan Ornek DETERMINISTIC OPTIMIZATION MODELS
Lecture 22 Network Flow, Part 2
Calculus-Based Optimization AGEC 317
CSE 370 – Winter Sequential Logic-2 - 1
Complexity Theory: Foundations
Presentation transcript:

The Algorithmics of Probabilistic Automata Weak Bisimulation Andrea Turrini Saarland University based on a joint work with Holger Hermanns

Andrea Turrini Saarland University Probabilistic Automata (PA) s u hfhf tftf huhu n tutu flip retry coin 4/16 8/16 12/16 beep u beep f flash f flash u sms coin f vibrate sms

Andrea Turrini Saarland University Probabilistic Automata (PA) PA = (Q, q 0, E, H, D) Transition relation D   Q  (E   )  (Q) Internal (hidden) actions External actions: E  H =  Initial state: q 0  Q States   H H Disc

Andrea Turrini Saarland University Weak bisimulation p1-p Weak bisimulation between A 1 and A 2 Equiv. Rel. R  Q  Q Q = Q 1  Q 2, such that + bbb s0s0 s1s1 s2s2 t1t1 t3t3 s3s3 s4s4 r m   s, t, a,    s t RR a a  C    Q/R .   (C) =   (C)   R   [JL91]   m r

Andrea Turrini Saarland University Usual decision procedure Bisimulation(A 1, A 2 ) W := {Q 1  Q 2 } (C,  ) := FindSplit(W) while C   do W := Refine(W, , C) (C,  ) := FindSplit(W) return W + FindSplit(W) for each (s, , )  D 1  D 2 for each t  [s] W if there does not exist such that t and W return ([s] W,  ) return ( ,  )  r rm r m N N N N = max (| D 1  D 2 |, | Q 1  Q 2 |) ++ +

Andrea Turrini Saarland University Weak transition {beep: 5/16, flash: 7/16, vibrate: 4/16}{beep: 2/16, flash: 2/16, vibrate: 12/16} s u hfhf tftf huhu n tutu flip retry coin 4/16 8/16 12/16 beep u beep f flash f flash u coin f vibrate sms

Andrea Turrini Saarland University How many weak transitions? C 00 : bbbbb C 01 : bbbbt C 02 : bbbtb C 30 : ttttb C 31 : ttttt    

Andrea Turrini Saarland University Weak transition as Flow {beep: 5/16, flash: 7/16, vibrate: 4/16} s u hfhf tftf huhu n tutu flip retry coin 4/16 8/16 12/16 beep u beep f flash f flash u coin f vibrate sms

Andrea Turrini Saarland University Weak transition vs. Flow Problem s u hfhf tftf huhu n tutu flip retry coin 4/16 8/16 12/16 beep u beep f flash f flash u coin f vibrate {beep: 0/16, flash: 16/16, vibrate: 0/16} 16/16 sms

Andrea Turrini Saarland University Flow as Linear Programming Problem f 0 = 1 f 9 + f 12 = 5/16 f 10 + f 11 = 7/16 f 13 = 4/16 s u hfhf tftf huhu n tutu 8/16 beep u vibrate beep f flash f flash u f 8/16 12/164/16 0 ≤ f i ≤ c i (<  ) f 0 + f 8 = f 1 + f 4 f 1 = f 2 + f 3 f 2 = f 9 f 3 = f 10 f 4 = f 5 + f 6 + f 7 f 5 = f 8 + f 11 f 6 = f 12 f 7 = f 13 f1f1 f4f4 f0f0 f2f2 f3f3 f5f5 f6f6 f7f7 f8f8 f9f9 f 10 f 11 f 12 f 13 min  f i under constraints {beep: 5/16, flash: 7/16, vibrate: 4/16} f 2 = 8/16(f 2 + f 3 ) f 3 = 8/16(f 2 + f 3 ) f 5 = 12/16(f 5 + f 6 ) f 6 = 4/16(f 5 + f 6 ) beep flash vibrate Complexity: #variables  O(|Q|  |D|) #constraints  O(|Q|  |D|) Polynomial! s 1 8/16 4/16 1/16 3/16 0 ✓

Andrea Turrini Saarland University Usual decision procedure Bisimulation(A 1, A 2 ) W := {Q 1  Q 2 } (C,  ) := FindSplit(W) while C   do W := Refine(W, , C) (C,  ) := FindSplit(W) return W + FindSplit(W) for each (s, ,  )  D 1  D 2 for each t  [s] W if there does not exist  such that t  and  W  return ([s] W,  ) return ( ,  )  N N N N = max (| D 1  D 2 |, | Q 1  Q 2 |) ++ + Polynomial Polynomial!

Andrea Turrini Saarland University From bisimulation to minimal automaton A = (Q, q 0, E, H, D) QA = ( W, [q 0 ] W, E, H, D W ) mA = ( W, [q 0 ] W, E, H, D W ) Quotienting Transition reduction zeroconf-nt: |Q| = 670, |D| = 827 zeroconf-nt: |W| = 41, |D W | = 55 zeroconf-nt: |W| = 41, |D W | = 52

Andrea Turrini Saarland University Adding costs to PA c h0h0 h1h1 h n-1 hnhn p 1-p trtr … p trtr p trtr ds 11 r2r2 r2r2 r2r2 r2r2 Overall cost: 1 + nr 2 /p + 1 p 1-p trtr C(csh 0 ) = 1 x 1 C(h 0 t r h 1 ) = r 2 x p C(h 0 t r h 0 t r h 1 ) = (r 2 + r 2 ) x (1-p) x p C(h 0 t r h 0 t r h 0 t r h 1 ) = (r 2 + r 2 + r 2 ) x (1-p) x (1-p) x p C((h 0 t r ) i h 1 ) = (i + 1) x r 2 x (1-p) i x p r 2 / p

Andrea Turrini Saarland University Adding costs to PA c h0h0 h1h1 h n-1 hnhn p 1-p trtr … p trtr p trtr ds 11 r2r2 r2r2 r2r2 r2r2 Minimum cost equals optimal LP solution p 1-p trtr c h0h0 h1h1 h n-1 hnhn p 1-p … p p 1 1 r2r2 r2r2 r2r2 r2r2 p r2r2 r2r2 r2r2 r2r2 c (1-p) / p Polynomial!

Andrea Turrini Saarland University Nondeterminism and Cost PA /p  cost  /p c h0h0 h1h1 h3h3 h4h4 p 1-p t5t5 h2h2 p t5t5 p t5t5 ds p t5t5 q1q1 q3q3 q4q4 p t4t4 q2q2 p t4t4 p t4t q5q5 p t4t o o 0 0 o 0 o 0

Andrea Turrini Saarland University Comparing Cost PA  /p /p w k0k0 k1k1 k3k3 k4k4 p 1-p t4t4 k2k2 p t4t4 p t4t4 ds p t4t4 k5k5 p t4t c h0h0 h1h1 h3h3 h4h4 p t5t5 h2h2 p t5t5 p t5t5 ds p t5t5 q1q1 q3q3 q4q4 p t4t4 q2q2 p t4t4 p t4t q5q5 p t4t o o 0 0 o 0 o 0

Andrea Turrini Saarland University Minor Cost Weak Bisimulation

Andrea Turrini Saarland University Comparing Cost PA  /p /p w k0k0 k1k1 k3k3 k4k4 p 1-p t4t4 k2k2 p t4t4 p t4t4 ds p t4t4 k5k5 p t4t c h0h0 h1h1 h3h3 h4h4 p t5t5 h2h2 p t5t5 p t5t5 ds p t5t5 q1q1 q3q3 q4q4 p t4t4 q2q2 p t4t4 p t4t q5q5 p t4t o o 0 0 o 0 o 0

Andrea Turrini Saarland University Conclusion Weak transitions as LP problems Polynomial decision procedure for PA weak probabilistic bisimulation Minimal automaton Cost decorated PA Prototypical implementation Extensions of LP approach – Specific weak transitions, hyper-transitions, restricted transitions, equivalence matching, … – MDP multi-objective reachability – Interval multi-objective reachability – Multi-objective reachability in interval models Base for other models: Markov Automata

Andrea Turrini Saarland University Decision procedure in practice

Andrea Turrini Saarland University Usual decision procedure Bisimulation(A 1, A 2 ) W := {Q 1  Q 2 } (C,  ) := FindSplit(W) while C   do W := Refine(W, , C) (C,  ) := FindSplit(W) return W + FindSplit(W) for each (s, , )  D 1  D 2 for each t  [s] W if there does not exist such that t and W return ([s] W,  ) return ( ,  )  r rm r m N N N N = max (| D 1  D 2 |, | Q 1  Q 2 |) ++ +

Andrea Turrini Saarland University How many weak transitions? s u hfhf tftf huhu n tutu flip retry coin 4/16 8/16 12/16 beep u beep f flash f flash u coin f vibrate sms

Andrea Turrini Saarland University How many weak transitions? C 00 : bbbbb C 01 : bbbbt C 02 : bbbtb C 30 : ttttb C 31 : ttttt    

Andrea Turrini Saarland University Usual decision procedure Bisimulation(A 1, A 2 ) W := {Q 1  Q 2 } (C,  ) := FindSplit(W) while C   do W := Refine(W, , C) (C,  ) := FindSplit(W) return W + FindSplit(W) for each (s, ,  )  D 1  D 2 for each t  [s] W if there does not exist  such that t  and  W  return ([s] W,  ) return ( ,  )  N N N N = max (| D 1  D 2 |, | Q 1  Q 2 |) ++ + Polynomial Polynomial!

Andrea Turrini Saarland University From bisimulation to minimal automaton A = (Q, q 0, E, H, D) QA = ( W, [q 0 ] W, E, H, D W ) mA = ( W, [q 0 ] W, E, H, D W ) Quotienting Transition reduction zeroconf-nt: |Q| = 670, |D| = 827 zeroconf-nt: |W| = 41, |D W | = 55 zeroconf-nt: |W| = 41, |D W | = 52

Andrea Turrini Saarland University Weak transition as SMT problem f 0 = 1 f 9 + f 12 = 5/16 f 10 + f 11 = 7/16 f 13 = 4/16 f 2 = 8/16(f 2 + f 3 ) f 3 = 8/16(f 2 + f 3 ) f 5 = 12/16(f 5 + f 6 ) f 6 = 4/16(f 5 + f 6 ) 0 ≤ f i ≤ c i (<  ) f 0 + f 8 = f 1 + f 4 f 1 = f 2 + f 3 f 2 = f 9 f 3 = f 10 f 4 = f 5 + f 6 + f 7 f 5 = f 8 + f 11 f 6 = f 12 f 7 = f 13 min  f i under constraints assert declare-fun f i () Real