INCORPORANDO TÉRMINOS DIFUSOS A FORMULARIOS WEB

58
Incorporando Términos Difusos a Formularios Web Grupo de Bases de Datos Difusas Universidad Simón Bolívar, Venezuela José Ángel Labbad 1 Rosseline Rodríguez 2 Leonid Tineo 2 1 1 Universidad Metropolitana, Venezuela 2 Universidad Católica de Asunción, Paraguay

Transcript of INCORPORANDO TÉRMINOS DIFUSOS A FORMULARIOS WEB

Incorporando Términos Difusos a

Formularios Web

Grupo de Bases de Datos DifusasUniversidad Simón Bolívar, Venezuela

José Ángel Labbad 1

Rosseline Rodríguez 2

Leonid Tineo 2

1

1Universidad Metropolitana, Venezuela2Universidad Católica de Asunción, Paraguay

Agenda

2

• Conjuntos Difusos

• Formularios Web

• El Lenguaje SQLf

• Controles Web con términos difusos

• Metodología de migración

• Conclusiones

• Trabajos Futuros

Conjuntos Difusos

3

El lenguaje natural

4

obeso

fuertedelgado

calientefrescofrio mejor peor

extremadamente

cercalejosmás

casi

menos

Representación

Términos Difusos

5

Color agradableFunción de Pertenencia

6

00,10,20,30,40,50,60,70,80,9

1

Amarillo Verde RojoAzul

Negro

Edad es jovenFunción de Pertenencia

7

0

0,2

0,4

0,6

0,8

1

0 20 40 6080

100

Edad es adultoFunción de Pertenencia

8

0

0,2

0,4

0,6

0,8

1

0 20 40 6080

100

Edad es ancianoFunción de Pertenencia

9

0

0,2

0,4

0,6

0,8

1

0 20 40 6080

100

Formularios Web

10

Propuesta

11

formularios web + términos difusos

Encuestas Realizadas

57%43%

Programadores

Usuarios

12

95%

5%

Sí No

lenguaje

natural

búsquedas

90%

10%

No

¿programarías

términos difusos?

Venezuela (182)

Usuarios¿Te ha ocurrido que utilizando formularios de búsqueda de

sitios WEB no encuentras lo que necesitas y

posteriormente te das cuenta de que sí estaba?

94%

6%

No

13

Programadores WebManejadores más utilizadosManejador Cantidad

MySQL 81

PostgreSQL 81

Oracle 24

Microsoft SQL

Server19

MongoDB 19

SQLite 7

Couchbase 3

Microsoft Access 2

Sybase 1

Teradata 1

DB2 1

Cassandra 1

90%

10%

SQL

No-SQL

14

Controles WEB

15

- +

Campos de entrada de texto

Casillas de Verificación Botón de opción

Rango

Número

Controles WEB

16

Menú desplegable y deslizante

Tiempo: año, mes, semana, fecha, hora

URL y Email

Controles WEB

17

Color

Términos Difusos en DBMS

Patrick Bosc y Oliver Pivert

Francia 1995

SQLf

18

José Galindo, Olga Pons y otros

España 1998

FSQL

Lenguajes de Consulta

Selección de Extensión con Lógica DifusaSQLfi PostgreSQLf FSQL SQLf_j

Completitud Sí Sí No Desconocido

Disponibilidad Sí Sí Sí Sí

Visibilidad Si1 No visible Alta2 Alta3

CalidadSí – Términos

difusosNo No No

Soporte Bajo No No No

Portabilidad 6 Manejadores 1 Manejador 2 Manejadores 2 Manejadores

DocumentaciónSí – Instalación

y usuarios

Sí – Instalación y

usuarios

Sí – Instalación y

usuariosSí - Instalación

191https://sourceforge.net/projects/sqlfi/ 2http://www.lcc.uma.es/~ppgg/FSQL/3http://calypso.cs.put.poznan.pl/~sqlf_j/en/index.php

SQLfi

20

Manejador de

Catálogo

Despachador/API

Objeto SQLfiAnalizador

Evaluador /

Calibrador

Traductor/Derivador

SQLfSQL

Interfaz con el RDMBS (Traduce de SQL (estándar) SQL-RDBMS)

