Академический Документы
Профессиональный Документы
Культура Документы
TRABAJO DE GRADUACION
AUTOR
CASTRO REYNA FRANK PETER
ASESORA
YENNY MILAGRITOS SIFUENTES DIAZ
TRUJILLO PER
2013
Dedicatoria
A mis padres y hermano, por confiar en m, por sus
consejos, paciencia y apoyo constante a lo largo de mi
vida, que con su esfuerzo y sacrificio me ayudaron a
llegar a esta etapa y convertirme en un profesional.
Castro Reyna Frank Peter
Agradecimiento
Presentacin
Seores Miembros del Jurado:
Dando cumplimiento a las disposiciones contenidas en el Reglamento de
Grados y Ttulos de la Facultad de Ciencias Fsicas y Matemticas, Escuela
Acadmico Profesional de Informtica de la Universidad Nacional de Trujillo,
tengo a bien poner a vuestra consideracin y criterio la Tesis intitulada:
SISTEMA
EXPERTO
PARA
EL
MODELADO
DE
UN
TUTOR
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
ndice General
Dedicatoria............. 2
Agradecimiento.. 3
Presentacin 4
Resumen... 6
Abstract. 7
INTRODUCCION.. 8
Planteamiento del problema 8
Formulacin del problema.. 9
Hiptesis.. 9
MARCO TEORICO... 9
Sistemas Expertos.. 9
Inteligencia Artificial 10
Sistemas Inteligentes 13
JUSTIFICACION DEL PROBLEMA 17
Desde el punto de vista prctico y social 17
Desde el punto de vista cientfico tecnolgico.............. 17
OBJETIVOS................ 18
Generales 18
Especficos.. 18
CAPITULO I: MATERIAL Y METODOS.. 19
1.1. Poblacin.. 19
1.2. Muestra..... 19
1.3. Operacionalizacion de variables..... 20
1.4. Diseo de investigacin 21
1.5. Metodologa. 22
CAPITULO II: RESULTADOS.......... 30
CAPITULO III: CONCLUSIONES... 32
Recomendaciones. 32
Referencias Bibliogrficas.. 33
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Resumen
El siguiente trabajo de investigacin trata sobre la elaboracin de un
sistema tutor inteligente que actuar como un tutor particular del estudiante
que permita definir y aplicar una estrategia metodolgica para la enseanza de
las estructuras bsicas de programacin que es capaz de guiar al alumno a lo
largo de un dominio en particular del conocimiento, resolviendo durante el
proceso tareas tales como la elaboracin de una estrategia de tutorizacin, la
generacin de ejercicios a la medida de las necesidades del
alumno y la
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Abstract
The following work of investigation there treats on the production of a
system intelligent tutor who will act as a particular tutor of the student who
allows to define and to apply a methodological strategy for the education of the
basic structures of programming that is capable of guiding the pupil along a
domain especially of the knowledge, solving during the process such tasks as
the production of a strategy of tutorizacin, the generation of exercises to the
measure of the needs of the pupil and the pedagogic resolution of these
exercises, as well as the explanation of the solution using the shaped one of the
tutor framed inside the architecture of the systems intelligent tutors With his
submodules and interfaces, using the tools that there provides the engineering
of software and the artificial intelligence.
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Introduccin
Planteamiento del problema
Los estudiantes que inician la carrera de Informtica en la Universidad
Nacional de Trujillo presentan dificultades en el aprendizaje de un lenguaje de
programacin, esto se refleja segn las estadsticas recogidas del departamento
de informtica (a travs de sus evaluaciones parciales y finales en el curso) en
un alto porcentaje de alumnos que no llegan a aprobar la materia (36%) y en el
bajo rendimiento acadmico (11.4), por lo que requieren de una gua docente o
algn sistema tutor inteligente.
Este tema de investigacin surge motivado por la necesidad de encontrar
una alternativa diferente para el aprendizaje de las asignaturas de Algoritmos y
Programacin de la carrera profesional de Ingeniera Informtica de la
Universidad Nacional de Trujillo. Los alumnos que ingresan a la carrera de
Informtica se caracterizan por ser un grupo heterogneo, con diverso grado de
pre requisitos en el conocimiento de programacin, con diferentes ritmos de
aprendizaje, por lo que la enseanza a estos grupos se realiza teniendo en
cuenta el nivel promedio de los alumnos, lo que conlleva que muchos alumnos
no logren alcanzar los objetivos planteados, ya que ellos necesitan mayor
reforzamiento y que otro grupo de alumnos se ven limitados en su ritmo de
aprendizaje esperando al grupo promedio.
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Hiptesis
El desarrollo de un sistema experto permitir
Marco Terico
Sistemas Expertos
Un sistema experto es como un sistema informtico (hardware o software) que
simula a los expertos humanos en un rea determinada [7].
Aclaramos la definicin de que un sistema experto debe ser capaz de procesar y
memorizar informacin, luego deber aprender y razonar para las situaciones
inciertas donde se haga uso de estos sistemas y al final tomar sus propias
decisiones para luego enviarlas a una persona u otro sistema experto. Algunas
aplicaciones de los sistemas expertos se han dado en distintas situaciones, tales
como:
Transacciones bancarias
Control de trfico
Problemas de planificacin
Diagnostico medico
Toma de decisiones para prstamo financiero, etc.
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Tipos:
Segn la tcnica que utilizan:
Regla 1
Si A y B
Entonces C
Regla 2
Si D, E y F
Entonces G
Regla 3
Si H e I
Entonces J
Regla 4
Si C y G
Entonces K
Regla 5
Si G y J
Entonces L
Regla 6
Si K y L
Entonces M
10
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Capa de nodos
de entrada
Capa
neuronas
ocultas
de
Capa
neuronas
salida
de
de
11
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Arquitectura
Los sistemas expertos estn conformados por componentes, los cuales se
muestran en la Figura 4 a continuacin:
Especialistas
Expertos
Humanos
Ingenieros
Conocimientos
Subsistema
Adquisicin
Conocimiento
Subsistema
Control
Coherencia
Base
Conocimient
o
Memoria
Trabajo
Base de
Datos
Usuari
o
Subsistema
Aprendizaje
Subsistema
Adquisicin
Informacin
Motor
Inferen
cia
Subsistema
Interface
Usuario
Subsistem
a
Explicaci
n
Subsistema
EjecucinAccin
12
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Componentes:
Base de Conocimiento: Conocimientos del experto humano
codificado (esttico).
Base de Datos/Hechos: Memoria temporal de trabajo (dinmico).
Motor de Inferencia: Combina la base del conocimiento y la base
de hechos para deducir nuevos hechos y poder resolver
problemas.
Subsistema Interfaz de Usuario: Es el medio donde se comunica
el usuario con el sistema experto.
Subsistema Explicacin: Es la justificacin y explicacin de los
resultados obtenidos.
Subsistema de Adquisicin de Conocimiento: Es el modulo
donde se aadirn nuevos conocimientos a la base del
conocimiento.
Subsistema de Aprendizaje: Donde aprende a modular la
resolucin de los problemas.
13
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Campos de Aplicacin
Los sistemas expertos tienen muchas aplicaciones, de las cuales veremos
algunos ejemplos en donde se desenvuelve con gran eficiencia en con
mundo real.
Transacciones bancarias
Hoy en da se demuestran que los sistemas expertos incorporados en los
cajeros automticos o mediante las lneas telefnicas resultan ser de gran
utilidad para poder hacer nuestras transacciones bancarias.
Control de trfico
Es uno de las aplicaciones de mayor importancia de los
sistemas
Problemas de planificacin
Los sistemas expertos puedes ser utilizado para resolver problemas de
planificacin de manera que optimicen ciertos objetivos, como por
ejemplo:
Organizacin y la asignacin de aulas para un examen.
Planificacin de doctores y enfermeras en un gran hospital.
La planificacin de autobuses para las horas de congestin o de
das festivos.
14
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Diagnstico mdico
Sin duda uno de las aplicaciones ms importantes de los sistemas
expertos viene a ser en el campo medico por las cual puede ser usado de
muchas maneras:
Conocer la informacin de una enfermedad por medio de algunos
sntomas dados.
Actualizar los conocimientos de los doctores.
Cuando se desea saber qu enfermedad tiene un paciente y que
pruebas mdicas deben realizarse.
15
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
16
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
EXPERTO HUMANO
EXPERTO ARTIFICIAL
No perdurable
Permanente
Difcil de transferir
Fcil de transferir
Difcil de documentar
Fcil de documentar
Impredecible
Consistente
Caro
Alcanzable
Creativo
No inspirado
Adaptativo
Experiencia Personal
Entrada Simblica
Enfoque amplio
Enfoque cerrado
Conocimiento tcnico
17
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Ventajas
Estn disponibles ininterrumpidamente de da y noche, ofreciendo
siempre su mximo desempeo.
Pueden duplicarse ilimitadamente, tener tantos de ellos como se
requieran.
Pueden trabajar en entornos hostiles y peligrosos.
Siempre se ajustan a las normas establecidas y son consistentes en
su
desempeo,
no
desarrollan
apreciaciones
subjetivas,
requiere
un
sueldo,
promociones,
seguros
mdicos,
incapacidades.
Siempre estn dispuestos a dar explicaciones, asistir o ensear a la
gente, as como a aprender.
Pueden tener una vida de servicio ilimitada.
Limitaciones
Se pueden deducir las siguientes limitaciones de los sistemas expertos:
El conocimiento es difcil de extraer de los expertos humanos.
La aproximacin de cada experto a la situacin evaluada puede
ser diferente.
Tienen una nocin muy limitada acerca del contexto de problema,
no pueden percibir todas las cosas que un experto humano puede
apreciar de una situacin.
Pueden existir decisiones que slo son de competencia para un ser
humano y no una mquina.
No saben cmo subsanar sus limitaciones, no son capaces de
trabajar en equipo o investigar algo nuevo.
Son muy costosos de desarrollar y mantener.
18
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Inteligencia Artificial
A diferencia de la filosofa y la psicologa, que tratan de entender cmo
funciona la inteligencia en abstracto, la Inteligencia Artificial (IA) es un intento
por descubrir y aplicar los aspectos de la inteligencia humana que pueden ser
simulados mediante construcciones artificiales.
Se observa que hasta en las etapas tempranas de su desarrollo, la Inteligencia
Artificial (IA) ha presentado productos sorprendentes en sus aplicaciones
[Stuart et al., 1995].
Hoy en da, el campo de la Inteligencia Artificial (IA) enmarca varias
subreas tales como los sistemas expertos, la demostracin automtica de
teoremas, el juego automtico, el reconocimiento de la voz y de patrones, el
procesamiento del lenguaje natural, la visin artificial, la robtica, las redes
neuronales, etc.
19
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Actividades esenciales:
Responder de manera flexible a una gran variedad de situaciones.
Dar sentido a los mensajes contradictorios y/o ambiguos.
Reconocer la importancia relativa de los diferentes elementos de la
situacin problemtica planteada.
Encontrar similitudes entre situaciones, sin importar las diferencias
que las separan.
Encontrar las diferencias entre situaciones, sin importar lo similares
que puedan parecer.
Por su amplio contenido, es difcil definir a la Inteligencia Artificial (IA), pero
resulta de inters para este trabajo arribar a un concepto esclarecedor, por lo
que se expondrn diferentes posiciones acerca de la IA.
Si bien existen muchas definiciones de Inteligencia Artificial (IA) en las que
cada autor la presenta de una manera ligeramente diferente, aqu se resumirn
las ms representativas, agrupadas como lo propone Stuart [Stuart et al., 1995]
en dos categoras:
Las que conciernen a los procesos de pensamiento y razonamiento.
Las que conciernen al comportamiento
20
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
21
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
22
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Arquitectura y Componentes
Los Sistemas Tutores Inteligentes (STI) tienen como principal objetivo impartir
la enseanza de un contenido dado un dominio en la forma ms adecuada a las
necesidades individuales del alumno. Estos sistemas se basan en una
arquitectura compuesta por tres grandes mdulos: el mdulo del tutor, el
mdulo del alumno y el mdulo del dominio [Villareal et al., 2001]. Podra
agregarse un cuarto mdulo denominado el mdulo de evaluacin y, un quinto
denominado mdulo de interface y el ecosistema propuesto por Cataldi
[Cataldi, 2004].
23
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
24
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
25
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
26
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Objetivos
Generales
Desarrollar un sistema
experto
para
Especficos
27
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Captulo I
Material y mtodos
1.1. Poblacin:
La poblacin de estudio est constituida por los alumnos de 1er ciclo de la
carrera de Ingeniera informtica de la Universidad Nacional de Trujillo.
1.2. Muestra:
Basndonos de la metodologa del muestreo para hallar el clculo del tamao
muestral de una poblacin infinita se presenta a continuacin la frmula
definida:
Donde:
n = Tamao de muestra representativa que deseamos obtener.
Z = valor correspondiente a la distribucin de Gauss.
P = proporcin en que la variable estudiada se da en la poblacin.
E = Error de estimacin.
De acuerdo a las variables dadas a continuacin:
Obtenemos:
n= (1.852 * 0.91 *(1 - 0.91)) / 0.142
n = 12.77 dando as un aproximado de una muestra de 12 personas (12
alumnos de la carrera de Ingeniera Informtica de la Universidad
Nacional de Trujillo).
28
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
1.3.3. Indicadores:
Los elementos a considerar al momento de la medicin, se expresan en el
siguiente cuadro:
Variables
Independiente
Sistema experto.
Indicadores
Definir las variables de entrada.
Anlisis del sistema experto.
Diseo y construccin del sistema
experto.
Dependiente
Modelado del tutor para el
aprendizaje de estructuras
bsicas de programacin
Rendimiento
acadmico
del
29
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Dnde:
X = Desarrollo de un sistema experto
(VI)
30
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
1.5. Metodologa:
Metodologa de Desarrollo de Buchanan:
Uno de los primeros mtodos de desarrollo estructurado de sistemas
inteligentes fue el propuesto por Buchanan y otros autores en 1983.
Segn estos autores la adquisicin del conocimiento de un sistema inteligente, y
por extensin la construccin de todo el sistema, poda dividirse en las cinco
fases
dela
figura
8:
identificacin,
conceptualizacin,
formalizacin,
implementacin y prueba.
Requisitos
Identificacin
Conceptos
Conceptualizacin
Formalizacin
Estructuras
Reglas
Implementacin
Rediseos
Pruebas
Sin embargo el proceso real no est tan bien definido como puede sugerir la
figura 8, y ms bien representa una aproximacin a las distintas y complejas
fases que se llevan a cabo a la hora de desarrollar un sistema inteligente, y que
pueden variar de una situacin a otra.
31
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Conceptualizacin
Formalizacin
FASE 2
Implementacin
Prueba
32
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Identificacin:
Esta fase abarca desde la lectura de libros o artculos, las entrevistas o
charlas con las personas familiarizadas con el tema y la bsqueda de un
experto que est dispuesto a colaborar en la construccin del sistema; como
as tambin la definicin de cules son las funciones o tareas ms idneas
para ser realizadas por el sistema experto.
Estas tareas son importantes para determinan que lenguaje y que sistema se
usar para el trabajo de investigacin.
En esta etapa el conocimiento del dominio del problema debe ser razonable
para poder entenderse con el experto humano, comprendida tambin como
la etapa de familiarizarse con el problema y el dominio.
Aqu tambin se reconocen aspectos importantes del problema, como son
los participantes (expertos del dominio, ingenieros del conocimiento y
futuros usuarios), las caractersticas del problema (tipo, subtareas de que se
compone, terminologa a utilizar, aspectos fundamentales, etc.), los recursos
disponibles (fuentes de conocimiento, facilidades computacionales, tiempo
de desarrollo, financiacin, etc.), y las metas a alcanzar (formalizar
conocimiento experto, distribuir experiencia, ayudar a la formacin de
nuevos expertos, etc.).
33
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Conceptualizacin:
Fase mediante la que se trata de organizar el conocimiento segn un
esquema conceptual. El experto y el ingeniero del conocimiento tratan de
encontrar conceptos que representen el conocimiento del experto, al mismo
tiempo que intentan determinar cmo es el flujo de informacin durante el
proceso de resolucin de problemas realizando entrevistas con el experto,
con el objetivo de identificar y caracterizar el problema informalmente.
Bsqueda de conceptos que representen el conocimiento del experto.
El experto de campo y el ingeniero de conocimiento definen el alcance del
sistema experto, es decir, que problemas va a resolver concretamente el
sistema experto, en esta etapa se tiene que delimitar el sistema.
Con el problema adecuadamente definido el ingeniero de conocimiento
inicia a determinar los principales conceptos del dominio que se requieren
para realizar cada una de las tareas que va a resolver el sistema.
Este trata de entender que conceptos son relevantes e importantes
solicitndole al experto que explique y justifique los razonamientos que
utiliza para resolver los problemas. Esto es importante para la tarea de
definicin
del
sistema
experto
para
mantener
una
adecuada
34
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Formalizacin:
Esta fase consiste en traducir los conceptos clave, los subproblemas, y las
caractersticas del flujo de informacin, identificados durante la fase
anterior, en representaciones formales basadas en herramientas o esquemas
de la ingeniera del conocimiento.
El ingeniero de conocimiento debe formalizar el conocimiento obtenido del
experto. Esta tarea implica definir que arquitectura permitir una mejor
organizacin del conocimiento.
Es necesario elegir la organizacin, lenguaje y medio ambiente de
programacin adecuados para la aplicacin particular.
Se definen los conceptos primitivos, con la forma de representacin elegida.
Este es el primer paso hacia la implementacin del prototipo.
El ingeniero de conocimiento deber a medida que se desarrolla el prototipo
lo siguiente:
Que el formalismo usado es el apropiado para reflejar los conceptos y el
proceso de inferencia del experto.
35
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Implementacin:
En esta fase, el ingeniero de conocimiento formula reglas, y estructuras de
control, que representan los conceptos y el conocimiento formalizado. El
resultado es un programa prototipo que nos permite comprobar si hemos
conceptualizado y formalizado bien el conocimiento que el experto tiene
sobre el problema.
Se refina el sistema prototipo, depurado la base de conocimientos, refinando
reglas, rediseando la estructura del conocimiento, o reformulando
conceptos bsicos, con el objetivo de capturar informacin adicional que
haya proporcionado el experto. Tambin se consultan en esta etapa otros
expertos para corroborar, controlar, ampliar y refinar el prototipo, es la fase
de depuracin del sistema prototipo.
36
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Prueba:
Esta fase consiste en la evaluacin del rendimiento del prototipo construido
para encontrar errores o anomalas en la base de conocimientos o en los
mecanismos de inferencia.
Cuando el sistema prototipo ha crecido tanto que resulta difcil de manejar
el ingeniero de conocimiento redisea un sistema ms eficiente. Este nuevo
sistema deber refinarse y extenderse a fin de completar as el desarrollo del
sistema experto.
Esto es transformar efectivamente el sistema prototipo en un sistema
experto aplicable optimizando el sistema experto prototipo.
Retroalimentacin de Buchanan:
Buchanan sita los lazos de realimentacin despus de la fase de prueba,
pero tambin indica que el proceso no tiene por qu seguir estrictamente la
secuencia representada en la figura anterior. Autores posteriores, como
Mayrhauser, sealan que las retroalimentaciones pueden aparecer entre
cualquier par de fases de la metodologa.
As, por ejemplo, si el ingeniero del conocimiento no encuentra reglas
adecuadas durante la implementacin puede requerir una vuelta atrs y una
reformulacin del problema. La nueva representacin del ciclo de vida de
los sistemas inteligentes sera tal y como se presenta en la siguiente Figura 9,
una red completamente comunicada.
37
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
38
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
39
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
40
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Recomendaciones:
Realizar el anlisis de requerimientos directamente con las personas
involucradas tanto estudiantes del curso como el docente o experto a cargo del
curso, puesto que seran los que van a utilizar el sistema experto y podrn dar
informacin adecuada y necesaria.
Para el desarrollo de un sistema experto se recomienda el uso de una
metodologa apropiada que permita utilizar esquemas, diagramas, grficos y
dems herramientas que facilitan la elaboracin de la conceptualizacin y
formalizacin del sistema.
41
Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin
Referencias bibliogrficas:
[1]Sr. Fernando A. Slagueiro (2005). Sistemas Inteligentes basados en
tecnologas para
Snchez.
SISTEMAS
EXPERTOS:
UNA
METOLOGIA
DE
42