Sunteți pe pagina 1din 42

UNIVERSIDAD NACIONAL DE TRUJILLO

FACULTAD DE CIENCIAS FSICAS Y MATEMTICAS


ESCUELA ACADMICO PROFESIONAL DE INFORMTICA

SISTEMA EXPERTO PARA EL MODELADO DE


UN TUTOR PARA EL APRENDIZAJE DE
ESTRUCTURAS BASICAS DE
PROGRAMACION

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

Gracias a Dios por cada da de vida, a mi familia que


siempre estuvo conmigo en las buenas y en las malas y
a mi asesora por los conocimientos brindados y por la
exigencia acadmica que fue aliento para la realizacin
de este trabajo.

Castro Reyna Frank Peter

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

INTELIGENTE PARA EL APRENDIZAJE DE ESTRUCTURAS BASICAS


DE PROGRAMACION, con la finalidad de obtener el Ttulo de INGENIERO
INFORMTICO.
El presente trabajo de investigacin tiene como uno de sus objetivos
principales entregar, tanto al lector como a los profesionales involucrados, el
desarrollo de un Tutor Inteligente que se adapte a las necesidades del alumno
para el aprendizaje de estructuras bsicas de programacin.

Castro Reyna Frank Peter

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

Frank Peter Castro Reyna

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

resolucin pedaggica de estos ejercicios, as como la explicacin de la solucin


haciendo uso del modelado del tutor enmarcado dentro de la arquitectura de
los sistemas tutores inteligentes con sus submdulos e interfaces, utilizando las
herramientas que provee la ingeniera de software y la inteligencia artificial.

Palabras Clave: tutor inteligente, inteligencia artificial, modelado de tutor,


sistemas tutores inteligentes.

Frank Peter Castro Reyna

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.

Key Words: Intelligent tutor, artificial intelligence, shaped of tutor, systems


intelligent tutors.

Frank Peter Castro Reyna

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.

Por este motivo es necesario desarrollar un sistema tutor inteligente


(utilizando sistemas inteligentes) que realice la tarea de tutora adaptndose a
diferentes modalidades o estrategias de enseanza. Esta podra ser una
alternativa til sobre todo para aquellos estudiantes que requieren un mayor
grado de tutora del tipo uno a uno, es decir personalizado.

Frank Peter Castro Reyna

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Formulacin del problema


Cmo modelar un tutor inteligente para el aprendizaje de estructuras bsicas
de programacin?

Hiptesis
El desarrollo de un sistema experto permitir

modelar un tutor para el

aprendizaje de estructuras bsicas de programacin.

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.

Frank Peter Castro Reyna

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Tipos:
Segn la tcnica que utilizan:

Sistemas basados en reglas:


Las cuales son formadas por una base o conjunto de reglas que
representa las relaciones entre variables, tomando como orden la
forma de resolver los problemas de la manera Si premisa, entonces
conclusin", como por ejemplo lo que se muestra en las figuras
siguientes:

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

Figura 1: Conjunto de seis reglas.

Figura 2: Representacin grfica de las 6 reglas.

Frank Peter Castro Reyna

10

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Sistemas basados en probabilidad:


La cual se forma por medio de una base de conocimiento que
contiene formulas probabilsticas y el motor de inferencia que
contiene muchos mtodos probabilsticos para hallar, en s, la
probabilidad de los sucesos aplicando distintas hiptesis de
independencia.

Sistemas basados en redes neuronales artificiales:


Una red neuronal artificial es un procesador distribuido en paralelo
de forma masiva que tiene una tendencia natural para almacenar
conocimiento de forma experimental y lo hace disponible para su
uso, su funcionamiento se basa en funcin a las neuronas del cerebro
humano, en la figura siguiente vemos una red de neuronas
artificiales.

Capa de nodos
de entrada

Capa
neuronas
ocultas

de

Capa
neuronas
salida

de
de

Figura 3: Representacin grfica de una red neuronal artificial.

Frank Peter Castro Reyna

11

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Sistemas basados en rboles de decisin:


El rbol de decisin es una representacin jerrquica de atributos con
el fin obtener conocimiento especfico para solucionar problemas en
donde se deben tomar decisiones.

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

Figura 4: Esquematizacin de los componentes de un sistema experto, en la cual las


flechas vienen a ser los flujos de informacin.