RDBMS

Instrucción SQL-RDBMS Respuesta (ResultSet)

Re

sp

ue

sta

(Re

su

ltS

et)

Instr

ucció

n

SQ

L

está

nd

ar

Cri

sp

Re

su

ltS

et

De

fin

ició

n d

e

rmin

o D

ifu

so

Ide

ntifica

do

r

Instrucción

SQLf

Respuesta

(FuzzyResultSet)

Cri

sp

Asw

er

Objeto Instrucción Objeto

Instrucción

(DML)

Respuesta Instrucción

(texto)

Instr

ucció

n

DM

L

Instr

ucció

n

SQ

L

está

nd

ar

Instr

ucció

n S

QL

está

nd

ar

Instr

ucció

n

SQ

L

está

nd

ar

Respuesta

(Re

su

ltS

et)

Instr

ucció

n S

QL

está

nd

ar

SQLfi

21

• Download en: https://sourceforge.net/projects/sqlfi/

• “SQLfi y sus aplicaciones”. Goncalves, M. y Tineo, L.

Revista Avances en Sistemas e Informática. Vol.5, Nro.2,

(2008).

El Lenguaje SQLf

SQL + condiciones en lógica difusa

22

Términos Difusos

CREATE FUZZY PREDICATE joven ON 0..100

AS (0, 0, 60,100);

23

Predicados SQLf

0

0,5

1

0 20 40 60 80 100

Términos Difusos

CREATE FUZZY PREDICATE alto ON 0..250

AS ( X / 250 );

24

Predicados SQLf

0

0,5

1

0 50 100 150 200 250

Términos Difusos

25

Predicados SQLf

0

0,5

1

CREATE FUZZY PREDICATE agradable ON COLOR

AS ( Amarillo / 0.4, Verde / 1, Rojo / 0.1, Azul / 0.7,

Negro/0.3 );

Términos Difusos

CREATE MODIFIER extremadamente AS POWER 3.0;

CREATE MODIFIER muy AS TRANSLATION -50;

CREATE MODIFIER extremadamente

AS max(x + y – 1, 0) POWER 4;

26

Modificadores SQLf

Términos Difusos

CREATE CONNECTOR IMPLICA AS MAX(1 – X, Y);

27

Conectores SQLf

Términos Difusos

CREATE COMPARATOR cercano ON -30..30

AS (x – y) IN (-20, -1, 1, 20);

CREATE COMPARATOR similar ON color

AS (x, y) IN {

(negro,gris)/0.5,

(azul,gris)/0.7,

(blanco,gris)/0.5,

(azul,negro)/0.8,

(azul,blanco)/0.2

};

28

Comparadores SQLf

Términos Difusos

CREATE ABSOLUTE QUANTIFIER

porLoMenos3 AS (3, 8, infinit, infinit);

CREATE RELATIVE QUANTIFIER

muchos AS (0.75, 0.90, 1, 1);

29

Cuantificadores SQLf

0

0,5

1

0 0,5 0,75 0,85 0,9 1

Consultas difusas

SELECT <atts> FROM <rels> WHERE <FuzzyCond> WITH CALIBRATION [n||n, ]

30

SELECT en SQLf

Consultas difusas

SELECT <atts> FROM <rels> WHERE <FuzzyCond> WITH CALIBRATION [n||n, ]

31

SELECT en SQLf

SELECT edad FROM estudiante WHERE edad = joven

WITH CALIBRATION 0.25

SELECT edad FROM estudiante WHERE edad = muy joven

WITH CALIBRATION 10

SELECT color FROM vehiculo

WHERE color similar azul

WITH CALIBRATION 10, 0.25

Controles WEB con términos difusos

32

Controles precisos

33

Controles Web difusosCampo de entrada de texto

34

CREATE FUZZY PREDICATE joven ON 0..100

AS (0, 0, 60,100);

Controles Web difusosCampo de entrada de texto

Botón de opción

35

CREATE FUZZY PREDICATE joven ON 0..100

AS (0, 0, 60,100);

Casilla de verificación

Casilla de Verificación

36

Controles Web difusos

Casilla de Verificación

37

