Está en la página 1de 11

Captulo 1

Introduccin
Las Unidades Acadmicas con las que cuenta la Universidad Mayor de San Andrs
de la ciudad de La Paz - Bolivia (UMSA) denominadas Facultades, proveen formacin
profesional a nivel licenciatura en sus distintas Carreras. Para ser estudiante de una
Carrera es necesario cumplir ciertos requisitos propias de cada Facultad e inscribirse
posteriormente semestral o anualmente, segn las polticas administrativas de ca da una
de ellas.
Cada semestre o ario, es necesario que los estudiantes realicen el proceso de
inscripcin a las materias que les corresponde cursar, por tanto tienen que tomar en cuenta
una combinacin de materias para realizar tal proceso. Adems, cada materia tiene uno o
ms paralelos, segn la cantidad de estudiantes con los que cuenta una Carrera.
El presente trabajo de investigacin, toma en cuenta el proceso de inscripcin de los
estudiantes de la Carrera de Informtica de la Facultad de Ciencias Puras y Naturales, que se
realiza semestralmente.
Al inicio de cada semestre, los estudiantes de la Carrera de Informtica se inscriben a
las respectivas materias que les corresponde cursar. Para tal proceso, los estudiantes
tienen disponible los horarios de las distintas materias que se cursan en la Carrera de
Informtica, en el cual se describe los detalles de: semestre, materia, paralelo, hora, da,
docente y aula.
Segn pensum i de la Carrera de Informtica, cada estudiante tiene a disposicin siete,
Pensum, programa de estudios que comprende todas las materias que un estudiante debe cursar a lo largo de
toda la Carrera.

ocho o ms materias, de los cuales elige una combinacin de una hasta siete materias.
Existen combinaciones de materias no factibles para el estudiante, porque existe la
posibilidad de que dos o ms materias coincidan en la misma hora y en el mismo da ; por
tanto un estudiante no podr asistir a las dos materias, lo cual lleva a explorar otras
combinaciones de materias, y dedicarle ms tiempo a la bsqueda de combinaciones de
materias.
La Carrera de Informtica cuenta con un Sistema de Informacin Acadmico (SIA) que
facilita la inscripcin de los estudiantes va Internet. Tomando en cuenta la cantidad de
estudiantes, la inscripcin se realiza en un lapso de tres a cuatro das.
La fecha y hora de inscripcin, se asigna a cada estudiante mediante un sorteo aleatorio, por
tanto un estudiante puede inscribirse en cualquiera de los das mencionados, y a una hora
determinada de dicho da.
En el proceso de inscripcin; cada estudiante tiene que tomar en cuenta un conjunto de
horarios como alternativas de eleccin; lo cual conlleva a que los estudiantes dediquen mayor
tiempo a la elaboracin de horarios.
En la bsqueda de los mejores horarios', dos de los criterios de seleccin que toman
en cuenta los estudiantes son: evitar que dos o ms materias coincidan en la misma hora
y en el mismo da, y evitar horas de espera entre materias que se cursan en un mismo
da.
El objetivo es mostrar que los algoritmos genticos pueden ser aplicados en la bsqueda de
horarios y en la eleccin del mejor de los mismos, bajo los criterios de seleccin utilizados por
los estudiantes en la confeccin de horarios y minimizar el tiempo empleado en la bsqueda de
combinaciones de materias y paralelos (horarios), con relacin al proceso manual que
actualmente utilizan los estudiantes, ampliando el conjunto de posibles horarios como
alternativas de eleccin.

1.1. Antecedentes
Los algoritmos genticos son mtodos adaptativos que pueden usarse para resolver
problemas de bsqueda y optimizacin. Estn basados en el proceso gentico de los orga2

Horario, entindase corno una combinacin de materias y paralelos generados por el estudiante, en base a ciertos

criterios.

nismos vivos. A lo largo de las generaciones, las poblaciones evolucionan en la naturaleza


