Upcoming SlideShare
×

# Continuous Systems To Discrete Event Systems

2,226 views

Published on

Continuous Systems To Discrete Event Systems

Published in: Education, Technology
5 Likes
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

Views
Total views
2,226
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
0
0
Likes
5
Embeds 0
No embeds

No notes for slide

### Continuous Systems To Discrete Event Systems

1. 1. Representation from continuous systems to discrete event systems <ul><li>Dr Hongnian Yu </li></ul><ul><li>Department of Computing </li></ul>
2. 2. Outline of the presentation <ul><li>Motivation example </li></ul><ul><li>Modelling and control of continuous engineering systems </li></ul><ul><li>Petri nets (PN) </li></ul><ul><li>PN modelling of manufacturing systems </li></ul><ul><li>Performance analysis using PN </li></ul><ul><li>Scheduling using PN and AI search </li></ul><ul><li>Summary </li></ul>
3. 3. Motivation example <ul><li>We can represent numerals in many different ways, </li></ul><ul><ul><li>e.g. Arabic, Roman, English, Chinese, etc. </li></ul></ul><ul><li>Which one shall we use? It depends on the tasks. </li></ul><ul><li>For numerical analysis, we prefer the Arabic representation. E.g. carry out a simple multiplication </li></ul><ul><ul><li>(twenty five times thirty five =?) </li></ul></ul><ul><li>To write a check, what will we use? </li></ul>Problem Solving = Representation + Reasoning
4. 4. Differential Equations A powerful representation tool of continuous engineering systems (1) Mechanical system: Mass-spring-damper, m: mass, k: spring constant, b: friction constant, u(t): external force, y(t): displacement. (2) Electrical system: RLC circuit General form (State space representation)
5. 5. Interesting Issues of Engineering Systems <ul><li>Stability </li></ul><ul><li>Controllability </li></ul><ul><li>Observability </li></ul><ul><li>Optimality </li></ul>disturbance <ul><li>Adaptation </li></ul><ul><li>Robustness </li></ul>
6. 6. Control Methods <ul><li>Adaptive control </li></ul><ul><ul><li>Adaptive Control of Robot Manipulators Using a Popov Hyperstability Approach, Journal of Systems and Control Engineering, 1995. </li></ul></ul><ul><li>Simple adaptive control </li></ul><ul><ul><li>Simple adaptive control of processes with uncertain time-delay and Affine linear structured uncertainty, Journal of Control Theory and Application, 2001. </li></ul></ul><ul><li>Robust control </li></ul><ul><ul><li>Exponentially Stable Robust Control Law For Robot Manipulators, Journal of Control Theory and Applications, 1994. </li></ul></ul><ul><li>Combined adaptive and robust control </li></ul><ul><ul><li>Robust Combined Adaptive and Variable Structure Adaptive Control of Robot Manipulators, Journal of Robotica, 1998. </li></ul></ul><ul><li>Iterative learning control </li></ul><ul><ul><li>Model Reference Parametric Adaptive Iterative Learning Control, 15th IFAC World Congress on Automatic Control, 2002. </li></ul></ul>
7. 7. Representation of discrete event systems <ul><li>Man-made systems </li></ul><ul><ul><li>Computer networks </li></ul></ul><ul><ul><li>Communication networks </li></ul></ul><ul><ul><li>Transportation networks </li></ul></ul><ul><ul><li>Power networks </li></ul></ul><ul><ul><li>Water networks </li></ul></ul><ul><ul><li>Manufacturing systems </li></ul></ul><ul><ul><li>Supply chains </li></ul></ul><ul><li>Common features: discrete event systems </li></ul><ul><li>Representation approaches: various, but not unique </li></ul><ul><ul><li>Finite state automata </li></ul></ul><ul><ul><li>MAXPLUS algebra </li></ul></ul><ul><ul><li>Petri nets </li></ul></ul><ul><ul><li>No standard representation (model) like differential equations for continuous dynamic systems </li></ul></ul>
8. 8. Petri nets <ul><li>A PN is a mathematical formalism and a Graph tool to model and analyze discrete event dynamic systems. It is directed graphs with two types of nodes: places and transitions. Places represent conditions which may be ‘held’ and transitions represent events that may ‘occur’ </li></ul><ul><li>Enabling rule: </li></ul><ul><ul><li>A transition t is enabled if and only if all the input places of the transition t have a token. </li></ul></ul>Initial state Final state place: transition: <ul><li>Firing rule: </li></ul><ul><ul><li>An enabled transition t may fire at marking Mc. Firing a transition t will remove a token from each of its input places and will add a token to each of its output places. </li></ul></ul>t t
9. 9. Graphical representation of a Petri net an arc’s weight an arc a place a transition a token 2 4
10. 10. Petri nets: Mathematics Model <ul><li>A Petri net is 5-tuple, PN=(P,T,I,O,M) where </li></ul><ul><ul><li>P={p 1 ,p 2 , ···, p mp } is a finite set of system states; </li></ul></ul><ul><ul><li>T={t 1 ,t 2 ,···, t np } is a finite set of transitions; </li></ul></ul><ul><ul><li>I: the input (preincidence) function; </li></ul></ul><ul><ul><li>O: output (postincidence) function; </li></ul></ul><ul><ul><li>M: the m-component marking vector whose i th component, M(p i ) is the number of tokens in the i th place. M 0 is an initial marking. </li></ul></ul><ul><li>A Petri net from stage k to stage k+1 can be expressed by the following state equation </li></ul><ul><li>M k+1 = M k + C T u k (1) </li></ul><ul><ul><li>where M k is the current marking state vector, u k is the control vector and C=O-I is the incident matrix. </li></ul></ul>
11. 11. Example P={p 1 , p 2 , p 3 }; T={t 1 , t 2 , t 3 }; I(t 1 )={}, I(t 2 )={p 1 , p 2 }, I(t 3 )={p 3 }; O(t 1 )={p 1 }, O(t 2 )={p 3 }, O(t 3 )={p 2 } Initial marking: M 0 =[1, 1, 0]. Using the firing rule , we have M 1 =M 0 +e t C=[1, 1, 0]+[0, 1, 0]C=[0, 0, 1] where e t is the characteristic vector of t: e t (x):=1 if x=t, else =0. t 1 t 2 t 3 p 1 p 3 p 2
12. 12. Petri Nets: Time Information <ul><li>The concept of time is not explicitly given in the original definition of PNs. For performance analysis and scheduling problems, it is necessary and useful to introduce time delays associated with transitions or places in their PN models. </li></ul><ul><li>A timed Petri net TPN=(PN,h): </li></ul><ul><ul><li>PN is a normal Petri net defined as the before; </li></ul></ul><ul><ul><li>h: the time delay associated with the relevant state. </li></ul></ul>Timed transition Timed place
13. 13. Example
14. 14. Batch Plant Flowchart with 1 Reactor and 1 Blender Synthesising and Analysis of a Batch Processing System Using Petri Nets, 1997. <ul><li>The Petri net model of the batch plant </li></ul><ul><ul><li>Batch plant = charging + reaction + blending + testing & discharging </li></ul></ul>
15. 15. PN Modelling of Solvent Charging Illustration of places and transitions. p 1 : Reactor available p 2 : Charging Solvent 1 to the reactor p 3 . Charging Solvent 2 to the reactor p 4 : Charging Solvent 3 to the reactor p 5 : Charging Solvent 4 to the reactor p 6 : Reaction in progress to the reactor S 1 : Solvent 1 S 2 : Solvent 2 S 3 : Solvent 3 S 4 : Solvent 4 t 1 : Start charging solvent 1 t 2 : Stop charging solvent 1 & start charging solvent 2 t 3 : Stop charging solvent 2 & start charging solvent 3 t 4 : Stop charging solvent 3 & start charging solvent 4 t 5 : Stop charging solvent 4 & start reaction
16. 16. PN Modelling of Solvent Charging <ul><li>This is a marked graph since every place has exactly one input and one output transition. </li></ul><ul><li>The net is live and reversible since every circuit has at least one token. </li></ul><ul><li>It is a safe net since no place has more than one token. </li></ul>
17. 17. Modelling of Reactor and Blender Illustration of places and transitions p 7 : Charging solvents p 8 : Reaction in progress to the reactor p 9 : Discharging reactor & charging blender p 10 : Blending&testing&discharging R: Reactor available B: Blender available t 6 : Start charging solvents t 7 : Stop charging solvents & start reaction t 8 : Stop reaction&start charging blender t 9 : Stop charging&discharging & start blending t 10 : Stop discharging blender
18. 18. Modelling of Quality Test Illustration of places and transitions p 12 : Ready for blending p 13 : Logical place for rejected material p 14 : Blending p 15 : Testing p 16 : Testing fail & require reblending p 17 : Testing success & discharging blender S 5 : Blending resource available O 1 : Operator available for testing O 2 : Operator available for discharging t 12 : Pumping to blender finish t 13 : Start blending t 14 : Stop blending & start testing t 15 : testing finish (fail) t 16 : testing finish (success) & start discharging blender t 17 : Start reblending t 16 : Discharging finish
19. 19. Reachability Graph
20. 20. Final Petri net model for the batch plant
21. 21. Performance Analysis Using Timed Petri Nets <ul><li>Performance evaluation of a production system provides the ability to perceive clearly the production plan of the system. It is used to identify the bottleneck in the production unit, estimate the raw material required for production and decide operating policies. </li></ul><ul><ul><li>Time to charge each solvent is about 30 min. </li></ul></ul><ul><ul><li>The total time for charging four solvents into the reactor is about 120 min and this can be reflected as a delay time in place p 7 . </li></ul></ul><ul><ul><li>The time for reaction is 1080 min which represents the delay time in p 8 . </li></ul></ul><ul><ul><li>The time for discharging the reactor/charging the blender is 60 min which represents the delay time in p 9 . </li></ul></ul><ul><ul><li>The time for blending is 360 min. The time for testing and discharging is about 180 min. The delay time in p 10 represents the sum of the blending time and the time for testing and discharging. </li></ul></ul>
22. 22. Performance Analysis <ul><li>When the times are deterministic, we can compute the cycle time of each circuit g: </li></ul><ul><li> Cg = m(g)/M(g) for g = { 1....q } </li></ul><ul><li>where q is the number of circuits in the model, m(g) is the sum of place delays in the circuit g, M(g) is the sum of tokens in the circuit g </li></ul><ul><li>For a marked graph, the minimum cycle time, Cm is </li></ul><ul><li>Cm = Max { m(g)/M(g) } </li></ul><ul><li>To compute the result, it is important to list all the circuits produced by this model and show the minimum cycle time of each circuit. There are two elementary circuits in our model. </li></ul><ul><ul><li>Circuit 1 C1 = 120 + 1080 + 60 =1240 min </li></ul></ul><ul><ul><li>Circuit 2 C2 = 60 + (360 + 180)=600 min </li></ul></ul><ul><li>Therefore the minimum cycle time is 1240 minutes. The bottle neck machine is in element circuit 1, i.e., the reactor. </li></ul>
23. 23. Scheduling Approaches <ul><li>The mixed integer linear programming approach: It is similar to the linear programming approach with linear objective function and constraints but some of its variables are integer and others binary. </li></ul><ul><li>The critical path scheduling approach (CPA) and the program evaluation and review technique (PERT): Both are network based methods. </li></ul><ul><li>The artificial intelligence (AI) based approaches: These include depth-first and breadth-first search approaches, Branch and Bound search approach, best-first search approach, climb hill search approach, beam search approach, A* (heuristic) search approach, etc. These are called the systematic approaches. </li></ul><ul><li>The non-systematic approaches: genetic algorithm based approach, simulation annealing approach, etc. </li></ul><ul><li>Rule based approaches: Copying the expertise of human schedulers and adopting the tactics that they use. </li></ul><ul><li>The simulation based approaches: discrete-event simulation. </li></ul>
24. 24. Petri Net + AI Based Scheduling Methods <ul><li>Scheduling: </li></ul><ul><ul><li>Based on reachability tree analysis (for simple Petri nets) </li></ul></ul><ul><ul><li>Uses reduced reachability space for more complex Petri nets </li></ul></ul><ul><li>Example: A 2 product & 2 processor system is used to illustrate the method. </li></ul><ul><li>Problem statement: </li></ul><ul><li>A complete description of the problem discussed is as follows: </li></ul><ul><ul><li>The objective function to be minimised is the time makespan required to complete all the jobs. </li></ul></ul><ul><ul><li>The given constraints are: </li></ul></ul><ul><ul><ul><li>precedence relationships among the jobs; </li></ul></ul></ul><ul><ul><ul><li>fixed number of resources and prescribed job-resource assignment. </li></ul></ul></ul><ul><li>The goal is to find a sequential order of jobs that satisfies the above conditions. </li></ul>
25. 26. Gantt Chart  Firing sequence: t 1 t 2 t 3 t 4 t 5 t 6 t 7 t 8 leads to c=14 min Firing sequence: t 5 t 6 t 1 t 7 t 2 t 8 t 3 t 4 leads to c=11 min (optimum)
26. 27. PN Based Intelligent Scheduling Approaches <ul><li>A scheduling approach using Petri net modelling and a Branch & Bound search, Proc. IEEE International Symposium on Assembly and Task Planning, 1995. </li></ul><ul><li>Planning through Petri Nets, Proc. of the Sixteenth Workshop of the UK Planning and Scheduling Special Interest Group, 1997. </li></ul><ul><li>Petri Net-Based Closed-Loop Control and On-line Scheduling of the Batch Process Plant, Proc. of CONTROL 98, 1998. </li></ul><ul><li>Rule-Based Petri Net Modelling and Scheduling of Flexible Manufacturing Systems, Proc. of 14th NCMR Conference, 1998. </li></ul><ul><li>Generic Net Modelling Framework for Petri Nets, IASTED International Conference on Intelligent Systems and Control, 1999 </li></ul><ul><li>Integrating Petri Net Modelling and AI Based Heuristic Hybrid Search for Scheduling of FMS, Journal of Computer in Industry, 2002. </li></ul><ul><li>Advanced Scheduling Methodologies for FMS using Petri Nets and Artificial Intelligence, IEEE Trans on Robotics and Automation, 2002. </li></ul><ul><li>Petri Nets, Heuristic Search and Natural Evolution: Promising Scheduling Algorithm for Job Shop Systems, Proc. of The Third International ICSC Symposia on INTELLIGENT INDUSTRIAL AUTOMATION, 1999 </li></ul><ul><li>Petri net Modelling and Witness Simulation of Manufacturing Systems , Proc. of Third World Manufacturing Congress, 2001 </li></ul>
27. 28. Petri Nets Applications <ul><li>Performance analysis </li></ul><ul><li>Optimisation, scheduling, planning </li></ul><ul><li>Simulation </li></ul><ul><li>Control synthesis </li></ul><ul><li>Formal verification and validation </li></ul>
28. 29. Summary <ul><li>Two types of systems </li></ul><ul><li>Natural (continuous) engineering systems </li></ul><ul><ul><li>A powerful representation tool, differential equation, is available </li></ul></ul><ul><ul><li>Many analysis approaches have been developed </li></ul></ul><ul><li>Man-made (discrete event) systems </li></ul><ul><ul><li>Many representation approaches are proposed, but none of them is as powerful as the differential equation </li></ul></ul><ul><ul><li>Complexity </li></ul></ul><ul><ul><li>Uncertainty </li></ul></ul>
29. 30. Variable structure control <ul><li>Assumption: The bounds of the unknown parameters are known, i.e. </li></ul>Theorem. For the system (1), if the robust control laws are  (t)=  n (t)+  l (t),  n (t)=W(t)  v (t)+W 0 (t),  l (t)=-(P ll +P cc  -1 P cc )s(t)+P cc E 1 (t) where then for a reasonably small positive constant  , all the signals in the system are bounded and E(t) tends to zero with at least an exponential rate that is independent of the excitation. p is the number of the uncertainty parameters, P cc ,  , P ll  R n  n are symmetric positive definite gain matrices, P 12 =P cc -1   R n  n , P 1 =[P 12 I n  n ]  R n  2n , <ul><li>Exponentially Stable Robust Control Law For Robot Manipulators, Journal of Control Theory and Applications, 1994. </li></ul>Back Dynamic equation: (1)
30. 31. Adaptive control <ul><li>Dynamic equation: </li></ul>Define the control law as  (t)=  n (t)+  l (t) (2) Linear control law: Non-linear adaptive control law: (1) Theorem. The control system (1) with the control law (2) is globally convergent, that is E(t) asymptotically converges to zero and all internal signals are bounded. <ul><li>Adaptive Control of Robot Manipulators, Proc. IEEE/RSJ International Conference on Intelligent Robots and Systems, 1992. </li></ul><ul><li>Adaptive Control of Robot Manipulators Using a Popov Hyperstability Approach, Journal of Systems and Control Engineering, 1995. </li></ul>Back
31. 32. Iterative learning control <ul><li>Dynamic equation: (1) </li></ul>Control input: (2) Parameter ILC law: (3) Theorem: For the robot system described by (1), if the control law (2) and the parameter iterative learning law (3) are used, the desired joint trajectories and their up to 2nd order derivatives are bounded, and the initial tracking errors (0)=0 and (0)=0 for j=1,2…, then the following properties hold: i ii iii <ul><li>Parametric Iterative Learning Control of Robot Manipulators, Proc. of the Chinese Automation Conference, 1999. </li></ul><ul><li>Model Reference Parametric Adaptive Iterative Learning Control, 15th IFAC World Congress on Automatic Control, BARCELONA, Spain, 2002. </li></ul>Back