|author:||M. Helen Schonenberg|
|title:||Bhave! - Discrete Simulation of Behavioural Hybrid Process Calculus|
|keywords:||hybrid systems, process calculus, discrete simulation|
Rom Langerak ,
Jan Willem Polderman
Nowadays complex systems, such as electrical and mechanical, are often controlled by software. Moreover, hybrid models are used to model and analyse complex biological and chemical systems. These systems are called hybrid systems because they display both discrete and continuous behaviour. For the development and analysis of these systems techniques are needed that capture both behaviours and their relation. Simulation is one of the tools to obtain insight in dynamical systems behaviour. Simulation results provide information on system performance and they are useful for detecting potential weaknesses and errors.
In [8, 9, 11] Behavioural Hybrid Process Calculus (BHPC) is proposed for modelling hybrid systems. BHPC is a process algebraic calculus that extends the standard repertoire of operators that combine discrete functional behaviour with features to also represent and compose continuous-time behaviour. At the higher abstraction level these two types of behaviour are treated uniformly, i.e., as normal elements of process algebra. Following , behaviour can be simply seen as the set of all allowed real-time evolutions, or trajectories, of the system variables. One of the most important properties of BHPC is that the strong bisimulation relation for BHPC is a congruence. Such a property allows to interchange bisimilar processes in any process algebraic expression. In other words, it allows to refine processes, change their internal representation, and interchange them without any losses as long as they manifest the same behaviour.
We present abstraction techniques that can be used to simulate hybrid system control structures. These techniques are applicable for all hybrid calculi where continuous-time behaviour is treated like an ordinary element of the algebra. We also present a general and modular discrete engine definition that is based on BHPC semantics. Due to its modularity, this definition allows hybrid extension and further extensions of BHPC. Applicability of the discrete simulation theory and definitions is tested by the implementation of these techniques in a prototype. The prototype is able to simulate control structures of hybrid systems, but moreover it is applicable as tool for testing developments of BHPC since the modular implementation supports extensions of BHPC. Finally, we propose a visualisation technique for hybrid simulation that allows analysis of hybrid behaviour.
The applicability as "sand-box" tool for BHPC can help with further developments of the BHPC framework. We believe that due to the modularity of our engine definitions, the engine could also be suitable for other other frameworks. Furthermore we believe that our visualisation technique for analysing hybrid behaviour has great potential and can help in gaining insight in the relation between discrete and continuous-time behaviour.