Projects

ITEA TWINS project (2006-2009)

The Twins project addresses co-design problems of product development consisting of integrated hard- and software development. Challenging topics in this development mode that need special attention include:

  • verification and validation of requirements and architecture models,
  • test-case generation from requirements and/or models, and
  • hard- and software change management and configuration management during co-design.
Addressing those topics in an interdisciplinary way and designing co-design system-flow, techniques and tools will improve complex distributed and real-time embedded systems in the avionics, copier & printer, power supply and electronics industries. This might also benefit the standardization of platforms and help to alleviate performance and quality problems.

See ITEA TWINS website for more information.

Publications in the context of this project are the following:

  1. Maarten Damen, Wouter Geurts and Michel Reniers. Testing based Modelling, De 15e Nederlandse Testdag, November 4, 2009, Eindhoven, The Netherlands.
  2. M.A. Reniers. Behavioural visualization of model based systems, Presentation at QA & Test 2009, 8th International Conference on Software QA and Testing on Embedded Systems, 21-22-23 October - Bilbao, Spain.
  3. Hans Westerveen. Verification of the I-Cane prototype , September 2009. Master's thesis. Assignment from NBG Automation, Nederweert, The Netherlands.
  4. Maarten Damen. Reversed Engineering Based on Log data, July 2009. Master's thesis. Assignment from Logica, Eindhoven, The Netherlands.
  5. Frank P.M. Stappers, Lou J.A.M. Somers, and Michel A. Reniers. La modélisation multidisciplinaire: État d'avancements et attentes du projet néerlandais TWINS. Génie Logiciel, 88:26-35, March 2009.
  6. F.P.M. Stappers, L.J.A.M. Somers, and M.A. Reniers. Multidisciplinary modelling: Current status and expectations in the Dutch TWINS consortium. In Proceedings of 21st International Conference on Software and Systems Engineering and their Applications (ICSSEA 2008), Paris, France, December 9-11, 2008.
  7. F.P.M. Stappers, L.J.A.M. Somers and M.A. Reniers. Multidisciplinary Modelling in the Netherlands. In Davide Falessi and Jens Heidrich, editors, Product Focused Software Process Improvement (PROFES 2008), Short Paper Session Proceedings, Frascati, Rome, Italy, June 23-25, 2008, pages 25-28. ISBN: 978-88-95244-13-6
Project participants: Jan Friso Groote, Frank Stappers and Michel Reniers.