de acuerdo con los principios de la seleccin natural y la supervivencia de los ms fuertes,
postulados por Charles Darwin (1859). Por imitacin de este proceso, los algoritmos
genticos permiten explorar soluciones prximas a la ptima para problemas del mundo
real. La evolucin de dichas soluciones hacia valores ptimos del problema depende en
buena medida de una adecuada codificacin de las mismas. El poder de los algoritmos
genticos proviene del hecho de que se trata de una tcnica robusta, y pueden tratar con
xito una gran variedad de problemas provenientes de diferentes reas, incluyendo
aquellos en los que otros mtodos encuentran dificultades. Si bien no se garantiza que el
algoritmo gentico encuentre la solucin ptima del problema, existe evidencia emprica
de que se encuentran soluciones de un nivel aceptable, en un tiempo competitivo con el
resto de algoritmos de optimizacin combinatoria
Los algoritmos genticos, diseados a partir de una formulacin simple, con una
operativa basada en el uso de un operador de recornbinacion y mutacion es aleatorias de
soluciones, estos algoritmos han sido reportados como exitosamente aplicables a una
amplia gama de problemas de optimizacin y bsqueda [15].
En la Carrera de Informtica se desarrollaron los siguientes proyectos:
Sistema de asignacin de aulas. El proyecto de grado "Sistema Automatizado de

Asignacin de Aulas para la Carrera de Informtica" desarrollado por Calle [4],


tiene como objetivo la asignacin de aulas a las materias, de manera que no haya
conflictos entre las distintas materias que se dictan en la Carrera de Informtica.
Para la asignacin de aulas, toma en cuenta un modelo de programacin lineal con
enfoque a bases de datos relacionales.
Asignacin de infraestructura acadmica. La tesis de grado "Asignacin de

ecursos de Infraestructura Acadmica con Algoritmos Genticos" desarrollado por


Morales [14], propone un modelo para la asignacin de infraestructura acadmica
basado en algoritmos genticos, cuyo objetivo es la asignacin ptima de aulas a
las respectivas materias bajo varias restricciones.
Internet dispone de informacin de software referente a la generacin de horarios para
instituciones de enseanza, entre los cuales destacan: Free Evolutionary Timetabling
Software (FET), gp-Untis Gestin completa de horarios y AGH/iX Ayuda a la gestin
3

de horarios. FET es un software multiplataforma con licencia GPL? (cdigo libre) basada en
algoritmos genticos, y los restantes corresponden a software comercial.
Los trabajos realizados desde el punto de vista Administrativo hasta la fecha (Junio,
2009) contemplan sobre todo la asignacin de aulas de manera ptima a las respectivas
materias, evitando posibles conflictos que se generan al realizar dicho proceso admi nistrativo; la propuesta del presente trabajo de investigacin se centra en el punto de vista del
estudiante. el cual decide bajo ciertos criterios las materias que desea cursar de acuerdo al
tiempo que dispone, para ello toma en cuenta la asignacin de aulas a las materias, que
proporciona la Direccin de la Carrera de Informtica.

1.2. Planteamiento del problema


Debido a la libertad que tiene cada estudiante en la eleccin de sus horarios, y tambin
por razones de trabajo, tiempo, adelanto de materias, o abandono de materias, los estudiantes se inscriben a materias de distintos semestres, por tanto tienen que explorar
horarios en donde dos o ms materias no coincidan en la misma hora y da. En el caso que
el estudiante pertenezca a un slo semestre, los das y horas asignadas a materias del
mismo semestre, estn elaboradas de tal manera que no coincidan, as los estudiantes solo
tienen que preocuparse del hecho de tener algunos horarios como alternativas de eleccin
para el proceso de inscripcin.
Para inscribirse correctamente, los estudiantes deben confeccionar un conjunto de
horarios, para evitar que en algn momento de dicho proceso, los paralelos de las distintas
materias lleguen a su lmite y el Sistema de Informacin Acadmico (STA) no permita que
ms estudiantes se inscriban en dichos paralelos, por tanto algunos de los horarios
elaborados pueden ser rechazados. reduciendo la posibilidad de xito, de all surge la
importancia de tomar en cuenta un variado conjunto de horarios alternativos, para no t ener
que retrasar su inscripcin.
Realizar la seleccin de materias de manera manual (probar combinaciones de mate rias para ver cuales de ellas se ajustan a los criterios de seleccin del estudiante) resulta
ser muy moroso y precisa que se le dedique un mayor tiempo para obtener buenos resultados.
3