Controles Web difusos

CREATE ABSOLUTE QUANTIFIER

porLoMenos3 AS (3, 8, infinit, infinit);

Menú desplegable

38

Controles Web difusosMenú deslizante

Menú desplegable

39

Controles Web difusosMenú deslizante

Fechas

40

Controles Web difusos

30 200

CREATE COMPARATOR alrededorDe ON 30..200

AS (x – y) IN (-20, -1, 1, 20);

Número

Rango

150 300

CREATE COMPARATOR almenos

ON 150..300 AS min(1,x/y);

Número

Controles Web difusos

41

Color Parecido

CREATE FUZZY PREDICATE

esParecido ON NUMBER

AS ( 1 – (X / 441,6729) );

Parecido

Exacto

Metodología de Migración

42

Proyecto de Migración

Rol \ Actividad

Detección

de

Servidores

Ingeniería

y

Selección

de

Productos

Planifica-

ción de

Horarios

Metodolo-

gía de

Migración

Va

lid

ac

ión

Pruebas y

Aceptación

Pase a

Producción

Gerente del

Proyecto ✓ ✓ ✓ ✓ ✓ ✓ ✓

Especialista en

Infraestructura

TI✓ ✓ ✓

Programador

SQL ✓ ✓ ✓ ✓

Programador

WEB ✓ ✓ ✓ ✓

Probador de

Software ✓ ✓ ✓

Diseñador WEB ✓ ✓

Clientes ✓ ✓ ✓Usuarios

Finales ✓ 43

Metodología de migración

1. Instalación e integración

Especialista en TI instala SQLfi en DBMS

Programador Web redirecciona consultas a SQLfi

Probador de SW verifica formularios operativos

2. Definición de términos difusos

Cliente + Programador SQL + Programador Web

3. Definición de consultas SQLf

Programador SQL Programador Web

diseña consultas modifica sitio

44

Proyecto de Migración

Rol \ Actividad

Detección

de

Servidores

Ingeniería

y

Selección

de

Productos

Planifica-

ción de

Horarios

Metodolo-

gía de

Migración

Va

lid

ac

ión

Pruebas y

Aceptación

Pase a

Producción

Gerente del

Proyecto ✓ ✓ ✓ ✓ ✓ ✓ ✓

Especialista en

Infraestructura

TI✓ ✓ ✓

Programador

SQL ✓ ✓ ✓ ✓

Programador

WEB ✓ ✓ ✓ ✓

Probador de

Software ✓ ✓ ✓

Diseñador WEB ✓ ✓

Clientes ✓ ✓ ✓Usuarios

Finales ✓ 45

Conclusiones

• Los programadores WEB tienen el deseo de utilizar

herramientas de lógica difusa.

• Los usuarios quedan insatisfechos con los sistemas

de búsqueda actual en aplicaciones WEB.

• Desearían que los sitios WEB permitan lenguaje

natural para expresar sus búsquedas.

• Esto se puede lograr incorporando términos difusos

en los controles WEB.

• Prevalece la tendencia de usar DBMS relacionales

bajo SQL en aplicaciones WEB.

46

Conclusiones

• Los programadores WEB tienen el deseo de utilizar

herramientas de lógica difusa.

• Los usuarios quedan insatisfechos con los sistemas

de búsqueda actual en aplicaciones WEB.

• Desearían que los sitios WEB permitan lenguaje

natural para expresar sus búsquedas.

• Esto se puede lograr incorporando términos difusos

en los controles WEB.

• Prevalece la tendencia de usar DBMS relacionales

bajo SQL en aplicaciones WEB.

47

Conclusiones

• Los programadores WEB tienen el deseo de utilizar

herramientas de lógica difusa.

• Los usuarios quedan insatisfechos con los sistemas

de búsqueda actual en aplicaciones WEB.

• Desearían que los sitios WEB permitan lenguaje

natural para expresar sus búsquedas.

• Esto se puede lograr incorporando términos difusos

en los controles WEB.

• Prevalece la tendencia de usar DBMS relacionales

bajo SQL en aplicaciones WEB.

48

Conclusiones

• Los programadores WEB tienen el deseo de utilizar

