Skip to main content
Log in

Supervisory control synthesis for deterministic context free specification languages

Enforcing controllability least restrictively

  • Published:
Discrete Event Dynamic Systems Aims and scope Submit manuscript

Abstract

This paper describes two steps in the generalization of supervisory control theory to situations where the specification is modeled by a deterministic context free language (DCFL). First, it summarizes a conceptual iterative algorithm from Schneider et al. (2014) solving the supervisory control problem for language models. This algorithm involves two basic iterative functions. Second, the main part of this paper presents an implementable algorithm realizing one of these functions, namely the calculation of the largest controllable marked sublanguage of a given DCFL. This algorithm least restrictively removes controllability problems in a deterministic pushdown automaton realizing this DCFL.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

Similar content being viewed by others

Notes

  1. Throughout this paper we use the notation ” ∀⋅.⋅”, meaning that all statements after the dot hold for all variables in front of the dot. ” ∃⋅.⋅” is interpreted analogously.

  2. Here, \(\rightharpoonup \) denotes a partial function.

  3. Slightly abusing notation, we also use π i (d) to denote the ith element of the tuple d.

  4. This is the reason why the algorithm presented by Griffin (2008) does not give a minimally restrictive controller.

  5. Observe that reaching q with two different initial derivations f, f D I(M) might result in different mappings as the condition in (13) might only hold for one out of the two.

References

  • Chen Y-L, Lin F (2000) Modeling of discrete event systems using finite state machines with parameters. In: Control Applications, 2000. Proceedings of the 2000 IEEE International Conference on, pp 941– 946

  • Chen Y-L, Lin F (2001) Safety control of discrete event systems using finite state machines with parameters. In: American Control Conference, 2001. Proceedings of the 2001, vol 2, pp 975–980

  • Griffin C (2006) A note on deciding controllability in pushdown systems. IEEE Trans Autom Control 51(2):334–337

    Article  MathSciNet  Google Scholar 

  • Griffin C (2007) Decidability and optimality in pushdown control systems: A new approach to discrete event control. PhD thesis, The Pensylvania State University

  • Griffin C (2008) A note on the properties of the supremal controllable sublanguage in pushdown systems. IEEE Trans Autom Control 53(3):826–829

    Article  MathSciNet  Google Scholar 

  • Hopcroft JE, Ullman JD (1979) Introduction to Automata Theory, languages and computation. Addison-Wesley Publishing company

  • libFAUDES (2013) Software library for discrete event systems

  • Masopust T (2012) A note on controllability of deterministic context-free systems. Automatica 48(8):1934–1937

    Article  MathSciNet  MATH  Google Scholar 

  • Moor T, Raisch J (1999) Supervisory control of hybrid systems within a behavioural framework. Syst Control Lett 38:157–166

    Article  MathSciNet  MATH  Google Scholar 

  • Paulson L, Nipkow T, Wenzel M (2011) Isabelle/HOL

  • Ramadge P, Wonham W (1984) Supervisory control of a class of discrete event processes. In: Bensoussan A, Lions J (eds) Analysis and Optimization of Systems, volume 63 of Lecture Notes in Control and Information Sciences. Springer Berlin Heidelberg, pp 475–498

  • Schmuck A-K, Raisch J (2014) Asynchronous l-complete approximations. Syst Control Lett 73(0):67– 75

    Article  MathSciNet  MATH  Google Scholar 

  • Schmuck A-K, Schneider S, Raisch J, Nestmann U (2014) Extending supervisory controller synthesis to deterministic pushdown automata—enforcing controllability least restrictively. In: Proceedings of the 12th IFAC - IEEE International Workshop on Discrete Event Systems, pp 286–293

  • Schneider S (2014) Behavioral optimizations for deterministic pushdown automata. In: (submitted for publication)

  • Schneider S, Nestmann U (2014) Enforcing operational properties including blockfreeness for deterministic pushdown automata

  • Schneider S, Schmuck A-K, Raisch J, Nestmann U (2014) Reducing an operational supervisory control problem by decomposition for deterministic pushdown automata. In: Proceedings of the 12th IFAC - IEEE International Workshop on Discrete Event Systems, pp 214–221

  • Sreenivas RS (1993) On a weaker notion of controllability of a language k with respect to a language l. IEEE Trans Autom Control 38(9):1446–1447

    Article  MathSciNet  MATH  Google Scholar 

  • Tabuada P (2009) Verification and Control of Hybrid Systems - A Symbolic Approach, vol 1. Springer Science+Business Media

  • Wonham WM, Ramadge PJ (1987) On the supremal controllable sublanguage of a given language, vol 25, pp 637–659

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Anne-Kathrin Schmuck.

