1 / 20

Control-theory and models at runtime

Control-theory and models at runtime. Pierre-Alain Muller 1 , Olivier Barais 2 , Franck Fleurey 2 1 Université de Haute-Alsace Mulhouse, France 2 IRISA / INRIA Rennes Rennes, France. Talk outline. Introduction Basics of control-theory Control-theory and models @ runtime

wbeamer
Download Presentation

Control-theory and models at runtime

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Control-theory and models at runtime Pierre-Alain Muller1, Olivier Barais2, Franck Fleurey2 1 Université de Haute-Alsace Mulhouse, France 2 IRISA / INRIA Rennes Rennes, France

  2. Talk outline • Introduction • Basics of control-theory • Control-theory and models @ runtime • Example of control theory reuse for QoS adaptation policies • Conclusions

  3. Introduction • Models at runtime are considered as a key enabling technology for systems that control themselves as they operate • The automatic-control community has developed extensive theories and experiences in qualifying the properties of controller and systems; including stability, controllability and observability • We propose to use control-theory for describing self-adaptive model-driven systems

  4. + e Controller Plant y x ref - Obs(y) Observer Basics of control-theory This is the system under control X represents the inputs of the system Inputs are used to act on the system Y represents the outputs of the system Ouputs are used to observe the system

  5. + e Controller Plant y x ref - Obs(y) Observer Basics of control-theory This is what the system must enforce This is the difference between what the system should do, and what it does actually. It is known as the error This is what the system actually does

  6. + e Controller Plant y x ref - Obs(y) Observer Basics of control-theory The goal of the controller is to minimize the error by acting on the inputs of the system To know how to act on the system, the controller uses a representation of the system (the control law)

  7. Stability • Stability ensures that a system will not be endangered by out of range (theoretically infinite) values • For any bounded input over any amount of time, the output will also be bounded

  8. Controllability • Controllability is related to the ability of forcing the system into a particular state by using an appropriate control signal • If a state is not controllable, then no signal will ever be able to stabilize the system

  9. Observability • Observability is related to the possibility of observing, through output measurements, the state of a system • If a state is not observable, the controller will never be able to correct the closed-loop behavior if such a state is not desirable

  10. Open-Loop Controller Vs Closed-Loop Controller • Open-Loop Controller • The control-law of the controller takes the reference and calculates the inputs to the system under control • Closed-Loop Controller • The controller takes the difference (known as the error) between the reference and the actual outputs to change the inputs to the system under control • Closed-loop controllers outperform open-loop controllers in terms of reference tracking, sensitivity to parameter variations, disturbance rejection and stabilization of unstable processes

  11. + e Controller Plant y x ref - Obs(y) Observer What about models now? The control law is an analytical model of the plant (the system) The control law is used by the controller to answer questions such as: « What happens if I inject such value in the system ? »

  12. + e Controller Plant y x ref - Obs(y) Observer What about models now? The reference is a model of what the system should do (requirements) The error is a model of the difference between what should be done and what is actually done The observer provides a model of what the system does actually

  13. + e Controller Plant y x ref - Obs(y) Observer What about models now? Input models are used to act on the system Input models can be either token models or type models Token models: model elements are in a one-to-one correspondence with system items (typically initialization values) Type models : model elements represent sets of system items (typically classes and relations)

  14. Research directions • Re-defining basic notions of control-theory in the context of software engineering • Stability • Controllability • Observability

  15. Defining stability criteria for software • A system is said to be stable when little disturbances applied to the system have negligible effects on its behavior • In terms of model-driven software systems, this means that small changes in the input models do not radically change the behavior of the system • Most important is the notion of margin, that is the amount of changes that can be applied to inputs without disturbing too much the system, and make it become unstable

  16. Defining controllability criteria for software • A system is controllable if it can be driven (say by a model) in a desired direction. Controllability is about proving that systems will perform according to the specifications when inputs change • For instance, this might be true as long as token models conform to type models; the system is then likely to react as expected • General criteria for controllability of software have to be defined (in the same way that control-theory created tools for linear systems)

  17. Defining observability criteria for software • For a system to be controllable, with a closed-loop controller, it must be possible to get precise information about any state of the system at any time • The point here is to be able to build representations (models) which cover all relevant aspects of a system, as far as control is concerned • This is the place for analytical models which gather information about systems, including at runtime, such as trace models

  18. + e Controller Plant y x ref - Obs(y) Observer Example: Fuzzy logic • Fuzzy logic provides a way to express qualitativaly the controlability • load is “medium” => cacheSize is “medium” • load is “small” => cacheSize is “small” Fuzzy logic expresses the control law with qualitative properties

  19. Fuzzy logic • Three steps • Fuzzification (From observed quantitative properties to qualitative membership value) • Inference (Select the rule that can be applied and infer qualitative membership value of actions) • Defuzzification (Infer quantitative values of actions) • Interests • Define qualitative rules can be useful at the design stage

  20. Conclusions • Control-theory • may be used to represent the development of self-adaptive model-driven applications • might be an important element for the study of models at runtime, especially in the context of self-adaptation • New research directions • reformulate basic notions of control-theory applied to model-driven development, in the context of self-adaptive systems

More Related