GPL, GNU General Public Licensc

La Direccin de la Carrera de Informtica recomienda que los estudiantes elaboren


varios horarios tentativos para realizar su correspondiente inscripcin, para evitar problemas posteriores a la misma. Esta recomendacin se fundamenta en el hecho de que los
paralelos, tienen un lmite en la cantidad de estudiantes que pueden inscribirse, esto es
conocido como Cupo. La cantidad de estudiantes que pueden inscribirse como mximo en
algn paralelo, est de acuerdo con el aula asignado a dicho paralelo.

1.2.1. Descripcin cuantitativa del problema


Cada estudiante tiene a disposicin un conjunto de n materias
{mi

12 , 7112, .

rn,i}

(1.1)

donde mi (i = 1,2 ............................ n) es una materia que le corresponde cursar a cada estudiante.
Dada las 11 materias, de los cuales cada estudiante puede elegir desde uno hasta y
materias, por lo que el nmero total de combinaciones de materias t que se puede
explorar, est dado por
t=
k=1

Is Men k)!

con

y< n

(1.2)

adems cada materia n (ecuacin 1.1) tiene p i paralelos,


(1.3)
respectivamente
Por ejemplo, sea M8 una combinacin cualesquiera de seis materias
A s = 17n3, TU1,1/15, T11 1117

18j

y P8 el producto de los paralelos de cada materia presente en la combinacin de materias A 1 -8


se pueden explorar
P8 rx 7)3 X 7)4 x 7)5 X P13 X P7 1<

Ps

(1.5)

combinaciones de paralelos, por lo tanto, a cada combinacin de materias Al i le corresponde T combinaciones de paralelos, donde i = 1,2,

, t.

Generalizando, la cantidad total de horarios T que se pueden confeccionar para un estudiante


en particular, est dada por
T=
con P p x pb x

(1.6)

+ P2 + P3

x p donde:

pu

es la cantidad de paralelos de la materia

mit

a cr 1, 2, .

, ri

PS

es la cantidad de paralelos de la materia

mb

h = 1,2.

,n

pk

es la cantidad de paralelos de la materia

Tak

k-= 1, 2, ...

y las materias 'm a, m5 , ...... mk corresponden a la combinacin de materias


= {uta, mb,

filk }

con

= 1, 2,

(17)

1.2.2. Criterios de seleccin


Los criterios de seleccin son restricciones que los estudiantes de la Carrera de Informtica
emplean en la confeccin de horarios.
Para explorar todas las combinaciones de materias y paralelos, se requiere bastante tiempo.
Los estudiantes no exploran todas las combinaciones de materias y paralelos (eso requiere de
tiempo excesivo e innecesario), se basan en ciertos criterios de seleccin para confeccionar
horarios, como:
Evitar que dos o ms materias coincidan en la misma hora y en el mismo
da. Este criterio indica que un estudiante no puede asistir a dos materias que se

cursan en la misma hora y en el mismo da, por tanto es el criterio ms importante


que toman en cuenta los estudiantes en la confeccin de horarios
Evitar que haya horas de espera entre dos materias que se cursan en el
mismo da. Este criterio est relacionado con la disponibilidad de tiempo del

estudiante; si un estudiante tiene tiempo disponible para esperar entre dos materias
que se cursan en un mismo da, puede obviar ste criterio; caso contrario debe
buscar ms combinaciones de materias y paralelos, en los cuales se minimice las
horas de espera.
6

Tomando los criterios de seleccin, los estudiantes van buscando en el conjunto de