Frank Peter Castro Reyna

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.

Frank Peter Castro Reyna

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

expertos. No hace mucho tiempo, el flujo de trfico en las calles se una


ciudad se controlaban mediantes guardias de trficos ubicados en las
intersecciones de dichas calles. Hoy en da se usan los sistemas expertos
en los semforos hacindoles operar de manera automtica regulando el
flujo de trfico en las calles de la ciudad.

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.

Frank Peter Castro Reyna

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.

Desarrollo de un sistema experto


En la figura 5 se muestra las etapas para disear e implementar un sistema
experto.

Figura 5: Etapas de desarrollo de un sistema experto.

Frank Peter Castro Reyna

15

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Planteamiento del problema: Es la primera fase por la cual se nos


centraramos en un problema a resolver.

Encontrar al experto humano: Es la persona y/o base de datos


que pueden resolver el problema.

Diseo del sistema experto: Por la cual como su nombre indica,


comenzamos a disear el motor de inferencias, almacenamos los
datos en la base del conocimiento, etc.

Elegir herramienta de desarrollo: En esta etapa veremos si


usaremos un lenguaje de programacin o una herramienta para
desarrollar el sistema experto.

Desarrollo y prueba del prototipo: En esta etapa, cuando el


prototipo no cumple con los requisitos establecidos pasara a las
etapas anteriores hasta que est conforme a lo que le encomiende
dichos requisitos.

Refinamiento y generalizacin: Es la parte o etapa donde se


pulen los fallos y se le integran nuevas tareas que no se integraron
en el inicio.

Mantenimiento y puesta al da: La cual se da si el prototipo tiene


algunos defectos o problemas, en esta etapa se corrige estos
problemas, se actualiza, etc.

Frank Peter Castro Reyna

16

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Diferencias entre un sistema experto y un experto


humano:
En la tabla N 1, nos da una idea del porque debemos usar un sistema experto
en comparacin de un experto humano:

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

Necesita ser enseado

Experiencia Personal

Entrada Simblica

Enfoque amplio

Enfoque cerrado

Conocimiento del sentido comn

Conocimiento tcnico

Tabla N 1: Diferencias entre experto humano y experto artificial.

Frank Peter Castro Reyna

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,

tendenciosas, irracionales o emocionales.


No padece de olvido, fatiga, dolor o comete errores de clculo.
No

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.

Frank Peter Castro Reyna

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.

Figura 6: Relacin entre la IA, la Ingeniera del Conocimiento y otras reas.

Frank Peter Castro Reyna

19

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

La inteligencia artificial (IA) surge as como una disciplina cuyo objetivo es


proveer tcnicas para el desarrollo de programas capaces de simular la
inteligencia que utilizan los humanos para solucionar problemas en una gran
cantidad de dominios [Krishnamoorthy et al, 1996], por lo que la IA provee un
conjunto de formalismos que pueden representar los problemas, las
herramientas y tcnicas para resolverlos.
Segn diversos autores [Krishnamoorthy et al, 1996; Newell, 1969] las
actividades esenciales asociadas con la inteligencia son:

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

En general, estas definiciones miden el xito de la implementacin de


herramientas de la Inteligencia Artificial (IA) de dos maneras diferentes:

Frank Peter Castro Reyna

20

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

En trminos de performance humana: Es decir, capacidad de resolucin


de problemas, capacidad de razonamiento abstracto, etc.
En trminos de racionalidad o concepto ideal de inteligencia: Como
establece Stuart [Stuart et al., 1995] quien define a un sistema como
racional si hace lo correcto, es decir, una accin a la que llega por
medio de procesos lgicos mesurables.

Definiciones de la Inteligencia Artificial


