Post on 09-Feb-2016
description
1
Síntesis Algebraica de Controladores
LógicosPor: Ulises Martinez Araiza
umartinez@gdl.cinvestav.mx
www.ulisesmartinez.com
2
Introducción
3
El método propuesto fue desarrollado para obtener las leyes de control a ser implementadas en controlador lógico dada por una especificación dada en lenguaje natural.
El modelo presentado en la figura tiene p entradas Booleanas (ui), q salidas Booleanas (yj) y r variables de estados (xl)
4
El comportamiento de este modelo puede ser completamente definido por medio de (q + r) funciones de conmutación de (p + r) variables.
El modelo admite hasta 2r estados diferentes. El modelo admite hasta 2p entradas diferentes. El modelo admite hasta 2q salidas diferentes. Por estas razones se pueden expresar hasta (2(2^(p+r)))
(q+r) diferentes comportamientos secuenciales.
5
Para lidiar con esta explosión combinatoria, las funciones de conmutación serán manejadas a través de representaciones simbólicas.
Cada entrada ui y cada salida yj serán representadas como funciones de conmutación: Ui y Yj.
Para tomar en cuenta el aspecto recursivo de las variables de estado, cada una de estas será representada por dos funciones de conmutación: Xl y
pXl.
La propuesta es obtener las funciones de conmutación Yj y Xl resolviendo un Sistema de ecuaciones Booleanas el cual representa formalmente los requerimientos entregados por el diseñador.
6
Los datos de entrada del método propuesto son requerimientos de seguridad y funcionales expresados informalmente dados por el diseñador.
7
El primer Paso es la formalización de los requerimientos con una descripción algebraica.
El Segundo paso consiste en analizar los requerimientos para conocer si estos son consistentes entre ellos. Si existe una inconsistencia, las condiciones para las
mismas son entregadas al diseñador.
Si la coherencia es probada, la descripción de los requerimientos se convierte en un sistema de ecuaciones.
El tercer paso es sintetizar las reglas de control, donde se resuelve el sistema de ecuaciones entregando las soluciones paramétricamente.
Finalmente el diseñador elije la solución pudiendo seguir un criterio de optimización.
8
En los métodos de diseño tradicionales, el proceso de diseño de un controlador lógico es un proceso interactivo hasta que se llega a una solución aceptable.
Se pueden introducir nuevos requerimientos en la búsqueda de la solución después del análisis de las soluciones parciales o la detección de inconsistencias.
Diseñar un controlador con una técnica de síntesis automática es un proceso en el cual el diseñador juega un papel importante.
Este método esta basado en un proceso interactivo con el diseñador.
9
Bases MatemáticasCaracterísticas típicas de las Algebras Booleanas
10
Definición 1: Algebra Booleana:Sea B un conjunto no vacío que contiene dos elementos especiales 0 y 1, y en los cuales definimos dos operaciones binarias cerradas +, ·, y la operación unaria ~.
Entonces (B,+, ·,~,0,1) es llamada un Algebra binaria si las siguientes condiciones se satisfacen para todo x, y, z en B:
10
10
)()()(
)()()(
xxxx
zxyxzyx
zxyxzyx
xyyx
yyyxLeyes Conmutativas
Leyes Distributivas
Leyes de Identidad
11
Definición 2: Formula Booleana:Una Formula Booleana (o Expresión Booleana) en B es cualquier formula la cual represente una combinación de los miembros de B y las operaciones de +, ·, o ~.
Por construcción, cualquier formula booleana en B representa un y solo un miembro de B. Dos formulas booleanas son equivalentes si y solo si ellas representan el mismo miembro en N.
La formula F construida con los miembros:
De B es denotada como:
),...,( n1 F
),...,( n1
12
Teorema 1: Expansión de Boole de una formula Booleana
Sea (α1,…, αn) con n miembros de B \ {0,1}. Cualquier formula booleana F(α1,…, αn) puede ser expandida como:
Donde F0(α2,…, αn) y F1(α2,…, αn) son dos formulas booleanas con solo (α2,…, αn). Estas dos formulas pueden ser directamente obtenidas de F (α1,…, αn) mediante:
1n211n20n1 ),...,(),...,(),...,( FFF
),...,,(),...,(
),...,,(),...,(
n2n21
n2n20
1
0
FF
FF
13
Definición 3: Relación de inclusiónSi , se define si y solo si .
También tenemos que:
Debido a que esta relación es:
Reflexiva
Anti simétrica
Transitiva
Esta relación define un orden parcial entre los miembros de B. Este es un orden parcial debido a que algunos elementos no son comparables.
Byx, yx xyx
0yxyx
0yxxyx
zxz,yy,x
yxx,yy,x
xx
:entonces
:entonces
14
Algebra Booleanapara funciones de conmutación de n-variables.
15
Definición 4: Funciones de conmutación de
n-variablesUna función de conmutación de n variables es el mapeo de la forma:
El dominio de esta función es de 2n elementos mientras que el condominio tiene 2 elementos. Por lo tanto existen 2^(2n) funciones conmutables de n variables.
)b,...,(b)b,...,(b
{0,1}B:donde
BB:
n1n1
n
f
f
16
Sea Fn(B) el conjunto de todas las funciones conmutables de n variables.
Fn(B) contiene (n + 2) funciones especificas, dos funciones constantes (0, 1)
y n funciones de proyección fiProj. Estas funciones se
definen de la siguiente manera:
in1
niProj
b)b,...,(b
BB:f
0)b,...,(b
BB:0
n1
n
1)b,...,(b
BB:1
n1
n
17
Estructura del Algebra BooleanaFn(B) puede ser equipada con tres operaciones cerradas:
Donde:
(Fn(B),+, ·,~, 0, 1) es un Algebra Booleana. Cada miembro puede ser representado como la composición de Fn(B) y las operaciones definidas.
gf(f,g)
(B)F(B):F n2
n
gf(f,g)
(B)F(B):F n2
n
f(f)
(B)F(B):F nn
),...,b(f)(b),...,b(bf
),...,b(g)(b),...,b(f)(b),...,bg)(b(f
),...,b(g)(b),...,b(f)(b),...,bg)(b(f
,B),...,b(b
n1n1
n1n1n1
n1n1n1
nn1
18
Formulas Booleanas y las relaciones en Fn(B)
Como (Fn(B),+, ·,~, 0, 1) es un Algebra Booleana, es posible escribir formulas Booleanas de funciones de conmutación de n-variables y sus relaciones. Las relaciones de equivalencia e inclusión pueden ser representadas de la siguiente manera: Equivalencia: f y g son equivalentes (f = g) si y solo si:
Esta relación se usa para traducir requerimientos como: f y g nunca son verdaderas simultáneamente:
Una de las funciones booleanas, f y g, siempre es verdadera:
),...,bg(b),...,bf(b
B),...,b(b
n1n1
nn1
0gf
1gf
19
Inclusión: f esta incluido en g , (f ≤ g) si y solo si:
Esta relación frecuentemente se usa para expresar requerimientos funcionales y propiedades de dependencia. Por ejemplo, la relación (f ≤ g) puede ser la traducción formal de alguno de los siguientes requerimientos dados en lenguaje natural:
Cuando f es verdadera, g también es verdadera. Es suficiente tener f para tener g. Es necesario tener g para tener f.
1]),...,b[g(b0]),...,b[f(b
B),...,b(b
n1n1
nn1
20
Solución de ecuacionesBooleanas sobre el algebra Fn(B)
21
Muchos problemas del algebra Booleana pueden ser reducidos reducidos a resolver una ecuación de la forma:
Sobre el algebra booleana B. Consideraremos un Sistema booleano compuesto de m relaciones entre miembros de Fn(B) para los cuales k de ellas son consideradas incógnitas.
Forma canónica de un Sistema booleano sobre el algebra Fn(B)
Considere el algebra (Fn(B),+, ·,~, 0, 1).
El conjunto (f1Proj,…,fn
Proj) de n funciones de proyección será denotado como Proj.
El conjunto (x1,…,xk) de k elementos considerados como incógnitas será denotado como Xk.
0f(X)
22
Teorema 2: Reducción del conjunto de relaciones
Cualquier conjunto de relaciones simultáneamente afirmado de funciones de conmutación de n-variables puede ser reducido a una sola relación equivalente tal que:
Para obtener esta relación equivalente, es necesario: Reescribir la igualdad de acuerdo a:
0,Proj)(X kF
0Proj),(XProj),(XProj),(X
Proj),(XProj),(X
k1k2k1
k2k1
Proj),(XFFFF
FF
k2
23
Reescribir la inclusión de acuerdo a:
Agruparlas igualdades de acuerdo a:
0Proj),(XProj),(X
Proj),(XProj),(X
k2k1
k2k1
FF
FF
0Proj),(XProj),(X
0Proj),(X
0Proj),(X
k2k1
k2
k1
FF
F
F
24
Para poder escribir una forma canónica para un Sistema Booleano, se introducirá la siguiente notación:
Esta notación se entiende a los vectores de la siguiente manera:
xxxx
BFx n
10
)(
kik ak
aai
ki
i
Ak
kkk
knkk
xxxX
aaA
BFxxX
...
}1,0{),...,(
)(),...,(
11
1
1
1
25
Teorema 3: Forma canónica de una ecuación Booleana
Cualquier ecuación Booleana Eq(Xk, Proj) = 0 puede ser expresada en su forma canónica:
Donde Eq(Xk, Proj) son los 2k discriminantes de Eq(Xk, Proj) de acuerdo a Xk. Esta formula canónica es obtenida expandiendo Eq(Xk, Proj) de acuerdo a las k incógnitas (x1,…,xk). Por ejemplo:
0),(}1,0{
k
kk
Akk
A
XProjAEq
xProjEqxProjEqProjxEq ),1(),0(),(
26
Teorema 4: Solución de una ecuación de una incógnita
La ecuación Booleana sobre Fn(B):
Para la cual su forma canónica es:
Es consistente (tiene al menos una solución) si y solo si se satisfice la siguiente condición:
En este caso, la forma general de la solución es:
Donde p es un parámetro arbitrario, por ejemplo, un miembro elegido libremente de Fn(B).
xProjEqxProjEqProjxEq ),1(),0(),(
)1(0),( ProjxEq
)2(0),1(),0(),( ProjEqProjEqProjxEq
)3(),1(),0( ProjEqpProjEqx
27
Esta solución también puede ser expresada de la siguiente manera:
Se puede notar que la misma solución puede ser descrita con dos diferentes parámetros. Para establecer una biyección entre el conjunto de soluciones y el conjunto de valores del parámetro, es necesario imponer la siguiente restricción al parámetro p:
),1(),0(
)),0((),1(
ProjEqpProjEqpx
pProjEqProjEqx
),1(),0( ProjEqProjEqp
28
Teorema 5: Solución de una ecuación de k incógnitas
Una ecuación de k incógnitas puede ser resuelta resolviendo sucesivamente k ecuaciones de una sola incógnita.
Si consideramos una ecuación de k incógnitas como una ecuación de una sola incógnita xk, la condición de consistencia corresponde a una ecuación de (k – 1) incógnitas. El proceso puede ser iterado hasta x1.
Después de sustituir S(x1) por x1 en la ultima ecuación, es posible encontrar la solución para x2. Entonces se aplica este procedimiento hasta obtener S(xk).
29
La ecuación Booleana sobre Fn(B):
Es consistente (tiene una solución) si y solo si se satisfice la siguiente condición:
Cuando se satisfice (5), la ecuación (4) admite una o mas soluciones de k-tuplas (S(x1),…, S(xk)) donde cada componente S(xi) es definida por:
)4(0),(0 ProjXEq k
)5(0),(0}1,0{
ProjAEq kA k
k
)6(),,1(),,0()( 1}1,0{
1}1,0{
ProjAEqpProjAEqxS ikiA
iikiA
i ikik
ikik
30
Donde:
Y pi es un parámetro arbitrario (un miembro libremente elegido de Fn(B)).
Es importante notar que el orden en el cual las incógnitas son tratadas solo afectan la forma paramétrica de la k-tupla solución.
Esto es debido a que la misma la k-tupla solución puede ser representada con varias formas paramétricas distintas.
)(111 ),,...,,(),,...,(ii xSxkiiikii ProjxxxEqProjxxEq
31
Conclusiones Parciales
Gracias a los teoremas presentados en esta sección, es posible obtener una representación paramétrica de todas las soluciones de cualquier conjunto de relaciones afirmadas simultáneamente con k incógnitas si una solución existe.
Como el algebra Booleana Fn(B) esta equipada con un orden parcial, la comparación de las soluciones conforme a un criterio dado puede ser previsto.
32
Solución de inconsistenciasde ecuaciones Booleanas sobre Fn(B)
33
En la practica, es muy difícil para el diseñador especificar todos los requerimientos de un sistema complejo sin inconsistencias.
Esta es la razón por la que los requerimientos dados por el diseñador frecuentemente son declarados inconsistentes de acuerdo al teorema 5.
Dado que la condición de inconsistencia es una formula booleana, es posible usarla para la detección del origen de las inconsistencias.
34
Se deben considerar 2 casos:
Varios requerimientos no pueden ser respetados simultáneamente. En este caso, una jerarquía entre los requerimientos puede ser propuesta para encontrar una solución. Los requerimientos de menor prioridad deben ser corregidos para lograr la consistencia.
Las inconsistencias detectadas refieren a combinaciones de funciones de proyección en la cual el diseñador sabe que no hay solución. Para evitar el bloqueo del proceso de síntesis, se introducen nuevas hipótesis.
35
Teorema 6: Solución de una ecuación Booleana de acuerdo a hipótesis entre funciones de proyección.
El siguiente problema:
Donde Eq0(Xk, Proj) es la ecuación a resolver y A(Proj) son las hipótesis, admite la misma solución que:
(Proj)Proj),(XEq k0 A
0(Proj)
0Proj),(XEq k0
A
36
Teorema 7: Solución de una ecuación Booleana de acuerdo a reglas de prioridad entre requerimientos.
El siguiente problema:
Donde: FH(Xk, Proj) = 0 es la expresión formal de los
requerimientos con la mas alta prioridad.
FL(Xk, Proj) = 0 es la expresión formal de los requerimientos con la mas baja prioridad.
HR»LR0Proj),(XOR
0Proj),(XLR
0Proj),(XHR
kO
kL
kH
F
F
F
37
FO(Xk, Proj) = 0 es la expresión formal de los otros requerimientos.
HR»LR es la regla de prioridad entre requerimientos inconsistentes.
Admite la misma solución que el Sistema de ecuaciones:
Donde I(Proj) es la condición de inconsistencia entre los requerimientos HR y LR:
0Proj),(X
(Proj)Proj),(X
0Proj),(X
kO
kL
kH
F
IF
F
Proj)),(AProj),(A((Proj) kLkH{0,1}A k
k
FFI
38
Ejemplo:
Se tomaran en cuenta los siguientes requerimientos para este caso de estudio: R1: Existen 3 modos exclusivos (Automático, Manual, y Fallo).
R2: Cuando se aprieta el botón de emergencia (Esb), la prensa se fija en modo Fallo.
R3: La prensa esta en modo automático si y solo si el switch de 3 posiciones esta colocado en la posición ‘SbA’.
R4: La prensa esta en modo manual si y solo si el switch de 3 posiciones esta colocado en la posición ‘SbM’.
0FailManualFailAutoManualAuto
FailEsb
SbAAuto
SbMManual
39
Ejemplo: Al sintetizar estos requerimientos se encuentra la siguiente
condición de inconsistencia:
SbA·SbM: Que pasa si los modos Automático y Manual están simultáneamente seleccionados? Tenemos que considerar que esto no es posible (ya que el switch solo puede estar en 3 posiciones) y entonces tenemos que añadir la siguiente hipótesis:
Esb·SbA: Que pasa si el botón de emergencia se activa mientras se esta en modo automático? Se tiene que considerar la prioridad que tiene el modo Fallo sobre el modo automático por razones de seguridad, se agrega la regla de prioridad:
Esb·SbM: Que pasa si el botón de emergencia se activa mientras se esta en modo manual? Se tiene que considerar la prioridad que tiene el modo Fallo sobre el modo manual por razones de seguridad, se agrega la regla de prioridad:
SbMEsbSbAEsbSbMSbA 0I
0SbMSbA
»R3RR }2,1{
»R4RR }2,1{
40
Solución optimade ecuaciones Booleanas sobre Fn(B)
41
El objetivo es ser capaces de obtener automáticamente la forma paramétrica de las k-tuplas soluciones de Fn(B), tal que esta satisfaga no solo la ecuación de requerimientos (Eq(Xk, Proj) = 0) dada en formulas booleanas, sino también maximizar o minimizar una formula booleana de estas funciones (F(Xk, Proj)), correspondiente al criterio de optimización deseado.
Hablando generalmente, la búsqueda de las mejores tuplas de solución de acuerdo con un criterio dado cuando el espacio de soluciones esta compuesto de valores discretos es un problema matemático complejo.
A veces es necesario construir comparaciones lado por lado de cada solución para poder identificar la mayor.
42
Es posible obtener la forma paramétrica investigada de las k-tuplas gracias a los siguientes resultados:
Cuando una ecuación entre funciones Booleanas tiene una o mas tuplas de solución en Fn(B), cada formula establecida de estas funciones puede ser re-escrita gracias a las funciones de proyección de Fn(B) y los parámetros libres de Fn(B) que están describiendo estas tuplas de soluciones.
Cada formula Booleana establecida de las funciones de proyección de Fn(B) y de los parámetros libres de Fn(B) tienen un máximo único y un mínimo único. Estos extremos pueden ser representadas solo gracias a las funciones de proyección de Fn(B).
43
Por lo tanto es posible re-escribir el problema inicial:
En un Sistema de 2 ecuaciones a resolver
Donde
Proj)),(Xmax(
0Proj),(XEq
kC
k0
F
(Proj)Proj),(X
0Proj),(XEq
MaxCkC
k0
FF
)( Proj),(XMax(Proj) kC0}Proj),Eq(XX{
MaxCkk
FF
44
Extremo de una formula Booleana de acuerdo a miembros elegidos libremente de Fn(B)
Considere el algebra Booleana de funciones de conmutación de n-variables (Fn(B),+, ·,~, 0, 1):
Sea (f1Proj,…,fn
Proj) el conjunto de n funciones de proyección de Fn(B).
Sea (p1,…,pk) el conjunto de k elementos de Fn(B) considerados como miembros libremente elegidos. Sea Pk el vector correspondiente
Cualquier formula F(Pk, Proj) para la cual Pk son los miembros libremente elegidos de Fn(B) define un subconjunto de Fn(B).
De acuerdo con la relación ≤, los elementos de este subconjunto pueden ser comparados. En este caso especifico, el subconjunto definido por F(Pk, Proj) admite un elemento mínimo y un elemento máximo.
45
Teorema (8): Mínimo de una función Booleana
Cualquier formula F(Pk, Proj) para la cual Pk son miembros libremente elegidos de Fn(B) admite un mínimo definido como:
Teorema (9): Máximo de una función Booleana
Cualquier formula F(Pk, Proj) para la cual Pk son miembros libremente elegidos de Fn(B) admite un máximo definido como:
Proj),(AProj)),(P(Min k{0,1}A
k(B)FP k
kk
nk
FF
Proj),(AProj)),(P(Max k{0,1}A
k(B)FP k
kk
nk
FF
46
Resolviendo el problema de optimización Considere el algebra Booleana de funciones de conmutación de n-variables (Fn(B),+, ·,~, 0, 1):
Sea (f1Proj,…,fn
Proj) el conjunto de n funciones de proyección de Fn(B). Sea Proj el vector correspondiente.
Sea (x1,…,xk) el conjunto de k elementos de Fn(B) considerados como incógnitas. Sea Xk el vector correspondiente.
Sea (p1,…,pk) el conjunto de k elementos de Fn(B) considerados como miembros libremente elegidos. Sea Pk el vector correspondiente.
Sea (Eq(Xk, Proj) = 0) la ecuación booleana a resolver.
Sea FC(Xk, Proj) la formula Booleana con el criterio de optimización dado (maximización o minimización).
47
El método propuesto, para obtener la forma paramétrica de la k-tupla solución de funciones de conmutación de (Eq(Xk, Proj) = 0) de acuerdo al criterio de optimización FC(Xk, Proj) se compone de 5 pasos:
1. Establecer la forma paramétrica de la k-tupla solución de (Eq(Xk, Proj) = 0) con ayuda del teorema 5.
2. Establecer la forma paramétrica del criterio de optimización dado FC(Xk, Proj) substituyendo S(xi) por xi. El resultado de esta sustitución será denotado por FSC(Pk, Proj).
3. Calcular el extremo de FSC(Pk, Proj) de acuerdo al teorema 6 o 7. El resultado será denotado por FEC(Proj).
4. Remplazar el criterio dado por la relación de equidad:
FC(Xk, Proj) = FEC(Proj)
5. Establecer la forma paramétrica de la k-tupla solución del problema equivalente:
(Proj)Proj),(X
0Proj),Eq(X
ECkC
k
FF
48
Ejemplo: El siguiente modelo representa las entradas y condiciones que
tiene el controlador de un Sistema de distribución de agua con 2 bombas.
Los requerimientos son:
Las bombas no pueden funcionar simultáneamente.
Si la bomba 1 fallo, entonces no puede ser utilizada.
Si la bomba 2 fallo, entonces no puede ser utilizada.
Si hay un fallo global, ninguna de las bombas puede ser usada.
Es necesario que se tenga una solicitud de agua para operar las bombas.
021 PP
11 PF
22 PF
)21( PPGF
RqPP )21(
49
Ejemplo: El problema a resolver es el siguiente:
Adicionalmente se agregan los siguientes criterios de optimización en orden de prioridad: Se busca maximizar la distribución del agua:
Se minimiza la posibilidad de iniciar una bomba:
Se busca maximizar un orden de prioridad entre las bombas:
RqPP
PPGF
PF
PF
PP
)21(
)21(
22
11
021
)21( PPMax
))22()11(( PPPPMin pp
))2Pr()1((Pr PPMax
50
Ejemplo:1. Se obtiene la solución sin criterios de optimización:
2. Se obtiene la forma paramétrica del primer criterio
3. Se maximiza el criterio:
4. Se resuelve la ecuación con el criterio de optimización:
)1(22
11
12
1
pFFGFRqpP
FGFRqpP
)21()21( 21 FpFpGFRqPP
)21()21( FFGFRqPP
)1(22
)2(11
)21()21(
)21(
)21(
22
11
021
1
1
FpFGFRqP
FpFGFRqP
FFGFRqPP
RqPP
PPGF
PF
PF
PP
51
Ejemplo: Se realiza el mismo procedimiento para los otros dos criterios.
El resultado final se muestra a continuación:
)12)12(Pr1(22
)21)21(Pr2(11
PPPPFFGFRqP
PPPPFFGFRqP
pppp
pppp
52
Conclusiones ParcialesGracias a los teoremas 8 y 9, es posible obtener una representación paramétrica de las soluciones optimas de acuerdo a un criterio dado, de cualquier conjunto de relaciones simultáneamente acertadas con k incógnitas si esta solución existe.
El método propuesto también permite asociar simultanea o secuencialmente varios criterios:
Cuando muchos criterios se tartán simultáneamente, el problema equivalente puede ser incoherente o puede no admitir solución. Esto es en caso de que se den criterios antagonistas.
Cuando varios criterios son tratados secuencialmente, las soluciones obtenidas satisfacen los criterios dados en orden de prioridad. El primer criterio se satisfice sin restricción. El Segundo criterio es usado únicamente para obtener soluciones que satisfacen el primer criterio.
53
Síntesis de reglas de ControlModelado de aspectos secuenciales
54
Los resultados matemáticos presentados anteriormente permiten diseñar sistemas lógicos, empezando por los requerimientos dados por relaciones algebraicas genéricas.
Estos resultados pueden ser usados directamente para sintetizar controladores lógicos combinatorios. Sin embargo, se necesita dar información adicional para poder tratar la parte secuencial del Sistema.
Durante la etapa de diseño, el diseñador puede usar diversos formalismos o recursos para poder modelar comportamientos secuenciales.
Cuando este paso termina, estos modelos se traducen en programas algebraicos los cuales se adaptan mas a su ejecución en controladores programables.
55
El modelo de la figura esta compuesto por dos bloques combinatoriales, el bloque de “estados lógicos” y el bloque de “salidas lógicas”.
Los valores de las variables de estado x1 son calculadas por el bloque de estados lógicos, y los valores de las salidas son calculados por el bloque de salidas lógicas de acuerdo a las siguientes ecuaciones:
(k))x(k),...,x(k),f(k),...,f(Y(k)y
1))-(kx1),...,-(kx(k),f(k),...,f(S(k)x
m1n
Proj1
Projjj
m1n
Proj1
Projll
56
En este Sistema de ecuaciones, x1(k) es el valor de x1 en el instante k y x1(k-1) es el valor de x1 en el instante inmediato anterior (k – 1).
Es posible tratar esa ecuación recurrente usando las herramientas formales presentadas anteriormente asociándole un diferente valor de variable al valor actual y al valor anterior en la misma variable.
57
Síntesis de condiciones de TransiciónEn modelos de estados.
58
Para poder crear modelos de maquinas de estados tomando en cuenta comportamientos secuenciales dentro de nuestro Sistema, [4] sugiere técnicas para poder generar estos modelos: Se usan las técnicas de síntesis de reglas de control para modelar
aspectos secuenciales, hacienda uso de variables para estado actual y estado siguiente. Las transiciones se representaran como variables de nuestro Sistema de ecuaciones.
Se utiliza la relación de equivalencia entre las variables que queremos modelar como estados y el estado Si del sistema.
Se utiliza la relación de equivalencia para describir el estado inicial de nuestro Sistema en nuestro modelo de estados:
nn
00
xS
xS
0S
1S
n
0
59
Finalmente se utilizan reglas especificas del comportamiento secuencial a modelar:
Primero, se agregan las condiciones de transición donde la divergencia a un nuevo estado debe ser mutuamente excluyente. Esto es, debe haber reglas para que no se pueda efectuar mas de una transición de un estado al otro en un mismo momento k:
La segunda regla es crear condiciones para que el modelo sea estable. No debe de haber una evolución fugitivo. Esto es que no debe haber dos transiciones sucesivas en el mismo paso:
0TTT
0TTT
cnncn1cn0
c0nc01c00
0TT(TTT(T
0T(TT(T
1)-cn(ncn1cn01)n-c(nc1nc0n
c0nc01cn0c10
))
))
60
Una vez agregadas las nuevas reglas, estas se resuelven con las técnicas ya conocidas y se elige la solución apropiada de acuerdo al criterio del diseñador o a algún criterio de optimización el cual se decida utilizar para la selección automática de la solución.
Regularmente estos sistemas entregaran algunos parámetros a ser ajustados cuando el Sistema ofrece redundancia y esto implicara el decidir la prioridad de alguna transición con respecto a otra, lo cual se resuelve nuevamente con un criterio de optimización o bien a criterio del diseñador.
Con esta técnica finalmente se pueden sintetizar reglas desde un modelo de estados en una representación algebraica.
61
Ejemplo: Relacionar variables con estados:
Inicializar el sistema:
Divergencia exclusiva:
Estabilidad en el sistema:
Finalmente se agregan las reglas de control especificadas en los requerimientos para las transiciones de un estado a otro.
22
11
PumpS
PumpS
0S
0S
1S
2
1
0
0Tc21Tc20
0Tc12Tc10
0Tc02Tc01
0Tc02)(Tc01Tc20)(Tc10
0Tc21)(Tc20Tc12)(Tc02
0Tc12)(Tc10Tc21)(Tc01
62
Conclusiones y Critica
63
Conclusiones Algunas dificultades comunes dentro de los diferentes trabajos
sobre síntesis algebraica son las que aparecen al momento de transformar de expresiones informales del conocimiento del Sistema a su formalización.
La propuesta presentada es un proceso iterativo que permite lidiar con las inconsistencias del os requerimientos durante la síntesis del controlador.
Este enfoque se basa en un método de síntesis algebraica de ecuaciones booleanas, para poder formalizar de forma segura los requerimientos y su implementación en un controlador.
64
Debido a que los problemas de estos métodos están localizados entre la frontera de las partes formales y las informales del Sistema, se requiere la intervención del diseñador. Sin embargo, esta intervención puede ser guiada por el método provisto formalmente.
Cuando se presentan varias soluciones, es posible encontrar la mayor de acuerdo a un criterio de optimización. De esta manera el diseñador simplifica su trabajo debido a que son mas fáciles de expresar los comportamientos esperados
65
Critica Obtener las soluciones del problema requiere de un método de
resolución de ecuaciones booleanas, el cual es un problema en general NP el cual es difícil de ser tratado cuando este crece mucho.
Hasta ahora, solo se han tratado con sistemas los cuales toman en cuenta dos instantes en el Sistema (el actual y el anterior). No se toma en cuenta acciones mas atrás en el pasado o mas adelante en el futuro. Esto debido al tipo de lógica que utilizan.
66
¿Preguntas?
67
Referencias
[1] Leroux, Hélène. (2012). Algebraic synthesis of logical controllers with optimization criteria. 6th International Workshop on Verification and Evaluation of Computer and Communication Systems VECOS 2012.
[2] Roussel, Jean-Marc (2012). Algebraic synthesis of logical controllers despite inconsistencies in specifications. Discrete Event Systems, Volume # 11 | Part# 1
[3] Hietter, Yann (2008). Algebraic synthesis of dependable logic controllers. 17th IFAC World Congress, Seoul : Corée, République De
[4] Hietter, Yann (2008). Algebraic synthesis of transition conditions of a state model. Discrete Event Systems, 2008. WODES 2008. 9th International Workshop on.