Additional information

This work was partially supported by the HYCON2 Network of excellence (FP7 ICT 257462).

Appendix A: Counterexample

Appendix A: Counterexample

In this appendix, following Schmuck et al. (2014) (Appendix A) the algorithm presented by Griffin (2008, p.827) and Griffin (2007, p.64) is applied to an example. It will be shown that this represents a counterexample to Theorem 3.5 by Griffin (2008) and Theorem 5.2.5 by Griffin (2007) since the final DPDA does not realize the supremal controllable sublanguage of the given prefix closed deterministic context free specification language (which is required to be a subset of the given prefix closed regular plant language). Therefore we claim that the problem of automatically calculating a supremal controllable sublanguage of a DCFL was not solved by Griffin in (2007, 2008).

The algorithm is initialized with a DFA G and a DPDA M realizing the plant and the specification, respectively, s.t. \(\mathcal {L}_{m}(G)=\mathcal {L}_{um}(G), \mathcal {L}_{m}(M)=\mathcal {L}_{um}(G)\), and \(\mathcal {L}_{m}(M)\subseteq \mathcal {L}_{m}(G)\). Observe that the DFA G and the DPDA M depicted in Fig. 8 satisfy these requirements since their languages are given by

$$\begin{array}{@{}rcl@{}} &&\mathcal{L}_{m}(G)=\mathcal{L}_{um}(G)=\{a^{n},a^{n}b,a^{n}bu|n\in \mathbb{N}\}\quad\text{and}\\ &&\mathcal{L}_{m}(M)=\mathcal{L}_{um}(M)=\{a^{n},a^{m}b,a^{k}bu\big|n,m,k\in \mathbb{N},m>0,k>1\}, \end{array} $$
Fig. 8
figure 8

DFA G (left) and DPDA M (right) realizing plant and specification, respectively

where Σc = {a, b} and Σ u c = {u}. Using these automata, the construction follows seven steps.

  1. 1.

    Construct M , depicted in Fig. 9, by making M scan its entire input, using the algorithm in Hopcroft and Ullman (1979, Lemma10.3).

  2. 2.

    Construct a DPDA M that accepts the complement of L M using the algorithm by Hopcroft and Ullman (1979, Thm.10.1). For the considered example M is identical to M in Fig. 9 but with exchanged non-marking and marking states, i.e., F = {q d }.

  3. 3.

    Construct a DPDA M ″′ that accepts \(\mathrm {L}^{\mathrm {M}}_{\mathrm {c}}(M)\cap \mathrm {L}_{m}(G)\), i.e., calculate the cross product of G and M using the algorithm by Hopcroft and Ullman (1979, Thm.6.5).

  4. 4.

    Construct M 1, depicted in Fig. 10, as the accessible part of M ″′, using the algorithm by Griffin (2006, Thm.4.1).

  5. 5.

    Construct a predicting machine to observe so called μ-reverse paths using the algorithm by Hopcroft and Ullman (1979, p.240). For the considered example, the construction simply defines an additional stack symbol μ γ ,∀γ∈Γ s.t.

    $$\mu_{\gamma}:=\left\{q\in Q_{1}\setminus F_{1}\left|\exists q^{\prime}\in F_{1}, v\in{\Sigma}_{\mathsf{uc}}^{*}\cdot (\bot,(q,w,\gamma\cdot s))\vdash^{\ast}_{M_{1}}(\bot,(q^{\prime},w\cdot v,s^{\prime}))\right.\right\} $$

    which denotes the set of unmarked states in M 1 from which a derivation starting with stack-top γ, generating a sequence of uncontrollable symbols \(v\in {\Sigma }_{\text {uc}}^{*}\) and reaching a marking state q (i.e., a so called μ-reverse path), exists. For M 1, depicted in Fig. 10, this gives μ = {(p 1, q 1)} and μ = ∅. The predicting machine \(M_{1}^{\mu }\), depicted in Fig. 11, is then identical to M 1 but uses pairs [γ, μ γ ] as stack.

  6. 6.

    Construct M 2, depicted in Fig. 12, by deleting all transitions

    $$\delta_{cp}:=\left\{(q,\sigma,\gamma,\gamma^{\prime}\cdot s,q^{\prime})\in\delta_{M}\left| \left( \begin{array}{l} (q,\sigma,\gamma,[\gamma^{\prime},\mu_{\gamma^{\prime}}]\cdot s,q^{\prime})\in \delta_{M_{1}^{\mu}}\\ \wedge\sigma\in {\Sigma}_{\textsf{c}} \wedge q^{\prime}\in\mu_{\gamma^{\prime}} \end{array}\right)\right.\right\} $$

    in M which produce a stack-top in q which enables a μ-reverse path starting in q . For M and \(M_{1}^{\mu }\), depicted in Figs. 8 and 11, respectively, observe that \(e=((p_{0},q_{0}),b,[\bullet ,\mu _{\bullet }],\lambda ,(p_{1},q_{1}))\in \delta _{M_{1}^{\mu }}\) is the only ingoing transition to (p 1, q 1) (where the only μ-reverse path starts for stack-top □, since μ = {(p 1, q 1)}) and, since M 1 is trim, eventually leads to the stack-top □ in (p 1, q 1). Using the corresponding transition to e in M, this gives δ c p = {(q 0, b,∙, λ, q 1)}. By deleting δ c p in M, we obtain M 2, depicted in Fig. 12.

  7. 7.

    Construct M 3, depicted in Fig. 13, as the accessible part of M 2, using the algorithm by Griffin (2006, Thm.4.1). If δ c p in step 6 is empty, the algorithm terminates. Otherwise, the algorithm is restarted with M = M 3.