Bellman en 1978 la defini como: La automatizacin de las actividades
que asociamos con el pensamiento humano, actividades como la toma de
decisiones, la solucin de problemas y el aprendizaje. Esta definicin
tambin es aplicada por Villareal Goulat [Villareal Goulat, 2001].
Haugeland en 1985 la defini como: El nuevo y excitante esfuerzo de
hacer pensar a las computadorascomputadoras con mente, en el
sentido completo y literal de la frase.
Segn Charniak y McDermott en 1985 es: El estudio de las facultades
mentales a travs del uso de modelos computacionales. Para Kurzweil
en 1990 es: El arte de crear mquinas que realicen funciones que
requieran una cierta inteligencia cuando estas tareas son desempeadas
por personas.
Schalkoff en 1990 la defini como: Un campo de estudio que busca
explicar y emular el comportamiento inteligente en trminos de procesos
computacionales.
Para Rich y Knight en 1991 es: El estudio para hacer a las computadoras
realizar tareas, en las que por el momento los humanos son mejores.
Segn Winston en 1992 es: El estudio de la computacin para hacer
posible el percibir, razonar y actuar.
Luger y Stubblefield en 1993 la definieron como: La rama de la ciencia
de la computacin que se encarga de la automatizacin del
comportamiento inteligente.

Frank Peter Castro Reyna

21

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Por ltimo, se considera a los dos pioneros de la investigacin en


Inteligencia Artificial, Barr y Feigenbaum, quienes la definen de la
siguiente manera: La Inteligencia Artificial es la parte de la Ciencia que
se ocupa del diseo de sistemas de computacin inteligentes, es decir,
sistemas que exhiben las caractersticas que asociamos a la inteligencia
en el comportamiento humano que se refiere a la comprensin del
lenguaje, el aprendizaje, el razonamiento, la resolucin de problemas,
etc. [Barr et al., 1981].
Todas estas definiciones mencionadas son vlidas y cada una agrega un
aspecto al amplio campo de estudio que es la Inteligencia Artificial (IA).

Sistemas Tutores Inteligentes


Guardia Robles [Guardia Robles, 1993] resume un conjunto de caractersticas
que deben cumplir todos los Sistemas Tutores Inteligentes (STI):
Deben ser inteligentes en comparacin con los sistemas tradicionales de
instruccin por computadora (CAI), siendo el diferencial de inteligencia los
mtodos de la rama de la Inteligencia Artificial (IA). Deben poseer la capacidad
tanto para resolver el problema que se le presenta a un estudiante como
tambin la capacidad de explicar cmo lo resolvi.
Como en los CAI tradicionales, permiten una mayor individualizacin en la
instruccin, llegando ms lejos, a travs del entendimiento de las metas y
creencias del estudiante.
Se usan tcnicas de Inteligencia Artificial para planeacin, optimizacin y
bsquedas, dejando que el sistema decida el orden de presentacin del
contenido al alumno.
La interaccin puede ser muy variada en un STI: desde sistemas pasivos (que
esperan para que el alumno realice una accin), hasta los que constantemente
presentan nueva informacin (tutor oportunista), con casos intermedios en los
que se ensea un concepto en un momento determinado o solo cuando el
alumno lo pide.

Frank Peter Castro Reyna

22

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Utilizan nuevas tecnologas, con los ejemplos de interfaces orientadas a la


utilizacin de multimedia y del WWW.
No basta con indicarle un error al estudiante, el sistema debe hacer hiptesis
basadas en el historial de errores del alumno y detectar la fuente del problema.
Con estas consideraciones en mente, Guardia Robles [Guardia Robles, 1993]
presenta una definicin para los tutores inteligentes: Un Sistema Tutor
Inteligente es un sistema de enseanza asistida por computadora, que utiliza
tcnicas de Inteligencia Artificial, principalmente para representar el
conocimiento y dirigir una estrategia de enseanza; y es capaz de comportarse
como un experto, tanto en el dominio del conocimiento que ensea (mostrando
al alumno cmo aplicar dicho conocimiento), como en el dominio pedaggico,
donde es capaz de diagnosticar la situacin en la que se encuentra el estudiante
y de acuerdo a ello ofrecer una accin o solucin que le permita progresar en el
aprendizaje. Villareal [Villareal, 2003] plantea que los Sistemas Tutores
Inteligentes (STI) simulan a un tutor autoritario que posee una estrategia de
enseanza de los conceptos del dominio del tipo uno a uno. Adems es un
experto en un dominio de conocimiento determinado y acta como gua, tutor o
entrenador. Este tutor debe poder adaptarse a las necesidades, que surgen a lo
largo de la interaccin en una sesin de tutelado, del estudiante alumno.

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].

Frank Peter Castro Reyna

23

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Mdulo del Alumno: Este mdulo debe representar el estado inicial


