Probabilistic Verification of Discrete Event Systems using Acceptance Sampling Håkan L. S. Younes Carnegie Mellon University.

Slides:



Advertisements
Similar presentations
Chapter 7 Hypothesis Testing
Advertisements

Introduction to Hypothesis Testing
How Fast and Fat Is Your Probabilistic Model Checker? an experimental performance comparison David N. Jansen 3,1, Joost-Pieter Katoen 1,2, Marcel Oldenkamp.
CS 267: Automated Verification Lecture 8: Automata Theoretic Model Checking Instructor: Tevfik Bultan.
Introduction to Theorem Proving
SAT-Based Planning Using Propositional SAT- Solvers to Search for Plans.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
ECE Synthesis & Verification - L271 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Systems Model Checking basics.
1 Combinational Logic Design&Analysis. 2 Introduction We have learned all the prerequisite material: – Truth tables and Boolean expressions describe functions.
Situation Calculus for Action Descriptions We talked about STRIPS representations for actions. Another common representation is called the Situation Calculus.
7 Chapter Hypothesis Testing with One Sample
Probabilistic Verification of Discrete Event Systems using Acceptance Sampling Håkan L. S. YounesReid G. Simmons Carnegie Mellon University.
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.
Hypothesis Testing A hypothesis is a claim or statement about a property of a population (in our case, about the mean or a proportion of the population)
1 Temporal Claims A temporal claim is defined in Promela by the syntax: never { … body … } never is a keyword, like proctype. The body is the same as for.
6/14/991 Symbolic verification of systems with state machines David L. Dill Jeffrey Su Jens Skakkebaek Computer System Laboratory Stanford University.
Statistical Probabilistic Model Checking Håkan L. S. Younes Carnegie Mellon University.
Ymer: A Statistical Model Checker Håkan L. S. Younes Carnegie Mellon University.
Probabilistic Verification of Discrete Event Systems Håkan L. S. Younes Reid G. Simmons (initial work performed at HTC, Summer 2001)
1 Discrete Structures CS 280 Example application of probability: MAX 3-SAT.
Probabilistic Verification of Discrete Event Systems Håkan L. S. Younes.
8-2 Basics of Hypothesis Testing
272: Software Engineering Fall 2012 Instructor: Tevfik Bultan Lecture 4: SMT-based Bounded Model Checking of Concurrent Software.
A Framework for Planning in Continuous-time Stochastic Domains Håkan L. S. Younes Carnegie Mellon University David J. MuslinerReid G. Simmons Honeywell.
Policy Generation for Continuous-time Stochastic Domains with Concurrency Håkan L. S. YounesReid G. Simmons Carnegie Mellon University.
Chapter Nine: Evaluating Results from Samples Review of concepts of testing a null hypothesis. Test statistic and its null distribution Type I and Type.
Software Systems Verification and Validation Laboratory Assignment 3
Copyright © 2010, 2007, 2004 Pearson Education, Inc Lecture Slides Elementary Statistics Eleventh Edition and the Triola Statistics Series by.
Lecture Slides Elementary Statistics Twelfth Edition
Hypothesis Tests In statistics a hypothesis is a statement that something is true. Selecting the population parameter being tested (mean, proportion, variance,
Sections 8-1 and 8-2 Review and Preview and Basics of Hypothesis Testing.
Planning with Concurrency in Continuous-time Stochastic Domains (thesis proposal) Håkan L. S. Younes Thesis Committee: Reid G. Simmons (chair) Geoffrey.
Planning and Verification for Stochastic Processes with Asynchronous Events Håkan L. S. Younes Carnegie Mellon University.
Overview Basics of Hypothesis Testing
Slide Slide 1 Chapter 8 Hypothesis Testing 8-1 Overview 8-2 Basics of Hypothesis Testing 8-3 Testing a Claim about a Proportion 8-4 Testing a Claim About.
Copyright 2013, 2010, 2007, Pearson, Education, Inc. Section 3.7 Switching Circuits.
110/19/2015CS360 AI & Robotics AI Application Areas  Neural Networks and Genetic Algorithms  These model the structure of neurons in the brain  Humans.
Hypothesis Tests In statistics a hypothesis is a statement that something is true. Selecting the population parameter being tested (mean, proportion, variance,
Logic Disjunction A disjunction is a compound statement formed by combining two simple sentences using the word “OR”. A disjunction is true when at.
1 Probabilistic Model Checking of Systems with a Large State Space: A Stratified Approach Shou-pon Lin Advisor: Nicholas F. Maxemchuk Department of Electrical.
Survey Propagation. Outline Survey Propagation: an algorithm for satisfiability 1 – Warning Propagation – Belief Propagation – Survey Propagation Survey.
1 Chapter 8 Hypothesis Testing 8.2 Basics of Hypothesis Testing 8.3 Testing about a Proportion p 8.4 Testing about a Mean µ (σ known) 8.5 Testing about.
Slide Slide 1 Copyright © 2007 Pearson Education, Inc Publishing as Pearson Addison-Wesley. Overview.
Extending PDDL to Model Stochastic Decision Processes Håkan L. S. Younes Carnegie Mellon University.
ECE-7000: Nonlinear Dynamical Systems Overfitting and model costs Overfitting  The more free parameters a model has, the better it can be adapted.
Thinking Mathematically
Chapter 2 Logic 2.1 Statements 2.2 The Negation of a Statement 2.3 The Disjunction and Conjunction of Statements 2.4 The Implication 2.5 More on Implications.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
SOFTWARE TESTING. Introduction Software Testing is the process of executing a program or system with the intent of finding errors. It involves any activity.
Probabilistic Verification of Discrete Event Systems Håkan L. S. Younes.
1 Section 8.2 Basics of Hypothesis Testing Objective For a population parameter (p, µ, σ) we wish to test whether a predicted value is close to the actual.
Håkan L. S. YounesDavid J. Musliner Carnegie Mellon UniversityHoneywell Laboratories Probabilistic Plan Verification through Acceptance Sampling.
Slide Slide 1 Hypothesis Testing 8-1 Overview 8-2 Basics of Hypothesis Testing Chapter 8.
Chapter 7. Propositional and Predicate Logic
OPERATING SYSTEMS CS 3502 Fall 2017
Statistical probabilistic model checking
AND.
Review and Preview and Basics of Hypothesis Testing
Truth Tables and Equivalent Statements
(CSC 102) Discrete Structures Lecture 2.
When we free ourselves of desire,
Chapter 9: Hypothesis Testing
Partly Verifiable Signals (c.n.)
Partly Verifiable Signals (c.n.)
Statistical Model-Checking of “Black-Box” Probabilistic Systems VESTA
On Statistical Model Checking of Stochastic Systems
Discrete Controller Synthesis
Chapter 7. Propositional and Predicate Logic
Section 3.7 Switching Circuits
Statistical Probabilistic Model Checking
Presentation transcript:

Probabilistic Verification of Discrete Event Systems using Acceptance Sampling Håkan L. S. Younes Carnegie Mellon University

Introduction Verify properties of continuous-time discrete event systems Model independent approach Time-bounded probabilistic properties expressed using CSL Acceptance sampling Guaranteed error bounds

Motivating Example Switch Backbone Switch Left clusterRight cluster L1L1 L2L2 L3L3 R3R3 R2R2 R1R1 Dependable workstation cluster Components may fail at any point in time Failed components can be repaired

Motivating Example Switch Backbone Switch Left clusterRight cluster L1L1 L2L2 L3L3 R3R3 R2R2 R1R1 Property of interest: Probability at most 0.1 that QoS drops below minimum within 50 time units

Motivating Example Switch Backbone Switch Left clusterRight cluster L1L1 L2L2 L3L3 R3R3 R2R2 R1R1 all working

Motivating Example Switch Backbone Switch Left clusterRight cluster L1L1 L2L2 L3L3 R3R3 R2R2 R1R1 all workingL 2 failed L 2 fails 3.6

Motivating Example Switch Backbone Switch Left clusterRight cluster L1L1 L2L2 L3L3 R3R3 R2R2 R1R1 all workingL 2 failedrepairing L 2 L 2 failsrepair L

Motivating Example Switch Backbone Switch Left clusterRight cluster L1L1 L2L2 L3L3 R3R3 R2R2 R1R1 all workingL 2 failedrepairing L 2 switch failed L 2 failsrepair L 2 right switch fails

Motivating Example Switch Backbone Switch Left clusterRight cluster L1L1 L2L2 L3L3 R3R3 R2R2 R1R1 all workingL 2 failedrepairing L 2 switch failed repairing L 2 switch failed L 2 failsrepair L 2 right switch failsL 2 repaired

Sample Execution Paths all workingL 2 failedrepairing L 2 switch failed repairing L 2 switch failed L 2 failsrepair L 2 right switch failsL 2 repaired all workingL 1 failedrepairing L 2 bb failedall working L 1 failsrepair L 2 L 1 repairedbackbone fails

Properties of Interest Time-bounded probabilistic properties “The probability is at most 0.1 that QoS drops below minimum within 50 time units”

Properties of Interest Time-bounded probabilistic properties “The probability is at most 0.1 that QoS drops below minimum within 50 time units” ¬Pr ≥0.1 (true U ≤50 ¬Minimum QoS) CSL formula:

Continuous Stochastic Logic (CSL) State formulas Truth value is determined in a single state Path formulas Truth value is determined over an execution path

State Formulas Standard logic operators: ¬ ,  1   2 … Probabilistic operator: Pr ≥  (  ) True iff probability is at least  that  holds

Path Formulas Until:  1 U ≤t  2 Holds iff  2 becomes true in some state along the execution path before time t, and  1 is true in all prior states

Verifying Path Formulas true U ≤50 ¬Minimum QoS True! all workingL 2 failedrepairing L 2 switch failed repairing L 2 switch failed repairing L 2 switch failed L 2 failsrepair L 2 right switch failsL 2 repaired ≤50

Verifying Path Formulas true U ≤50 ¬Minimum QoS False! all workingL 1 failedrepairing L 2 bb failedall working L 1 failsrepair L 2 L 1 repairedbackbone fails ≥50

Verifying Probabilistic Properties “The probability is at least  that  ” Symbolic Methods Pro: Exact solution Con: Works only for restricted class of systems Sampling Pro: Works for any system that can be simulated Con: Uncertainty in correctness of solution

Our Approach Use simulation to generate sample execution paths Use sequential acceptance sampling to verify probabilistic properties

Error Bounds Probability of false negative: ≤  We say that  is false when it is true Probability of false positive: ≤  We say that  is true when it is false

Acceptance Sampling Hypothesis: Pr ≥  (  )

Performance of Test Actual probability of  holding Probability of accepting Pr ≥  (  ) as true  1 –  

Ideal Performance Actual probability of  holding Probability of accepting Pr ≥  (  ) as true  1 –   False negatives False positives

Actual Performance  –  +  Indifference region Actual probability of  holding Probability of accepting Pr ≥  (  ) as true  1 –   False negatives False positives

Sequential Acceptance Sampling Hypothesis: Pr ≥  (  ) True, false, or another sample?

Graphical Representation of Sequential Test Number of samples Number of positive samples

Graphical Representation of Sequential Test We can find an acceptance line and a rejection line given , , , and  Reject Accept Continue sampling Number of samples Number of positive samples A , , ,  (n) R , , ,  (n)

Graphical Representation of Sequential Test Reject hypothesis Reject Accept Continue sampling Number of samples Number of positive samples

Graphical Representation of Sequential Test Accept hypothesis Reject Accept Continue sampling Number of samples Number of positive samples

Verifying Probabilistic Properties Verify Pr ≥  (  ) with error bounds  and  Generate sample execution paths using simulation Verify  over each sample execution path If  is true, then we have a positive sample If  is false, then we have a negative sample Use sequential acceptance sampling to test the hypothesis Pr ≥  (  )

Verification of Nested Probabilistic Statements Suppose , in Pr ≥  (  ), contains probabilistic statements Error bounds  ’ and  ’ when verifying 

Verification of Nested Probabilistic Statements Suppose , in Pr ≥  (  ), contains probabilistic statements True, false, or another sample?

Modified Test Find an acceptance line and a rejection line given , , , ,  ’, and  ’: Reject Accept Continue sampling With  ’ and  ’ = 0 Number of samples Number of positive samples A , , ,  (n) R , , ,  (n)

Modified Test Find an acceptance line and a rejection line given , , , ,  ’, and  ’: With  ’ and  ’ > 0 Reject Accept Continue sampling Number of samples Number of positive samples

Modified Test Find an acceptance line and a rejection line given , , , ,  ’, and  ’: Reject Accept Continue sampling Number of samples Number of positive samples A  ’,  ’, ,  (n) R  ’,  ’, ,  (n)  ’ –  ’ = 1 – (1 – (  –  ))(1 –  ’)  ’ +  ’ = (  +  )(1 –  ’)

Verification of Negation To verify ¬  with error bounds  and  Verify  with error bounds  and 

Verification of Conjunction Verify  1   2  …   n with error bounds  and  Verify each  i with error bounds  and  /n

Verification of Path Formulas To verify  1 U ≤t  2 with error bounds  and  Convert to disjunction  1 U ≤t  2 holds if  2 holds in the first state, or if  2 holds in the second state and  1 holds in all prior states, or …

More on Verifying Until Given  1 U ≤t  2, let n be the index of the first state more than t time units away from the current state Disjunction of n conjunctions c 1 through c n, each of size i Simplifies if  1 or  2, or both, do not contain any probabilistic statements

Sampling-Based vs. Symbolic Methods Sampling-based methods… use less memory scale better with size of state space adapt to difficulty of problem (sequential) Symbolic methods… give exact results handle time-unbounded and steady-state properties

Dependable Workstation Cluster (results) − Size of state space Verification time (seconds) ¬Pr ≥0.1 (true U ≤t ¬Min QoS)  =  =10 −2  =10 −2

Dependable Workstation Cluster (results) Verification time (seconds) t  =  =10 −2  =10 −2 ¬Pr ≥0.1 (true U ≤t ¬Min QoS)

Tandem Queuing Network M/Cox 2 /1 queue sequentially composed with M/M/1 queue Each queue has capacity n State space of size O(n 2 ) 11 22 a …… 1−a 

Tandem Queuing Network (property) When empty, probability is less than 0.5 that system becomes full within t time units: ¬Pr ≥0.5 (true U ≤t full) in state “empty” …………

Tandem Queuing Network (results) −2 10 − Size of state space Verification time (seconds) ¬Pr ≥0.5 (true U ≤t full)  =  =10 −2  =10 −2

Tandem Queuing Network (results) −2 10 − Verification time (seconds) t ¬Pr ≥0.5 (true U ≤t full)  =  =10 −2  =10 −2

Symmetric Polling System Single server, n polling stations Stations are attended in cyclic order Each station can hold one message State space of size O(n·2 n ) Server … Polling stations

Symmetric Polling System (property) When full and serving station 1, probability is at least 0.5 that station 1 is polled within t time units: Pr ≥0.5 (true U ≤t poll1) in state “full, srv 1” … serving 1polling 1 …

Symmetric Polling System (results) Verification time (seconds) Size of state space −2 10 − Pr ≥0.5 (true U ≤t poll1)  =  =10 −2  =10 −2

Symmetric Polling System (results) Verification time (seconds) t Pr ≥0.5 (true U ≤t poll1)  =  =10 −2  =10 −2

Symmetric Polling System (results)  =  =10 −10  =  =10 −8  =  =10 −6  =  =10 −4  =  =10 − Verification time (seconds)  Pr ≥0.5 (true U ≤t poll1) n=10 t=50

Summary Model independent probabilistic verification of discrete event systems Sample execution paths generated using simulation Probabilistic properties verified using sequential acceptance sampling Easy to trade accuracy for efficiency

Future Work Develop heuristics for formula ordering and parameter selection Use in combination with symbolic methods Apply to hybrid dynamic systems Use verification to aid controller synthesis for discrete event systems

Verification to Aid Probabilistic Planning Plan verification using discrete event simulation and acceptance sampling Plan repair using sample path analysis Heuristics to guide repair selection Hill-climbing search for satisfactory plan Fast sampling-based plan comparison

Generic Repair Procedure 1. Select some state along some negative sample path 2. Change the action planned for the selected state Develop heuristics to make informed state/action choices