Академический Документы
Профессиональный Документы
Культура Документы
AUTO
velocidad
distancia
AUTO
velocidad
distancia
AUTO
velocidad
distancia velocidad?
AUTO
velocidad
Velocidad del auto
LENTO NORMAL RAPIDO
1,0
0,8
0,6
0,4
0,2
10 20 30 40 50 60
Lenguaje XFL para Velocidad del
auto
En lenguaje XFL primero se crea el TIPO con
los términos linguísticos y luego se crea la
variable de entrada
● type Tva
Denominación del tipo
de variable
Palabra (Tipo variable auto)
reservada
(tipo)
Lenguaje XFL para Velocidad del
auto
En lenguaje XFL primero se crea el TIPO con
los términos linguísticos y luego se crea la
variable de entrada
● type Tva [0.0, 60.0; 61]
Cardinalidad:
Valor Número de
Valor máximo
mínimo valores enteros
de la variable
Lenguaje XFL para Velocidad del
auto
En lenguaje XFL primero se crea el TIPO con
los términos linguísticos y luego se crea la
variable de entrada
● type Tva [0.0,60.0;61] {
lento xfl.trapezoid(-0.1, 0.0, 10.0, 30.0);
Término
linguístico
Funciòn
Lenguaje XFL para Velocidad del
auto
En lenguaje XFL primero se crea el TIPO con
los términos linguísticos y luego se crea la
variable de entrada
● type Tva [0.0,60.0;61] {
lento xfl.trapezoid(-0.1,0.0,10.0,30.0);
normal xfl.trapezoid(10.0,30.0,40.0,60.0);
rapido xfl.triangle(40.0,60.0,60.01);
}
COMPLETAMOS LOS TÉRMINOS LINGUÍSTICOS
Lenguaje XFL para Velocidad del
auto
En lenguaje XFL primero se crea el TIPO con los términos
linguísticos y luego se crea la variable de entrada
● type Tva [0.0,60.0;61] {
lento xfl.trapezoid(-0.1,0.0,10.0,30.0);
normal xfl.trapezoid(10.0,30.0,40.0,60.0);
rapido xfl.triangle(40.0,60.0,60.01);
}
● system (Tva va : ) {
} Definimos la variable de entrada va
(velocidad del auto
Palabra reservada de tipo Tva)
(definir sistema fuzzy)
Distancia del auto
CERCA LEJOS MUY LEJOS
1,0
0,8
0,6
0,4
0,2
20 30 40 50 60 70 80 100
Lenguaje XFL para Distancia del
auto
type Tda [0.0,100.0;101] {
cerca xfl.triangle(-0.1,0.0,30.0);
lejos xfl.triangle(20.0,50.0,80.0);
muylejos xfl.triangle(70.0,100.0,100.01);
}
system (Tva va, Tda da : ) {
}
Velocidad del peatón
MUY LENTO CAMINAR CORRER CORRER
LENTO TROTAR MUCHO
1,0
0,8
0,6
0,4
0,2
1 2 3 4 5 6
Lenguaje XFL para Distancia del
peatón
type Tvp [0.0,6.0;7] {
muylento xfl.trapezoid(-0.1,0.0,1.0,2.0);
lento xfl.triangle(1.0,2.0,3.0);
caminar xfl.triangle(2.0,3.0,4.0);
trotar xfl.triangle(3.0,4.0,5.0);
correr xfl.triangle(4.0,5.0,6.0);
corrermucho xfl.triangle(5.0,6.0,6.01);
}
system (Tva va, Tda da : Tvp vp) {
}
Variable de salida vp
(velocidad del peatón)
BASE DE REGLAS
VELOCIDAD DISTANCIA VELOCIDAD
AUTO AUTO PEATON
Declaración de Declaración de
Variables de entrada variable de salida
Lenguaje XFL para la Base de
reglas
rulebase base (Tva va, Tda da : Tvp vp) using oper {
Operradores definidos
Lenguaje XFL para la Base de
reglas
rulebase base (Tva va, Tda da : Tvp vp) using oper {
if(va == lento & da == cerca) -> vp = caminar;
if(va == lento & da == lejos) -> vp = lento;
if(va == lento & da == muylejos) -> vp = muylento;
if(va == normal & da == cerca) -> vp = correr; Declaración de
reglas
if(va == normal & da == lejos) -> vp = trotar;
if(va == normal & da == muylejos) -> vp = caminar;
if(va == rapido & da == cerca) -> vp = corrermucho;
if(va == rapido & da == lejos) -> vp = correr;
if(va == rapido & da == muylejos) -> vp = trotar;
}
system (Tva va, Tda da : Tvp vp) {
base(va, da : vp); Definición de la base
en el sistema
}
Al código mostrado agregamos el que
corresponde a los operadores difusos que son
utilizados en nuestro caso
operatorset oper {
and xfl.min();
defuz xfl.CenterOfArea();
}
Unimos todo el código en orden:
Operadores
Tipos
Reglas
Sistema
Secuencia de acciones:
File
New Sistem
Guardando el sistema fuzzy calle.xfl
Secuencia de acciones:
File
Archivo: calle.xfl
Save
Diseñamos el sistema fuzzy
Secuencia de acciones:
Design
Edit System
Secuencia de acciones:
File
operatorset oper {
and xfl.min();
defuz xfl.CenterOfArea();
}
Guardamos el archivo
OK
OK
Verification
Monitorization
Generando código
en lenguaje java
Secuencia de acciones
Synthesis
to Java
MUCHAS GRACIAS