del alumno y sus caractersticas individuales, entre ellas una de las ms
importantes es el conocimiento individual instantneo sobre el dominio
[Villareal Goulart et al., 2001]. Guardia Robles [Guardia Robles, 1993] lo
define como: El modelo del estudiante, que refleja cunto conoce el
estudiante sobre el dominio, as como las experiencias cognitivas y de
aprendizaje que ha llevado, del cual puede obtenerse un diagnstico.
Mdulo del Tutor: Este mdulo posee el conocimiento sobre las
estrategias y tcticas de enseanza para poder seleccionarlas en funcin
de las caractersticas del alumno, que estn almacenadas en el mdulo
del alumno [Villareal Goulart et al., 2001]. Pero debe ir ms all de la
experiencia en el dominio, ya que debe ofrecer a cada estudiante un
mtodo de enseanza de acuerdo con sus necesidades.
Mdulo del Dominio: Este mdulo posee el conocimiento de la
materia formado por las reglas de produccin, estereotipos, etc. De aqu
el mdulo tutor obtiene el conocimiento que debe ensear [Villareal
Goulart et al., 2001]. Definido como El modelo experto o del dominio, el
cual versa sobre la materia o curso que se impartir [Guardia Robles,
1993].

Mdulo de Evaluacin: Se encarga de realizar una evaluacin


general del sistema y generar estadsticas acerca de los avances de los
estudiantes; pudiendo efectuar el diagnstico evolutivo luego de cada
uno de los estados considerados, de este modo podra tambin predecir
el comportamiento en los eventos futuros. La evaluacin de los
estudiantes debe ser constante y durante la carga del proceso, con
instancias de autoevaluacin. Tambin se debern generar informes a
utilizar para evaluar al sistema como mtodo apto de enseanza.

Frank Peter Castro Reyna

24

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Mdulo de Interface: Es la interface de interaccin entre el STI y el


alumno real, que se encarga de presentar el material del dominio y
cualquier otro elemento didctico de la manera correcta [Villareal
Goulart et al., 2001]. La interface, que permite a los usuarios interactuar
con el sistema. Se distinguen tres tipos especficos de usuarios: el
Estudiante, el Instructor, y el Desarrollador del sistema.[Guardia
Robles, 1993]. Para su diseo pueden seguirse los criterios ergonmicos
basados en el estndar ISO 9241 para Human Computer Interface (HCI)
u otros similares.

Modelado del Tutor


Los primeros tres mdulos conforman la arquitectura clsica propuesta por
Carbonell [Carbonell, 1970] y tambin funcional de los STI [Villareal Goulart et
al., 2001] Esta postura present grandes avances en el modelado de ambientes
educativos, ya que separ el dominio de la forma en la que ste es utilizado
[Villareal Goulart et al., 2001].

Figura 7: Estructura clsica de un Sistema Tutor Inteligente propuesta por


Carbonell [Carbonell, 1970].

Frank Peter Castro Reyna

25

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Justificacin del Problema

Desde el punto de vista prctico o social

Esta investigacin encuentra su justificacin al proveer de una Asesora


personalizada del estudiante que mejorar el rendimiento del mismo, Por lo
tanto, este trabajo surge motivado por las debilidades detectadas en el anlisis y
la existencia de una falta de estandarizacin para generar Sistemas Tutores
Inteligentes (STI) con de propsito especfico que puedan aplicarse a diferentes
perfiles, en particular al modelado del tutor.

Desde el punto de vista cientfico tecnolgico


En este trabajo se plantea la solucin tomando en cuenta como dominio de
aplicacin el correspondiente al rea de Programacin Bsica. El mdulo del
tutor debe disearse de tal modo que pueda brindar una solucin adecuada a
los problemas descritos en la problemtica que presentan los estudiantes para
mejorar el rendimiento de ellos aportando este sistema de Asesora inteligente a
la comunidad cientfica.

Frank Peter Castro Reyna

26

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Objetivos
Generales

Desarrollar un sistema

experto

para

modelar un tutor para el

aprendizaje de estructuras bsicas de programacin.

Especficos

Establecer los fundamentos que sustentan las teoras seleccionadas.


Seleccionar los componentes del mdulo del tutor mediante el uso de
submdulos que permitan guiar a los estudiantes en el proceso de
aprendizaje que manera que respondan a sus necesidades