herramientas de lógica difusa.

• Los usuarios quedan insatisfechos con los sistemas

de búsqueda actual en aplicaciones WEB.

• Desearían que los sitios WEB permitan lenguaje

natural para expresar sus búsquedas.

• Esto se puede lograr incorporando términos difusos

en los controles WEB.

• Prevalece la tendencia de usar DBMS relacionales

bajo SQL en aplicaciones WEB.

49

Conclusiones

• Los programadores WEB tienen el deseo de utilizar

herramientas de lógica difusa.

• Los usuarios quedan insatisfechos con los sistemas

de búsqueda actual en aplicaciones WEB.

• Desearían que los sitios WEB permitan lenguaje

natural para expresar sus búsquedas.

• Esto se puede lograr incorporando términos difusos

en los controles WEB.

• Prevalece la tendencia de usar DBMS relacionales

bajo SQL en aplicaciones WEB.

50

Conclusiones

• La mayoría de los controles WEB utilizados en la

actualidad pueden usarse para incorporar términos

difusos a los formularios de búsqueda.

• SQLfi es la extensión con lógica difusa que posee

mayor cantidad de características deseables:

completitud, disponibilidad, visibilidad, calidad,

soporte, portabilidad y documentación.

• Se dispone de una metodología para migrar los

controles WEB en formularios de búsqueda que

operan con términos difusos.

51

Conclusiones

• La mayoría de los controles WEB utilizados en la

actualidad pueden usarse para incorporar términos

difusos a los formularios de búsqueda.

• SQLfi es la extensión con lógica difusa que posee

mayor cantidad de características deseables:

completitud, disponibilidad, visibilidad, calidad,

soporte, portabilidad y documentación.

• Se dispone de una metodología para migrar los

controles WEB en formularios de búsqueda que

operan con términos difusos.

52

Conclusiones

• La mayoría de los controles WEB utilizados en la

actualidad pueden usarse para incorporar términos

difusos a los formularios de búsqueda.

• SQLfi es la extensión con lógica difusa que posee

mayor cantidad de características deseables:

completitud, disponibilidad, visibilidad, calidad,

soporte, portabilidad y documentación.

• Se dispone de una metodología para migrar los

controles WEB en formularios de búsqueda que

operan con términos difusos.

53

Algunos trabajos futuros…

• Casos prácticos donde se aplique la metodología

de migración (posible proyectos de tesis).

• Extender SQLfi para manejar lógica difusa con

argumentos de tipo DATE.

• Nuevas versiones de la metodología para

aplicaciones de escritorio y aplicaciones móviles.

• Análisis estadísticos sobre los beneficios obtenidos

de los sitios WEB migrados.

54

Algunos trabajos futuros…

• Casos prácticos donde se aplique la metodología

de migración (posible proyectos de tesis).

• Extender SQLfi para manejar lógica difusa con

argumentos de tipo DATE.

• Nuevas versiones de la metodología para

aplicaciones de escritorio y aplicaciones móviles.

• Análisis estadísticos sobre los beneficios obtenidos

de los sitios WEB migrados.

55

Algunos trabajos futuros…

• Casos prácticos donde se aplique la metodología

de migración (posible proyectos de tesis).

• Extender SQLfi para manejar lógica difusa con

argumentos de tipo DATE.

• Nuevas versiones de la metodología para

aplicaciones de escritorio y aplicaciones móviles.

• Análisis estadísticos sobre los beneficios obtenidos

de los sitios WEB migrados.

56

Algunos trabajos futuros…

• Casos prácticos donde se aplique la metodología

de migración (posible proyectos de tesis).

• Extender SQLfi para manejar lógica difusa con

argumentos de tipo DATE.

• Nuevas versiones de la metodología para

aplicaciones de escritorio y aplicaciones móviles.

• Análisis estadísticos sobre los beneficios obtenidos

de los sitios WEB migrados.

57

MUCHAS GRACIAS

José Angel Labbad Yousef ([email protected])

Rosseline Rodríguez ([email protected])

Leonid Tineo ([email protected])

58

Y todo lo que hagáis, hacedlo de corazón, como para el Señor y no para los hombres

(Colosenses 3:23)