Fig. 9
figure 9

DPDA M , with Ψ=Φ∖u,∙,∙ and Φ={a,□,□;a,∙,∙;b,□,□;b,∙,∙;u,□,□;u,∙,∙}

Fig. 10
figure 10

DPDA M 1, with (i j):=(p i , q j )

Fig. 11
figure 11

DPDA \(M_{1}^{\mu }\) with μ = {(p 1, q 1)} and μ = ∅. The set of μ-reverse paths is depicted in red (dashed) while the set of edges in δ c p is depicted in blue (dotted)

Fig. 12
figure 12

DPDA M 2

Fig. 13
figure 13

DPDA M 3

Obviously, M 3 does not have further controllability problems. Therefore, the algorithm would redo steps 1-6 and then return M 3.

Now observe that the specification language \(\mathcal {L}_{m}(M)\) restricts the plant language \(\mathcal {L}_{m}(G)\) such that u cannot occur after exactly one a. This generates a controllability problem for the word ab only. Using (3) in Section 3, the supremal controllable sublanguage of \(\mathcal {L}_{m}(M)\) for this example is given by

$$\begin{array}{@{}rcl@{}} \mathcal{K}&=&\{w\in \mathcal{L}_{m}(M)| \forall w^{\prime}\sqsubseteq w\cdot w^{\prime}\neq ab\} =\mathcal{L}_{m}(M)\setminus\{ab\} \end{array} $$
(20)
$$\begin{array}{@{}rcl@{}} &=&\{a^{n},a^{m}b,a^{k}bu\big|n,m,k\in \mathbb{N},m,k>1\} \end{array} $$

implying that \(\mathcal {L}_{m}(M_{3})=\{a^{n}\,|\,n\in \mathbb {N}\}\) is a strict subset of \(\mathcal {K}\) which is an obvious contradiction to Theorem 3.5 by Griffin (2008). Furthermore, \(\mathcal {K}\) in (20) cannot be realized using the state and transition structure of M and only deleting existing transitions.

The automatic synthesis of a DPDA realizing \(\mathcal {K}\) for this example is provided as an example within our pushdown-plug-in for libFAUDES (2013).

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Schmuck, AK., Schneider, S., Raisch, J. et al. Supervisory control synthesis for deterministic context free specification languages. Discrete Event Dyn Syst 26, 5–32 (2016). https://doi.org/10.1007/s10626-015-0221-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10626-015-0221-2

Keywords

Navigation