Modelar el subsistema tutor enmarcado dentro de la arquitectura de los


sistemas tutores inteligentes con sus submdulos e interfaces, utilizando
las herramientas que proveen la ingeniera de software y la inteligencia
artificial.
Contrastar la hiptesis de investigacin

Frank Peter Castro Reyna

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:

Z=1.85 para el 90% de confianza

P = 0.91(caso ms desfavorable, desconocido)

E = casi 15% --> 0.14

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).

Frank Peter Castro Reyna

28

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

1.3. Operacionalizacin de variables:


1.3.1. Variable independiente:
Sistema experto.

1.3.2. Variable dependiente:


Modelado del 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

aprendizaje de las estructuras bsicas


de programacin.
Porcentaje de alumnos aprobados.

Tabla N 2: tabla de variables con sus respectivos indicadores.

Frank Peter Castro Reyna

29

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

1.4. Diseo de investigacin:


El mtodo utilizado es inductivo, porque de los informes obtenidos
(estadsticas del departamento de informtica) se puede aplicar tecnologa
de tutor inteligente a los estudiantes segn su perfil.
Diseo de contrastacin:
Este diseo se diagrama de la siguiente manera:

Dnde:
X = Desarrollo de un sistema experto

(VI)

O=Aprendizaje de estructuras bsicas de programacin (VD)

Frank Peter Castro Reyna

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

Figura 8: Esquematizacin de la metodologa de Buchanan.

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.

Frank Peter Castro Reyna

31

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

En sntesis, el mtodo de Buchanan se muestra en dos fases, como lo muestra la


siguiente Tabla N 3, que describe en cada una de ellas los componentes que lo
conforman.

Seleccionar al experto, fuentes y medios


Identificacin
FASE 1

de conocimiento y clara definicin del


problema.
Encontrar los conceptos claves y las

Conceptualizacin

relaciones necesarias para caracterizar el


problema.
Reformulacin permanente de conceptos,

Formalizacin
FASE 2

Implementacin

rediseo de la forma de representacin,


refinamiento del sistema implementado,
crticas y sugerencias de los expertos
permiten una mejora y un control del

Prueba

funcionamiento del sistema.

Tabla N 3: cuadro de fases de metodologa de Buchanan.

Frank Peter Castro Reyna

32

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

La descripcin de cada una de estas fases es la siguiente:

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.).

Frank Peter Castro Reyna

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

documentacin del mismo, ya que es til para la tarea de diseo,


construccin y para posteriores modificaciones del sistema.
El ingeniero de conocimiento debe prestar atencin al experto de campo
para encontrar la estructura bsica que el experto utiliza para resolver el
problema.
Est etapa est formada por una serie de mecanismos organizativos que el
experto de campo usa para manejarse en ese dominio. Esta estructura bsica
de organizacin del conocimiento le permite al experto realizar ciertos tipos
de inferencias.

Frank Peter Castro Reyna

34

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

El ingeniero de conocimiento adems debe reconocer las estrategias bsicas


que usa el experto cuando desarrolla su tarea, que hechos establece primero,
que tipos de preguntas realiza primero, si define supuestos inicialmente sin
bases con informacin tentativa, como determina el experto que pregunta
debe usar para refinar sus suposiciones y en qu orden el experto prosigue
con cada subtarea y si ese orden vara segn el caso.
La estructura del conocimiento indica que tareas y trminos est usando y la
estrategia indica cmo y cundo el sistema experto debe establecerlas.

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.

Frank Peter Castro Reyna

35

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Que las caractersticas particulares de construccin del lenguaje capturen


exactamente los aspectos estructurales ms importantes de los conceptos
usados por el experto.
Que la estructura de control del lenguaje al activar las reglas refleja la
estrategia usada por el experto.
Que las reglas reflejen asociaciones y mtodos que:

Son los usuarios por el experto

Son medios aceptables de dichos mtodos

El ingeniero de conocimiento puede presentar las reglas definidas y en


ocasiones los resultados obtenidos al usar las reglas, para que el experto
manifieste su opinin sobre la representacin y soluciones definiendo el
sistema experto prototipo.

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.

Frank Peter Castro Reyna

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.

Frank Peter Castro Reyna

37

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Figura 9: Ciclo de vida de un sistema experto.

Las estructuras de este tipo son muy complejas de controlar y de manejar, ya