todas las combinaciones de mal erias y paralelos, aquellos horarios que se ajusten a sus
expectativas (mejores horarios). No siempre se encuentra aquel horario ptimo en tal
proceso, al igual que los algoritmos genticos, slo se encuentra una solucin prxima a
la ptima.

1.2.3. Pregunta de investigacin


tos Algoritmos Genticos podrn reducir en un 70% el tiempo empleado por los es tudiantes en la bsqueda de horarios y en la eleccin del mejor horario bajo los diferentes
criterios de seleccin, con relacin al proceso manual que realizan actualmente?

1.3. Objetivos
1.3.1. Objetivo general
Mostrar que los algoritmos genticos pueden ser aplicados en la generacin de horarios
bajo los criterios de seleccin, reduciendo el tiempo empleado por los estudiantes en la
bsqueda de horarios y facilitar en la eleccin del mejor horario.

1.3.2. Objetivos especficos


Definir la funcin de codificacin del algoritmo gentico.
Definir la funcin de evaluacin (fitness) del algoritmo gentico.
Definir los operadores de seleccin, recombinacin y mutacin.
Desarrollar un prototipo que permita generar horarios bajo criterios de seleccin.
Aplicar encuestas de opinin que revelen el tiempo empleado por los estudiantes en la
bsqueda de horarios, mediante el proceso actual.

1.4. Hiptesis
Los algoritmos genticos permiten reducir en un 70 % el tiempo empleado por los
estudiantes en la bsqueda de horarios y en la eleccin del mejor horario en base a los
criterios de seleccin.

1.4.1. Tipos de variables


Los tipos de variables identificados se describen en el cuadro 1.1

1.4.2. Operacionalizacin de variables


En el cuadro 1.2 se describe la operacionalizacin de variables para la hip tesis.

1.5. Metodologas y tcnicas


