HioSys Synthesis

The synthesis functions HioSynthMonolithic, HioSynthHierarchical and HioSynth provide a procedure to deliver a solution for the I/O-controller synthesis problem, i.e. an I/O controller that enforces a specification in the I/O plant while guaranteeing liveness for the closed loop.

By the functions HioSynthMonolithic and HioSynthHierarchical, we distinguish between two different situations, which we informally refer to as the monolithic and the hierarchical case. Putting up with a longer signature, HioSynth can handle both situations. The monolithic case depicted in the left picture treats controller synthesis for a single plant (component), see HioSynthMonolithic. The hierarchical case in the right picture addresses the synthesis of a superposed controller for a group of plant components, aggregated by the function HioShuffle to one I/O plant model. The description of the components' interaction is passed on as I/O environment model, see HioSynthHierarchical.

Synthesis problem, monolithic           Synthesis problem, hierarchical

HioSynthMonolithic

I/O-Controller synthesis, monolithic version.

Signature:

HioSynthMonolithic(+In+ HioPlant GPlant, +In+ HioPlant GSpec, +In+ HioConstraint GConstrC, +In+ HioConstraint GConstrP, +In+ HioConstraint GConstrE, +Out+ HioController GController)

Detailed description:

This function computes an I/O controller for a single plant component, or the I/O shuffle of independent (non-interacting) plant components, with constraints Sp and Se, and specification (in I/O plant form) with operator constraint Sc. The resulting I/O controller enforces the specification and the constraint Sp on the I/O plant. Liveness of the closed loop is guaranteed if the constraints Sc and Se are met by its surroundings.

HioSynthHierarchical

I/O-Controller synthesis, hierarchical version.

Signature:

HioSynthHierarchical(+In+ HioPlant GPlant, +In+ HioEnvironment GEnv, +In+ HioPlant GSpec, +In+ Generator GConstrInt, +In+ HioConstraint GConstrC, +In+ HioConstraint GConstrL, +Out+ HioController GController)

Detailed description:

This function computes an I/O controller for the I/O shuffle of interacting plant components (HioShuffle), a corresponding environment model and a specification (in I/O plant form) with constraints Sc and SL. The internal constraints Sp_i and Se_i of each individual component Spe_i of the I/O shuffle must be composed to one Generator (using Parallel) and passed as Parameter GConstrInt; these internal constraints (depicted as Sp and Se in the upper right-hand picture) are necessary to meet the conditions stated in Theorem V.7 in [H1].

HioSynth

Basic I/O controller synthesis procedure, without parameter check.

Signature:

HioSynth(+In+ Generator GPlant, +In+ Generator GSpec, +In+ Generator GConstr, +In+ Generator GConstrLoc, +In+ EventSet Yc, +In+ EventSet Uc, +In+ EventSet Yp, +In+ EventSet Up, +In+ EventSet Yel, +In+ EventSet Uel, +Out+ Generator GController)

Detailed description:

This function computes an I/O controller and is suitable for both the monolithic and the hierarchical case, see also HioSynthMonolithic and HioSynthHierarchical.
Meaning of parameters, monolithic case:
- GPlant - single I/O plant model
- GSpec - Specification in I/O plant form over alphabet SigmaCE
- GConstr - Parallel composition of constraints Sc and Se
- GConstrLoc - constraint Sp
- Yc,Uc,Yp,Up - corresponding event sets
- Yel,Uel - event sets Ye, Ue
- GController - controller for single plant
Parameters, hierarchical case:
- GPlant - I/O-shuffle of I/O plants and parallel composition with corresp. environment model
- GSpec - Specification in I/O plant form over alphabet SigmaCL
- GConstr - Parallel composition of constraints Sc and SL
- GConstrLoc - parallel composition of constraints Sp_i and Se_i of each plant component Spe_i
- Yc,Uc,Yp,Up - corresponding event sets
- Yel,Uel - event sets YL, UL
- GController - superposed controller for compound plant

HioSys Home

libFAUDES 2.32b --- 2024.03.01 --- with "synthesis-observer-observability-diagnosis-hiosys-iosystem-multitasking-coordinationcontrol-timed-simulator-iodevice-luabindings-hybrid-example-pybindings"