Proyecto #1(I-2007) - Facultad de Ciencias-UCV

Anuncio
UNIVERSIDAD CENTRAL DE VENEZUELA
FACULTAD DE CIENCIAS
ESCUELA DE COMPUTACION
INTELIGENCIA ARTIFICIAL
Proyecto 1
Algoritmos Genéticos
Existe un juego muy popular para realizarse entre grupos de amigos, que consiste
en hacer dos equipos que van a pujar de una cuerda en direcciones contrarias con
la finalidad de hacer caer al otro equipo. A pesar de ser un juego simple, este tiene
algunas reglas que cumplir.
1. Los equipos no pueden tener mas de un integrante de diferencia.
2. La diferencia de pesos entre los equipos tiene que ser mínima.
Se quiere que Ud. Implemente un algoritmo genético para resolver el problema
con las restricciones anteriores y tomando en cuenta las siguientes:
1. La cantidad de participantes no excede de 30.
2. Los pesos de los participantes son enteros positivos mayores que 0.
Requerimientos
1. Los valores de la cantidad de individuos y los pesos de los mismos tienen que
ser leídos de un archivo de texto plano con el siguiente formato:
<cantidad de personas(N)>
<peso persona 1>
…
<peso persona N>
2. Puede ser implementado en C/C++ o Java. (para C++ usar ANSI-C o gcc/g++).
3. Como resultado del algoritmo tienen que indicar en que equipo debe participar
cada persona y cuanto fue la diferencia de pesos entre los equipos.
4. Implementar dos mecanismos de cruce diferentes.
5. En la aplicación se debe poder seleccionar el mecanismo de cruce a utilizar.
6. En la aplicación se debe poder seleccionar utilizar solamente mutación.
7. Un informe corto que contenga la siguiente información:
 Explicar la codificación utilizada en el cromosoma.
 Describir los dos mecanismos de cruce implementados.
 3 gráficos de rendimiento de la población promedio y mejor individuo por
generación: 1 para cada operador de cruce, y uno utilizando solo mutación.
Cada grafico es tomado en la mejor configuración de variables para ese
escenario.
 Indicar los parámetros que se utilizaron para cada corrida. (probabilidad de
cruce, probabilidad de mutación, tamaño de la población inicial)
 Analizar cual operador de cruce funciona mejor, cual converge en menos
generaciones a la solución.
 Instrucciones para utilizar el programa.
La fecha tope de entrega del proyecto es el 30 de mayo de 2007. El proyecto
puede ser realizado en equipos de máximo 2 personas. El proyecto puede ser
entregado vía correo electrónico hasta las 11:59pm del día de entrega, correos
que tengan fecha posterior al tope se consideran no entregados.
Todos los proyectos se pueden entregar vía e-mail bajo las siguientes
restricciones:
 Los fuentes deben compilar y correr sin falla (cero segmentation faults,
excepciones, fatal error, etc.
 Los archivos (fuentes + informe + extras) deben estar en 1 solo adjunto,
ya sea en: tar, zip, rar, bz2, gz, etc. Proyectos con mas de un adjunto no se
consideraran entregados y serán notificados.
 Los archivos deben estar libre de virus. Proyectos con virus son
considerados no entregados y serán notificados.
 Cada proyecto entregado por esta vía recibirá un correo de vuelta
notificando su recepción, si no reciben este correo su proyecto no fue
entregado.
ic/IA
Descargar