## 3 Regulation Control for IPN  
_Regulation control_ is a paradigm, proposed for systems modeled by \(IPN\), developed to induce sequences of output symbols on the system to be controlled, called the _Plant_. These sequences are specified in a high-level fashion by an \(IPN\), called _Specification_ (see, for instance [19; 20; 21]). Then, an \(IPN\), named _Controller_, is designed for this purpose. Figure 2 shows a scheme describing the closed-loop system. In this, the controller indicates input symbols to the Plant transitions in order to make a selection of the Plant output (\(\mathbf{\Omega}\cdot\mathbf{y}\)) to be equal to the Specification output (\(\mathbf{\hat{y}}\)), otherwise stated, to cause the output error \(\mathbf{e}=\mathbf{\hat{y}}-\mathbf{\Omega}\cdot\mathbf{y}\) to be null. For this, the controller has access to the complete marking of the Specification (\(\mathbf{\hat{M}}\)), since the controller and the Specification are implemented in the same hardware, but it only has access to output signals from the Plant (\(\mathbf{y}\)), since only this information is available through the sensors connected to the controller hardware. In addition, the controller stops the Specification when the output error is not null. The Plant and Specification are formally defined as follows. **Definition 3**. : _The Plant is a safe live \(IPN\), \(Q=\langle\mathcal{N},M_{0},\Sigma_{I},\Sigma_{ld},\Sigma_{O},\lambda_{I}, \lambda_{Id},\varphi\rangle\), that models the discrete event system to be controlled. Two places cannot generate the same output symbol; moreover, input and output alphabets are disjointed._  
**Definition 4**. : _A Specification is a safe, live-state machine IPN. \(\hat{Q}=\langle\mathcal{\hat{N}},\hat{M}_{0},\hat{\Sigma}_{I},\hat{\Sigma}_{ld },\hat{\Sigma}_{O},\hat{\lambda}_{I},\)\(\lambda_{Id},\)\(\hat{\varphi}\rangle\), together with a function \(\Omega\colon\Sigma_{O}\rightarrow\Sigma_{O}\cup\{\epsilon\}\) that relates output symbols from the Plant to Specification output symbols. Each transition of the Specification has a unique identity symbol that is different from those of the Plant._  
Methodologies for modeling automated manufacturing systems as \(IPN\) have been proposed in [19; 21]. Moreover, a methodology for designing \(IPN\) specifications has been presented in [34], in which the designer only provides a high-level description of what he wants to observe from the Plant. **Definition 5**. : _A regulation controller is a safe \(IPN\), \(\hat{Q}=\langle\mathcal{\hat{N}},\hat{M}_{0},\hat{\Sigma}_{I},\hat{\Sigma}_{ld },\)\(\hat{\Sigma}_{O},\hat{\lambda}_{I},\hat{\lambda}_{Id},\)\(\hat{\varphi}\rangle\), fulfilling \(\hat{\Sigma}_{ld}\cap\Sigma_{ld}=\emptyset\) (i.e., plant transitions do not share their identity symbols with controller transitions). The closed-loop system is defined as the \(IPN\)\(Q^{cl}=Q\|\hat{Q}\|\hat{Q}\)._  
The regulation control problem consists of the synthesis of a controller that enforces the closed-loop system to exhibit the following behavior:  
* if the output error is not null, then all the Specification transitions are disabled, and any fireable sequence drives the Plant to a marking where the output error is null;
* if the output error is null, then all the Plant transitions are disabled, but none of the Specification transition is disabled by the controller. Figure 2: Regulation control scheme for \(IPN\). A synthesis method for computing such controller was presented in [20]. This method consists of the following three steps:  
1. A marking mapping \(\mathbf{\Pi}\) is computed, which relates each specification marking \(\tilde{\mathbf{M}}_{k}\) to a Plant marking \(\mathbf{M}_{k}\), such that the output error is null, i.e., \(\tilde{\varphi}\tilde{\mathbf{M}}_{k}-\mathbf{\Omega}\varphi\mathbf{M}_{k}= \mathbf{0}\). Thus, if the Specification is at \(\tilde{\mathbf{M}}_{k}\), the Controller should drive the Plant to \(\mathbf{M}_{k}=\mathbf{\Pi}\tilde{\mathbf{M}}_{k}\).