El mtodo cientfico persigue la solucin de problemas mediante el empleo de los diversos
tipos de razonamiento. Es en el mtodo cientfico donde los procesos del pensamiento
encuentran su ms adecuada expresin a travs de enunciados y argumentos que explican los
fenmenos del universo [121.
La investigacin que se plantea en ste trabajo, est vinculada a la resolucin de un problema
prctico, por tanto es una Investigacin Aplicada [161, la cual consiste en obtener
conocimientos necesarios para proceder luego a la accin.
Los algoritmos genticos son mtodos adaptativos que pueden usarse para resolver
problemas de bsqueda y optimizacin. Estn basados en el proceso gentico de los
organismos vivos, imitan el proceso de evolucin que se da en la naturaleza de acuerdo
Variable

Unidad de medida Escala de medicin

Tiempo bsqueda estudiante

Minutos

Discreta

Tiempo bsqueda algoritmo gentico

Segundos

Discreta

Nmero de materias

Unidad

Discreta

Mejor horario
Cuadro 1.1: Tipos de variables

Variable

Operacionalizacin

I Definicin

Tiempo bsqueda es- r Tiempo empleado por los


tudiante

o, 1, 2, 3, . , 30. .

estudiantes en la bsqueda
de horarios.

Tiempo b squeda al - Tiempo empleado por el 0, 1, 2. 3, . , 600, ..


goritmo gentico

1 algoritmo gentico en la
bsqueda de horarios.
Cantidad de materias a cur- Intervalo entre 1 a 7

Nmero de materias
Mejor horario

sar
Combinacin de materias y
paralelos que se ajusta con
mejor precisin a los criterios de seleccin del estudi ante.

Colisin de horarios'
Horas de espera en tre dos materias que
se cursan en el mismo
da.

Cuadro 1.2: Operacionalizacin de variables


con los principios de la seleccin natural y la supervivencia de los ms fuertes, postulados por
Darwin (1859).
La metodologa utilizada para desarrollar el prototipo es El Modelo de Construccin de
Prototipos [9] , el cual divide el proceso de creacin de prototipos en cuatro pasos principales:
Priorizar objetivos y alcances (Prioritize), Crear (Crcate) el prototipo, Revisar (Review) el
prototipo y Reaccionar (React) al prototipo.
Utilizando Tcnicas de Muestreo

y encuestas de opinin, se hallar el tiempo

promedio que actualmente utilizan los estudiantes en la elaboracin de horarios, para


posteriormente demostrar que el tiempo empleado en la elaboracin de horarios utilizando
algoritmos genticos, se reduce en un 70 (Xi con relacin al proceso manual que emplean
actualmente los estudiantes de la Carrera de Informtica.

1.6. Justificaciones
1.6.1. Justificacin social
La cantidad de estudiantes con los que cuenta la Carrera de Informtica, conlleva a que se
habiliten ms paralelos para las distintas materias, y mientras ms paralelos se tenga, ms
cantidad de horarios se puede explorar.
Para elaborar una variedad de horarios, es de mucha ayuda contar con un herramienta que
permita buscar tales horarios y en un tiempo mucho menor, al empleado actualmente por los
estudiantes.

1.6.2. Justificacin tcnica


Los recursos necesarios para realizar la investigacin corno libros, artculos y ejemplos de
aplicacin de los algoritmos genticos, se pueden obtener tanto de la biblioteca de la Carrera de
Informtica y tambin de Internet.
Para desarrollar el prototipo del algoritmo gentico, se har uso del Framework .NET
3.5 de Microsoft, el lenguaje de programacin C#, el IDE Sharpnevelop 3.0 corno entorno
de desarrollo de la aplicacin y el gestor de base de datos db4o. El Framework .NET 3.5
permite la ejecucin de un producto software en varios sistemas operativos, C# es un
lenguaje de programacin Orientado a Objetos, SharpDevelop facilita el desarrollo de
software y db4o es un Sistema Gestor de Base de Datos Orientado a Objetos.
Las herramientas mencionadas se encuentran a disposicin en Internet, lo que no tendr otro
costo ms que el tiempo empleado en descargar cada componente desde las pginas web
respectivas.

1.6.3. Justificacin cientfica


El presente trabajo de investigacin est dirigido a mostrar la potencialidad de los
algoritmos genticos, y a la vez incrementar la cantidad de aplicaciones realizadas con
los mismos, sobre todo en la bsqueda y optimizacion de problemas combinatorios.

1.7. Alcances y lmites


Los trabajos realizados en la Carrera de Informtica, dan nfasis a la asignacin de
aulas (infraestructura acadmica) a las correspondientes materias, bajo ciertas restric ciones, lo cual es til para la Direccin de la Carrera de Informtica. Uno de los objetivos
de la presente tesis, es desarrollar un prototipo en base a la tcnica de Inteligencia Arti ficial denominado Algoritmos Genticos, que permita minimizar el tiempo empleado en la
elaboracin de horarios, y se ajusten a las necesidades del estudiante.
Para realizar las encuestas se tom en cuenta a los estudiantes de la Carrera de
Informtica de segundo a sexto semestre, porque son en stos semestres donde se cuenta
con una. mayor cantidad de paralelos en cada materia, y un mayor nmero de estudiantes
inscritos.
El prototipo desarrollado toma en cuenta a un estudiante en particular, y no as a un conjunto
de los mismos, por tanto tornar en cuenta los criterios de seleccin particulares de dicho
estudiante, y los horarios generados sern de utilidad para ese estudiante.

1.8. Aportes
El algoritmo gentico propuesto, est implementado en un prototipo para coadyuvar a la toma
de decisiones de los estudiantes en el proceso de inscripcin, y permite observar su
comportamiento grficamente, ayudando a la comprensin y asimilacin de los algoritmos
genticos.
El poder de los algoritmos genticos proviene del hecho de que se trata de una tcnica
robusta para la resolucin de una amplia variedad de problemas. Para ver la utilidad de
los algoritmos genticos en la resolucin de problemas, una alternativa es observar su
rendimiento en modelos que permitan resolver problemas del inundo real y la manera en
que los algoritmos genticos son implementados en su respectivo prototipo

11

También podría gustarte