que el nmero de iteraciones entre las fases es desconocido, y los objetivos
pueden cambiar a medida que avanza el desarrollo. Tambin es difcil llevar a
cabo un control de los progresos realizados.

Frank Peter Castro Reyna

38

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Captulo II: Resultados


Identificar los objetivos para los alumnos :
Establece cul es el objetivo de la sesin pedaggica que se est llevando
a cabo y qu es lo que se pretende obtener como resultado para los
estudiantes una vez finalizada dicha sesin.
Para esto el agente docente usar la informacin sobre el alumno
proveniente del agente alumno, segn su perfil.
Ser capaz de detectar las necesidades del alumno:
Esto se tiene que hacer en base a los requerimientos del alumno para
modificar la estrategia de enseanza si as fuera necesario.
Supervisar y establecer el avance hacia los objetivos:
Esto se refleja en el nivel del alumno segn su avance.
Seleccionar los protocolos pedaggicos ms eficientes:
Esto se debe hacer para cada una de las sesiones pedaggicas a fin de
impartirla de tal manera de lograr los mejores resultados con los
elementos disponibles, que se pueden obtener a travs del mdulo del
estudiante y del mdulo del dominio.

Presentar la explicacin de un concepto:


Si es necesario de diferentes maneras, para variar el modo de presentar
un tema si el alumno no alcanza a comprender el concepto nuevo.
Esta tarea se realiza en colaboracin con el agente Docente, el agente
Alumno, el Gestor de Estrategias, el Mdulo de Dominio y el Generador
de Lenguaje Natural.

Frank Peter Castro Reyna

39

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Exponer numerosos ejemplos:


Sobre los conceptos analizados utilizando al agente docente y al
generador de lenguaje natural.

Recibir las respuestas:


Del agente alumno a las evaluaciones y las eventuales consultas del
alumno.

Ordenar y actualizar el registro de los nuevos conceptos adquiridos


por los alumnos:
Para esto el Agente Docente trabaja con el Agente Alumno. Supervisar
las tareas que el alumno realice en colaboracin con otros alumnos,
como parte de su aprendizaje colaborativo.
Comunicarse con los otros agentes Docentes:
Por ejemplo, para acordar tareas a realizar por los alumnos.

Frank Peter Castro Reyna

40

Sistema experto para el modelado de un tutor para el aprendizaje de estructuras bsicas de programacin

Captulo III: Conclusiones


Se ha investigado el problema integrando distintas perspectivas a fin de obtener
una base terica consolidada, sobre la cual desarrollar el sistema experto para el
modelado de un tutor teniendo en cuenta las fases de desarrollo del sistema
experto para entender cmo se gestionara el uso del sistema por los estudiantes
en los casos en que la sesin se realiza para tutorizado , definiendo la fase de
identificacin y conceptualizacin del sistema experto.

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.

Frank Peter Castro Reyna

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

un Tutor. Universidad de Buenos Aires.

[2] Zulma Cataldi y Fernando J.Lage (2009). Sistemas tutores inteligentes


orientados a la enseanza para la comprensin. Universidad Tecnolgica
Nacional.
[3] Sra. Constanza Raquel Huapaya(2009). Sistema Tutorial Inteligente un
Anlisis Crtico. Universidad Nacional de la Plata.
[4] Quilcatoma Panchi Betty y Quimitiba Cadena Norma Amparo (2006).
Sistema de Tutor Inteligente para programacin bsica c bajo el modelo de
objetos de aprendizaje. Escuela Politcnica del Ejrcito.
[5] Olmo Castillo (2010).Tutorial de Introduccin de Lgica Borrosa. Octubre
2010.
[6] Javier Rivas Rodrguez (2008). Sistema de Ayuda a la Toma de Decisiones
basado en rboles de Decisin Fuzzy. Universidad Complutense de MadridEspaa.
[7] Ruth Marlene Calle (2011). Sistema experto de orientacin legal en los
procedimientos conciliatorios de conflictos agrarios. Universidad mayor de
San Andrs La Paz-Bolivia.
[8]

Snchez.

SISTEMAS

EXPERTOS:

UNA

METOLOGIA

DE

PROGRAMACION. Prentice Hall. Mxico. 1991.

Frank Peter Castro Reyna

42

S-ar putea să vă placă și