Estudio de las Técnicas de Inteligencia Artificial mediante el apoyo de un Software Educativo (página 4)
Enviado por Jos� Ra�l Salao Bravo
Tabla IV.10. Caso de Uso Gestionar Cuentas de Usuario.
Figura IV.12- Interfaz Gestionar Cuenta Usuario (GCU).
4.6. Diseño de la Base de Datos del Sistema.
Para facilitar las tareas de administración de los datos y acelerar el desarrollo de la aplicación se hace necesario realizar una selección adecuada del Sistema Gestor de Bases de Datos (SGBD) que no es más que un conjunto de datos relacionados entre sí y un grupo de programas para tener acceso a esos datos. A continuación se presenta una valoración, en este caso, de MySQL versión 5.0.45 utilizada para implementar la Base de Datos de este Tutorial de I.A.
Teniendo en cuenta la literatura referenciada podemos destacar que MySQL es el servidor de base de datos "Open Source" más utilizado en todo el mundo. Sus principales características son la velocidad, la robustez, aprovechamiento de potencia de sistemas multiprocesador gracias a su implementación multihilo, soporta gran cantidad de tipos de datos, dispone de API's en gran cantidad de lenguajes (C, C++, Java, PHP, etc.), gestión de usuarios y contraseña manteniendo un muy buen nivel de seguridad en los datos y además de ser multiplataforma. Es un sistema que se integra a una gran cantidad de sistemas operativos como Windows, AIX, HP-UX systems, Linux Intel, Sun Solaris entre otros.
Para hacer el manejo de MySQL un poco más amigable, se utilizó la herramienta PHPMyAdmin, que es un terminal vía Web para el acceso a las bases de datos y sus tablas. Una vez instalado el programa basta con poner en el navegador http://localhost/phpmyadmin y se nos pedirá un usuario root y una contraseña para acceder a las base de datos. Permitido el acceso se tiene la posibilidad de crear las tablas, eliminarlas, consultarla, insertar las filas, modificarlas y varias opciones más muy cómodas. En la figura IV.13 se muestra la interfaz de programa PHPMyAdmin.
Figura IV. 13- Interfaz PHP MyAdmin.
La base de datos de nuestro Sistema permite almacenar la información de forma organizada y detallada, al mismo tiempo permite interactuar entre los diferentes procesos que se pueden generar como consultas y reportes que requiere el usuario. En la figura IV.14 aparecen las entidades que conforman el dominio del problema, sus atributos y relaciones existentes entre ellas.
Figura IV.14- Modelo de datos del Tutorial de Inteligencia Artificial
Seguridad
Para asegurar la integridad de los datos en la Base de Datos del Tutorial de IA se utilizó la opción de seguridad a nivel de usuario, pues constituye el modo más fuerte y flexible de protección de una aplicación. Dicha seguridad es implementada a través de una tabla Usuario donde la contraseña del usuario es encriptada por medio de un algoritmo matemático.
Esta aplicación tiene una capa de seguridad en la que se verifica al usuario si esta registrado o no. Cuando el usuario ha sido ingresado puede tener privilegios como administrador o como estudiante usuario del Sistema, en caso contrario solamente ingresa al sitio como invitado para consulta de información del Tutorial de Inteligencia Artificial.
Usuario Administrador.-Persona que puede realizar la administración de la aplicación.
Usuario Estudiante.-Persona que puede visualizar la información y puede evaluarse en los temas de la materia.
Usuario Invitado.-Persona que puede solamente visualizar la información del tutorial.
4.7. Mapa de Navegación
A continuación se muestra el mapa de navegación, a través del cual se visualiza una panorámica de la navegación del sitio.
Figura IV.14- Mapa de Navegación del Tutorial IA.
4.8 Modelo de Despliegue.
El Modelo de Despliegue define la arquitectura física del sistema por medio de nodos interconectados. Se utiliza para comprender las actividades de diseño e implementación debido a que la distribución del sistema permite un mejor desarrollo del diseño
Figura IV-16- Modelo de Despliegue del Tutorial IA.
La aplicación que se propone está basada sobre una arquitectura cliente – servidor representada por tres nodos. El nodo "Página Cliente" está representado por un nodo ordenador el cual contiene un navegador para Internet. Este recibe la información en lenguaje HTML enviado desde el servidor y se encarga de comunicarse con el nodo que contiene la aplicación Web a través del protocolo HTTP. Este proceso se realiza a través de los recursos que se le muestran al usuario en la página, esto permite al usuario establecer un sistema de comunicación con el servidor Web Apache.
En el nodo Servidor Web Apache se atienden las solicitudes del cliente, se analizan y se les da respuesta. En este nodo están contenidos todos los procesos de información para garantizan el funcionamiento del servidor logrando cumplir con todos los requerimientos funcionales del sistema. La capa de acceso a datos se comunica con el nodo Gestor de Bases de Datos "MySQL" a través del protocolo TCP/IP donde se encuentra la información almacenada en la base de datos.
4.9 Análisis de Factibilidad
Para la estimación del costo se calcularon los indicadores siguientes con uso del software USC Cocomo II del Centro para Ingeniería del software de la Universidad de California.
Entradas Externas (EI): entrada de usuario que proporciona al software diferentes datos orientados a la aplicación.
Nombre | Cantidad de ficheros | Cantidad de Elemento de datos | Complejidad | |
Adicionar Usuarios | 2 | 6 | Bajo | |
Modificar Usuarios | 2 | 6 | Bajo | |
Eliminar Usuarios | 2 | 6 | Bajo | |
Adicionar Ejercicio Evaluativo | 3 | 3 | Medio | |
Eliminar Ejercicio Evaluativo | 3 | 5 | Medio | |
Adicionar Respuesta | 2 | 8 | Medio | |
Modificar Respuesta | 2 | 8 | Medio | |
Eliminar Respuesta | 2 | 8 | Medio | |
Adicionar Documento Complementario | 2 | 2 | Bajo | |
Eliminar Documento Complementario | 1 | 1 | Bajo |
Tabla IV.17- Entradas Externas
Salidas Externas (EO): salida que proporciona al usuario información orientada de la aplicación. En este contexto la "salida" se refiere a informes, pantallas, mensajes de error, etc.
Nombre | Cantidad de ficheros | Cantidad de Elemento de datos | Complejidad | |
Tema I "Surgimiento y Desarrollo" | 1 | 7 | Medio | |
Tema II "Programación Lógica" | 1 | 3 | Bajo | |
Tema III "Lenguaje natural" | 1 | 3 | Bajo | |
Tema IV "Procesos de búsqueda " | 1 | 5 | Bajo | |
Tema V "Representación del conocimiento " | 1 | 3 | Bajo | |
Tema VI "Redes neuronales" | 1 | 2 | Bajo | |
Documentos Adicionales | 2 | 2 | Bajo | |
Ejercicios Evaluativos | 3 | 3 | Bajo | |
Resultados de Evaluación | 3 | 4 | Bajo | |
Registro de Evaluaciones | 3 | 7 | Medio |
Tabla IV.18- Salidas Externas
Ficheros internos (ILF): son archivos (tablas) maestros lógicos (o sea una agrupación lógica de datos que puede ser una parte de una gran base de datos o un archivo independiente).
Nombre | Cantidad de registro | Cantidad de Elemento de datos | Complejidad | |
Usuario | 30+ | 5 | Medio | |
TipoUsuario | 2+ | 3 | Medio | |
Preguntas | 50+ | 4 | Medio | |
Respuestas | 150+ | 4 | Medio | |
RegPregResp | 250+ | 5 | Medio | |
Doc | 15+ | 3 | Medio |
Tabla IV.19- Ficheros Internos
Se consideró como entorno de programación PHP tomándose como promedio 20 líneas código en este lenguaje por punto de función (según tabla de reconciliación de métricas consultada), obteniéndose así 4940 instrucciones fuentes con un Total de Puntos de Función Desajustados de 247.
Esfuerzo (DM).
DM = (Valor Optimista + 4 X(Valor Esperado) + Valor Pesimista) /6
DM = (7.6 + 4 *11.4+ 17.6) / 6 = 11.8 Hombres / mes.
Tiempo (TDev).
TDev = (Valor Optimista + 4 X(Valor Esperado) + Valor Pesimista) /6
TDev = (3.7+ 4 * 4.8+ 10.1)/6 = 5.51 Meses.
Cantidad de hombres (CH):
CH = DM / TDev
CH = 11.8 / 5.51
CH = 2.14 hombres
Costo de la Fuerza de Trabajo.
CTP = (Valor Optimista + 4 X(Valor Esperado) + Valor Pesimista) /6
CTP = (669.26 + 4 *1337.70 + 1956.56) / 6= $1328.97
4.10 Implementación del Software
Recursos Técnicos:
Hardware para su diseño y desarrollo:
Procesador: Pentium IV o superior.
Memoria: 256 Mbytes o superior
Disco Duro: 120 Gbytes
Monitor: Resolución SVGA (800 x 600) píxeles.
Software:
Sistema Operativo Windows 2000 o Superior.
MySql Server.
PHPMyAdmin
Lenguaje de script para web PHP.
Servidor de paginas Web Apache.
Macromedia Dreamweaver 8.0
Rational Rose Enterprise.
4.11. Conclusiones.
En este Capítulo para la implementación del Tutorial de IA trabajamos con PHP 5.2.3, el cual es uno de los lenguajes de programación Web más usados hoy en día, el cual nos brinda muchas facilidades en la programación. Conocimos sus principales ventajas. Como servidor Web aprendimos las características del Apache y trabajamos con la herramienta de diseño de la aplicación Dreamweaver 8 con lo cual diseñamos el Sitio y la Interfaz de Usuario.
Aprendimos las facilidades brindadas por MySQL en la implementación de la Base de Datos, también utilizando la Herramienta Rational Rose representamos los Diagramas de los Casos de Uso y representamos el Diagrama de Navegación del Tutorial de Inteligencia Artificial. Por último con la información brindada por el Departamento de Informática de los temas de Inteligencia artificial se coloco en el Red Intranet de la Universidad para acceder a este Tutorial.
Conclusiones
Se potenció el estudio de las técnicas, funcionamiento y aplicaciones de la Inteligencia Artificial mediante el apoyo de una aplicación educativa.
Se implementó un tutorial de aprendizaje de Inteligencia Artificial que permite apoyar la solución de la problemática existente.
Con la realización de este trabajo se estableció parámetros de comparación y evaluó las diferentes técnicas de Inteligencia Artificial
Se implementó el tutorial en la Red de la Facultad para su explotación por parte de profesores y estudiantes.
Recomendaciones
Implementar nuestra aplicación en Centros de Estudios Superiores dadas las múltiples aplicaciones de sus técnicas y principios básicos que ofrece sobre Inteligencia Artificial.
Publicar en Internet o Intranets el Tutorial de Inteligencia Artificial para que se pueda acceder libremente.
Estimular a la comunidad académica a continuar investigando sobre el desarrollo de esta prometedora área de Inteligencia Artificial.
Que se utilice el presente trabajo como material de estudio para los estudiantes de la carrera de Informática de la Universidad de Pinar del Río Hermanos Saíz Montes de Oca.
Referencias bibliográficas
1. ABCdatos. Programas y Tutoriales: Inteligencia Artificial Historia y evolución.
2008-09-12
2. Apache Software Foundation. Apache License versión 2.0, 2008.
http://www. apache.org/
2008-12-01
3. Booch, R. El Lenguaje Unificado de Modelado: Conceptos, 2000.
pp 50-120.
4. Borrego, J. Lógica Computacional. Sevilla-España: Universidad de Sevilla. Dpto. de Ciencias de la Computación e Inteligencia
Artificial
http://www.cs.us.es/~joaquin/tema-02.pdf.
2008-11-11
5. Cañas, J. Universidad Técnica Federico Santa María Valparaíso http://www.inf.utfsm.cl/~jcanas/ramos/Fundamentos1/Apuntes/C2cl1.pdf
2008-05-12
6. Carbonell, P. Control Fuzzy Adaptativo estructuras y estabilidad. http://www3.unileon.es/estylf2002/
2008-10-02
7. Choque, G. Inteligencia Artificial Perspectivas y realizaciones: Redes Neuronales. La Paz-Bolivia, 2002.
8. Costa, C. Algoritmos genéticos básicos ,2002. http://ccp.servidores.net/genetico.html.
2008-09-03
9. Daza, S. Universidad Militar Nueva Granada Colombia.
http://www.monografias.com/trabajos12/redneur/redneur.shtml
2008-10-05
10. FortuneCity. Representación de Conocimiento. EUA.
http://www.fortunecity.com/skyscraper/romrow/207/se/representacion.htm
2008-02-06
11. Fuente, M. Redes neuronales. Universidad de Valladolid.
Departamento de Ingeniería en Sistemas y automática.
http://www.isa.cie.uva.es/~maria/redes_neuronales.ppt.
2009-01-05
12. Galeón, S. Fundamentos Básicos Algoritmos Genéticos. 1994. http://eddyalfaro.galeon.com/geneticos.html
2008-11-05
13. García, A. Rincón del Programador, 2001. http://www.elrincondelprogramador.com/default.asp?pag=articulos/leer
2009-01-05.
14. García, J. España, 2004.
http://www.webestilo.com/php/php00.phtml.
2008-10-18
15. Gutiérrez, J. Redes Neuronales. Universidad Católica San Pablo, Perú, 2003.
http://www.usp.edu.pe/~jc.gutierrez/IA_/IRN.pdf
2009-01-11
16…Jiménez, A., Redes Semánticas y Marcos: Universidad de Sevilla
Dpto. Ciencias de la Computación e Inteligencia Artificial, 2002.
http://www.cs.us.es/cursos/ia2-2002/temas/tema-4.pdf
2008-12-16
17. Meseguer, P. Búsqueda Heurística, España, 2006. http://www2.iiia.csic.es/~pedro/busqueda1-introduccion.pdf
2008-08-11
18. Morales, E. Representación del Conocimiento http://ccc.inaoep.mx/~emorales/Cursos/RdeC/principal.html
2008-12-12
19. Moreno, A. Universidad de Málaga ,2000.
http://elies.rediris.es/elies9/4-3-2.htm
2008-12-20
20. Muñoz, M. Algoritmos Genéticos. 2005
http://taylor.us.es/componentes/miguelangel/algoritmosgeneticos.pdf
2009-01-07
21. Pacheco, A. Representación del Conocimiento. República del
Saber, México ,2007.
http://expo.itchihuahua.edu.mx/view.php?f=prog_48
2009-01-22
22. Peraza, F. Inteligencia Artificial.
http://www.monografias.com/trabajos10/trabajos/trabajos.shtml
2009-01-22
23. Pérez, J. El Servidor Web Apache,2004.
http://www.pache.org/docs/2004.
2008-09-18
24. Programación en castellano. Tutorial de My Sql. http://www.programacion.com/tutorial/mysql_basico/
2009-02-12
25. Rodríguez, G. Algoritmos Genéticos y Computación Evolutiva
http://the-geek.org/docs/algen/
2009-02-12
26. Soluciones Redes Neuronales Artificiales, 2001. http://electronica.com.mx/neural/
2009-02-02
27. Tolmos, P. Algoritmos genéticos, 2004. http://www.uv.es/asepuma/X/J24C.pdf
2008-05-02
28. TREC, Soluciones Redes Neuronales Artificiales, 2001.
http://electronica.com.mx/neural/
2008-07-22
29. .Universidad de las Américas. Fundamentos de Lógica Difusa,
Puebla, 1999.
http://www.itq.edu.mx/vidatec/espacio/aiee/fuzzy.ppt.
2009-11-18.
30. Vega, A. Tutorial de Redes Neuronales: Programa de Profesorado Madrid –España http://www.gc.ssr.upm.es/inves/neural/ann2/concepts/structnn.htm
2008-07-28
31. Warianos. Curso básico de Sistemas Expertos,
http://www.warianos.org/foros/showthread.php?t=158394
2008-09-11
32. Wikimedia. Wikimedia Foundation.Encyclopedia libre, 2007. http://es.wikipedia.org/wiki/Historia_de_la_inteligencia_artificial
2008-06-19
BIBLIOGRAFÍA
33. Acedo, J. Instrumentación y control básico de procesos: Lógica
Difusa
Editorial Universal. España, 2005.
34. Fit web. Universidad de Pinar del Río: Web Facultad Informática y Telecomunicaciones, 2008.
2008- 26-12.
35..Gómez, F. Sistemas difusos jerárquicos para modelado y control.
TESIS DE MAESTRO DE CONTROL AUTOMÁTICO México, D.F,
2005.
36. Plan D. Universidad Pinar Río. Facultad de Informática y Telecomunicaciones: Planes de estudio.2007-2008.
37. Torres, L. Representación de Conocimiento. Universidad de
Colombia. Departamento de Informática, 2001.
TRABAJOS DE DIPLOMA CONSULTADOS:
38. Córdoba, C. "Control Neuro Difuso de un Móvil
Autónomo".Universidad
del Cauca, Trabajo de grado: FIET -, 2003.
39. Chaguara, J. "Control Neuro Difuso Aplicado a una Torre"
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS.
Lima-Perú, 2005.
40. Díaz, P, Aplicación para la gestión de Publicaciones Científicas:
"Web de publicaciones científicas". Universidad de Pinar del Río
"Hermanos Saíz Montes de Oca" Tesis (en opción al título de
Ingeniero en Informática) Junio, 2007.
41. Galindo, J. CONJUNTOS Y SISTEMAS DIFUSOS Universidad de
Málaga E.T.S.I. Lógica difusa sql. 2000.
42. Gómez, F. Sistemas difusos jerárquicos para modelado y control.
TESIS DE MAESTRO DE CONTROL AUTOMÁTICO México, D.F.
Centro de Investigación de estudios avanzados del Instituto
Politécnico Nacional. Octubre de 2005.
43. López, C. "Aplicación de la lógica Difusa en Robótica" Programa de
Doctorado: Diseño, Análisis y Aplicaciones de Sistemas Inteligentes.
Curso: "Planificación y Robótica "LOG DIFUSA.2005.
44. Vallejo, E. HERRAMIENTAS CAD PARA DISEÑO DE
CONTROLADORES INTELIGENTES EN ROBÓTICA MÓVIL.
Universidad del Norte, Barranquilla, Colombia.2002.
Anexos
ANEXOS I.2 Paradigmas de Inteligencia Artificial
Anexo III. 1 Técnicas de Inteligencia Artificial
Anexo IV. 1 Interfaz de Usuario.
Anexo IV.2: Modelo Lógico de los Datos del Tutorial de I.A.
Nº | Tabla | Llave Primaría | Llave Extranjera | Campos | Tipo de Dato | ||||||||
1 | Usuario | Id_US | Id_US Nombre Usuario Contrasena IDTipo | Int Varchar Varchar Varchar Int | |||||||||
2 | TipoUsuario | Id_Tipo | Id_Tipo Tipo IDP | Int Varchar Int | |||||||||
3 | Reg PregResp | IdRPR | IdRPR IdEst IdResp Correcta Fecha | Int Int Int Int Varchar | |||||||||
4 | Preguntas | Id_Pregunta | Id_Pregunta Id_Tema Texto Tipo | Int Int Varchar Int | |||||||||
5 | Respuesta | Id_Respuesta Id_Pregunta | Id_Respuesta Id_Pregunta Texto Correcta | Int Int Varchar Int | |||||||||
6 | Doc | IdDoc | IdDoc Nombre Ruta | Int Text Text |
Anexo IV.3: Mapa de Navegación
Anexo IV.4: Pruebas del Sistema
AGRADECIMIENTOS
Le hago llegar mis más sinceros agradecimientos a todas aquellas personas que de una forma u otra posibilitaron que este trabajo se hiciera realidad.
A mis tutores por su confianza, sus grandes ideas, su colaboración y empeño en sacar adelante este proyecto.
A mis profesores, los cuales desde el inicio de mi carrera me enseñaron nuevos caminos, aportándonos grandes conocimientos y fuerza creadora.
A mis compañeros por su gran confianza, amistad y ayuda diaria.
A mis queridos padres y hermanos por educarnos y guiarnos siempre por el camino correcto.
DEDICATORIA
Dedico este trabajo a todas aquellas personas que hicieron posible de una forma u otra la realización del mismo, en especial a toda mi familia.
José Raúl Salao Bravo
Riobamba –Ecuador
2009
Escuela Superior Politécnica de Chimborazo FACULTAD DE INFORMATICA Y ELECTRONICA
PROYECTO
FORMACION DE INGENIERIA EN SISTEMAS INFORMATICOS
TESIS DE GRADO
Previa a la Obtención del Título de Ingeniero en Sistemas Informáticos
Página anterior | Volver al principio del trabajo | Página siguiente |