Skip to main content Skip to navigation

Sample Answer

CS405 2005 Qu.1 Sample ‘good’ answer.

Qu.1 Give an overview of the key principles, concepts, and tools used in applying Empirical Modelling to the modelling and simulation of reactive systems, with reference to:

(a) the development of interactive artefacts using definitive scripts [10]

(b) agent-oriented analysis based on the LSD notation [10]

(c) the animation of LSD accounts within the conceptual framework of the Abstract Definitive Machine [10]

Illustrate your answers to parts (a). (b) and (c) with reference to the modelling and simulation of a vehicle cruise control.

(a) A fundamental activity of EM is the building of interactive artefacts through the assembly of definitions representing dependencies between observables. Such a collection of definitions is known as a definitive script. Such a script allows the modeller to express their construal of activity in a reactive system in terms of the agency perceived by the modeller. The modeller may act in the role of external observer of the system and in the role of each of the participating agents. Typically the activity will be represented in a diagrammatic form (using the DoNaLD notation and presented in a series of windows (using the Scout notation). Such visualisation of a complex system is in line with Harel’s thinking about reactive systems development (for example, his introduction of statecharts as a way of visualising system state). Harel argues that retaining conceptual control in modelling complex state is best achieved by exploiting the modeller’s capacity to process relationships visually. EM takes this idea into the development process itself. One of the key distinctive themes of EM is that the modelling process relies on representing the modeller’s direct experience of both the artefact and the referent of the artefact (what is being modelled). The artefact reflects the current state of the system and all the atomic transformations which apply to that state as viewed from the perspective of all the agents concerned. The variables in a script correspond to observables regarded by the modeller to be relevant for expressing all the interactions between the agents in the environment and so relevant to representing all the significant behaviour. The definitions represent dependencies between observables that are viewed as indivisible from the perspective of the state-changing agent. For example, the shadow of a stick depends indivisibly on the position of the stick and of the light source. The definitive script that a modeller builds is an artefact that embodies the reliable patterns of observables, dependencies and agents that make up the modeller’s construal, or personal understanding, of the situation. Agent actions are represented through interaction with the artefact by redefinitions of observables in the script.

(b) Agent-oriented analysis in EM involves the classification of observables according to the roles they play for the participating agents. In the current version of the LSD notation ‘state’ observables are those that are inseparable from the agent (e.g. the weight of a driver), ‘oracles’ are observables to which the agent can be responsive (e.g. traffic lights), ‘handles’ are observables that can be conditionally changed by the agent (e.g. brake pedal position), and ‘derivates’ that are perceived dependencies between observables in the view of the agent (e.g. lights go red when driver in a hurry). These classifications and derivates are derived from experiment and experience (so the example given of a derivate will (probably?) be found unreliable and so discarded). An observable that is an oracle for one agent may be a handle for another (e.g. traffic light for driver and for controlling switch). There will also be a collection of privileges for action for each agent. These are actions the agent may take given certain conditions hold. (E.g. when light is green, driver may go – but may also stall or have gone to sleep.) Typically the actions allowed in such a privilege will be expressed in possible redefinitions or the instantiation or deletion of another agent. An LSD account does not determine specific behaviours but is more like an envelope or family of possible behaviours. Potential particular behaviours, reflecting expectations in the external domain, are produced in the artefact when the modeller adds more detail (such as timing information) or automates some sequence of redefinitions.

(c) There will, typically, be several components in a reactive system and the LSD accounts of those components need to be assembled and interactively refined to make an ‘objective’ construal of the system in the view of an external observer. The idea of the Abstract Definitive Machine (ADM) is to offer a conceptual framework for this integration and its resolution. The LSD accounts of individual agents are transformed into entities consisting of a set of definitions (based on the LSD derivates) and a set of actions (based on the LSD privileges). The ADM can be automated so that redefinitions will occur whenever the guards for an action are true, or, more realistically, under some degree of modeller control or intervention. Normally the same observable will arise in several agents and so be present in several definition/action stores. Subsequent redefinitions and entity instantiations will produce conflicts or cyclic definitions which need to be resolved by the modeller’s decision. This range of manual and semi-automatic execution of the ADM is the kind of support that is appropriate to develop a model of a reactive system that will correspond well to the desired behaviour of a system that is to be implemented in practice.

Outline of use of VCCS for illustration:

The vehicle cruise control simulation is a standard illustrative model. Expect a brief account of how the relevant observables, dependencies, and agents are incorporated into a tkeden model. The main components as a reactive system are: speedometer, speed transducer, driver controls, cruise controller and engine. Expect small extracts from the scripts relating to (some of ) these components to illustrate the notations for line drawing and screen layout, and show definitions, functions and actions. Desirable to show how interactive model development using tkeden can be interpreted within the conceptual framework of the ADM through the correspondence between scripts and automated/manual EDEN actions and ADM entities with semi-automatic execution.