In the past I participated in the following projects:

  1. Analysis and synthesis of embedded systems with discrete and continuous control (2001-2005)
    Hybrid systems are systems in which both physical processes with a continuous nature and artefacts from computer science with a discrete nature appear. Embedded controllers appear in all kinds of consumer electronic devices such as microwave units, audio and video devices, PCs, cars, tools and toys.

    The specification, design and analysis of hybrid systems require a synthesis of the concepts, models and techniques used in disciplines such as computer science, control theory and systems engineering. The importance of modelling and simulation for the design of high quality industrial systems in a limited amount of time is generally acknowledged. The importance of correctness of the models used goes without saying.

    Embedded systems are frequently used to control processes and devices. With embedded controllers these products can be made with a large complexity and flexibility with acceptable production costs. These processes or devices consist of physical (e.g. mechanical, electrical) components and exhibit time-continuous behaviour. The controller, implemented in software, is generally some form of finite-state machine on a digital processor and is, therefore, asynchronous and time-discrete. The controller takes care of functions such as start-up, mode switching, constraint handling, safety and, using a synchronous time-discrete basic feedback controller, stability and performance. The controller, excluding the basic feedback controller, can be described and analysed with process algebra of computer science. System and control theory allows the analysis of the basic feedback controller and the physical process. Due to a lack of common models and theories between computer science and system theory the design of controller software for a dedicated application is still an heuristic, time-consuming and error-prone activity, which generates only limited transferable knowledge. Until now, the control theories of time-continuous systems and time-discrete systems have been studied as two separate fields. On the one hand, systems and control theory finds its roots in physics and engineering sciences. On the other hand, process theory (process algebra) is based on computer science. The models and methods used in both fields are almost completely disjointed.

    The challenge of this project is to integrate knowledge of controllers from computer science and system theory for the analysis and synthesis of embedded systems. The proposal is aimed at describing and generalising the design knowledge, leading to a better understanding of these systems. This research project brings closer continuous and discrete control systems by improved mutual understanding, cross-fertilisation and to generic results for analysing and synthesising the dynamic behaviour of industrial embedded systems.

    The project aims to describe and analyse several example processes and generalise the results. A major problem is searching for both appropriate model descriptions and suitable example processes. Here, appropriate indicates that a model is powerful enough to describe the relevant dynamic behaviour and is still structured enough to allow some kind of analysis. An important issue concerns the definition of the boundary between physics (continuous time) and software (discrete time). Each of the groups involved will attempt to solve this problem starting from its own background, either system theory or process algebra. Once appropriate models have been derived, analysis with these models will be attempted. Based on this analysis a design will be made and compared with existing designs. If possible, an implementation will be made.

    • Selection of appropriate mathematical models for describing the dynamic behaviour of systems comprised of both physical processes and software.
    • Selection of appropriate industrial processes which allow the derivation of models.
    • Determination of the boundary between time-continuous and time-discrete models and the overlap that could exist.
    • Proposals for analysis techniques for these hybrid models.
    • Generalisation of the results of the example processes.
    • Indication of the scope of the selcted models.
    • Comparison with other approaches.
    • Implementation of the proposed controllers in some industrial processes.

  2. Modelling, simulation and verification of hybrid systems (2001-2005)
    The importance of modelling and simulation for the design of high quality industrial systems in a limited amount of time is generally acknowledged. The importance of correctness of the models used goes without saying. Yet, exchange of ideas and results between the research fields of simulation and verification is limited. The aim of the project is to integrate the knowledge and demands from both fields, leading to results that are better and have a wider application area than would otherwise be possible.

    The appliction field of hybrid systems is very wide and entails among others complete industrial plants in the food or chemical industries, control systems ranging from supervisory control systems of a chemical plant to embedded control systems of individual machines, and physical phenomena such as dry friction in mechanical systems. Research into hybrid systems can be divided into two main fields:

    1. Modelling and simulation of hybrid systems: Modelling and simulation is used to obtain insight in dynamical system behaviour. By comparison of simulation results of models that are based on different control strategies or that are configured differently, the control strategy or configuration that performs best can be selected. In this way, the design or configuration of systems can be improved.
    2. Formal analysis of hybrid systems: Model properties are derived by means of formal analysis. Formal analysis may be used among others to construct controllers with certain safety properties, or it may be proved that certain model states cannot be reached, or that certain other states will be reached.

    The languages and tools used in the two fields are quite different. Researchers in the first field use simulation languages. Aspects that are considered important are among others: ease of use, modularity and flexibility of the language; availability of structured data types; availability of different solvers; speed of the simulation. The languages and tools are developed to facilitate modelling and simulation. Precise semantics of the language constructs are usually not available. Researchers in the second field on the other hand use formal languages: in many cases hybrid automata or hybrid Petri nets. If simulation facilities are available, they are usually restricted to ordinary differential equations, and speed is of little concern. The language and tools are aimed at facilitation of the construction of proofs. A formal language semantics is of course always available.

    To date, properties of the dynamic behaviour of industrial systems are mostly determined by means of simulation. An important aspect in this respect is model correctness. However, due to the decreasing lifetime of industrial products and the increasing global competition, the time available for the development of new products and plants has become an important limiting factor. This leads to the question of how correct models can be developed in a limited amount of time. The project focuses on the following ways to tackle this problem:

    1. Use of a modelling language that provides powerful and easy to use language constructs, with appropriate and well-defined semantics. Misunderstanding of the language semantics can easily lead to modelling errors. The language constructs and semantics should be such that they enable the modeller to develop correct models in a short amount of time.
    2. Proof of critical model properties.
    3. Use of advances modelling techniques. An important aid for the modeller is the use of abstraction. The right amount of detail should be modelled. The use of model abstraction may lead to continuous-time, discrete-event, or hybrid (combined continuous-time/ discrete-event) models. Models of factories of discrete products are usually of a discrete-event nature, because operations on material such as assembly or transportation of parts can be modelled by a time delay. In the case of chemical plants or plants from the food processing industry, however, parts of the model are modelled best in the continuous-time domain, whereas other parts are modelled best in the discrete-event domain. The result is a hybrid model. Model abstraction may also lead to hybrid models in the case of individual machines or mechanical systems.

    A result of the project will be a general purpose hybrid modelling language, for which verification techniques and tools will have been developed. The language improvements will be incorporated into the existing hybrid c simulator, the development of which is continued in parallel with this project. Other results will be improved modelling techniques for hybrid systems. The results of the project will be applicable in the field of analysis of

    • hybrid physical systems, such as mechanical, mechatronic, or chemical systems;
    • complete industrial plants that combine continuous-time and discrete-event aspects, such as fruit-juice production plants, beer breweries, and chemical plants; and
    • real-time control systems.

    Research items:

    1. Modelling techniques: When and how to apply hybrid modelling techniques effectively, depends mainly on the familiarity of a modeller with hybrid languages and his modelling intuition. An attempt should be made to formalize this intuition.
    2. The relation between physical phenomena, hybrid models of such phenomena that exhibit discontinuities, and simulation of such models: Discontinuities, Dirac pulse values, and sliding modes present difficulties for the modeller, and for the simulators and solvers. In many cases it is unclear to what extend these difficulties are caused by imperfections in the modelling techniques used, by limitations of the language constructs used, or by limitations of the solvers and simulation algorithms used.
    3. The higher index problem: Current solvers are well equipped for solving index 1 differential algebraic equations (DAEs). Mechanical systems, however, frequently are of index 2 or 3. The higher the index of a set of DAEs, the more difficult it is to solve.
    4. Optimization of equations solving: In many cases, simulation time of hybrid models can be considerably reduced by using techniques such as symbolic manipulation of the equations. The question is how this can be done without changing the semantics of the model.
    5. Formal semantics of hybrid c: A formal semantics for full c, including continuous time features, has to be provided in terms of SOS rules. In general, this yields transition systems with uncountable many states and transitions. By working with parametrized states and transitions, this difficulty can be alleviated (the so-called symbolic approach).
    6. Analysis: Different analysis methods should be investigated. We will look at timed mCRL and algebraic reasoning. There are already some promising results of the use of mCRL for hybrid systems.
    7. Evaluation of existing modelling languages and tools: We will investigate the use of hybrid automata. Based on the semantics in terms of transition systems, a translation to timed automata should not be too difficult. Then, we need to evaluate the additional structure of hybrid automata. We need to evaluate the use of tools such as HyTech, Uppaal, Kronos and Real Time Spin.

  3. Software Architecture = Components + Coordination

  4. ROBOCOP