120 likes | 286 Views
CS 367: Model-Based Reasoning Lecture 9 (02/12/2002). Gautam Biswas. Today’s Lecture. Last Lecture: Diagnoser Automata Notion of Diagnosability (Sampath paper) Supervisory Control Feedback control with supervisors: Complete and Partial Observation Specifications on Controlled Systems
E N D
CS 367: Model-Based ReasoningLecture 9 (02/12/2002) Gautam Biswas
Today’s Lecture • Last Lecture: • Diagnoser Automata • Notion of Diagnosability (Sampath paper) • Supervisory Control • Feedback control with supervisors: Complete and Partial Observation • Specifications on Controlled Systems • Today’s Lecture: • Discussion of HW problems • Diagnosability and I-Diagnosability • Specifications on Controlled Systems • Controllability Theorem
Control under Partial Observation G SP[P(s)] P S Because of P supervisor cannot distinguish between s1 and s2, i.e., Control action under partial supervision SP: P-supervisor Control Action can change only after occurrence of an observable event; but this action happens before an unobservable event occurs
Specifications of Controlled System • Feedback supervisor S (SP) introduced to eliminate “illegal” traces in G. • Legal behavior of L(G) is La, where a – admissible Partially observable, replace S by SP
Modifying Automata to Account for Illegal Behavior • Illegal States in G: delete these states from G (remove state, transitions, and perform Ac operation) • State Splitting: If spec requires remembering how state in G reached in order to determine what future behavior is legal, then split state • Event Alternance: spec requires alternation of two events, build two state automata to capture this; parallel composition with G
Modifying Automata to Account for Illegal Behavior • Illegal Substring: Remove all strings of L(G) that contain
Supervisory Controller: Examples • Admissible strings: a1 precedes a2 iff b1 precedes b2 • Build trim automata Ha such that Lm(Ha) contains only those strings that contain the above ordering constraints • Is Ha blocking? • In general, how do we build supervisors? If all events controllable and observable:
Supervisory Controller: Example 2 • Let’s say there are uncontrollable events, i.e., Euc = {a2,b2} • What does the supervisor do in this case? • Example, it must disable event b2 in state 9, but b2 is uncontrollable • Note state 1 transitions to state 9 with uncontrollable event a2 therefore, disallow supervisor automata from reaching state 1 , which means disable event a1 when Ha is in state 0. After observing a2, supervisor can enable a1 . What about the case of disabling b1 when Ha enters state 4? In general,uncontrollable events force restriction of behavior to proper subset of L(Ha)
Supervisory Controller: Example 3 • Let’s say there are unobservable events, i.e., Euo = {a2} • If the supervisor enables both a1 and a2 in state 0, it will run into trouble: cause blocking and allow illegal strings • If not disabled, after supervisor observes a1, will not know if system is in states 1, 4, or 9 until the next observable event occurs • States 4 and 9 have conflicting requirements • Say we disable b1 : creates deadlock at state 9 To ensure legality but avoid blocking supervisor can only enable a1 or a2 at the beginning, but not both
Controllability • Nonblocking Controllability Theorem (NCT) Consider a DES G where Euc E is the set of uncontrollable events. Consider also the language K Lm(G), where K There exits a nonblocking supervisor S for G such that Lm(S/G) = K ( L(S/G) = K) iff the following two conditions hold: 1. [controllability] 2. [Lm(G)-closure]
Controllability Part 1: Supervisor enables after string s: (i) all uncontrollable events that are feasible in G after s (ii)all controllable events that extend s inside K Part 2: There exists an admissible S such that
Controllability of Languages • Take Hax G. Automata identical to Ha except for renaming of states • States 0 through 8 are renamed (0,0) to (8,8). State 9 is renamed (9,4) • Hax G and G differ in only two states of Hax G : (9,4) and (4,4) • In (9,4) b2is feasible in G, not in Hax G • In (4,4) b1is feasible in G, not in Hax G Any Euc that contains b1 and b2 – K is not controllable