1) desarrollar el algoritmo usado para implementar algoritmo genético
Procedimiento: Algoritmo Genético
begin
t<- 0;
inicializar P(t);
evaluar P(t);
Mientras (no condición de parada) hacer
Recombinar P(t) para generar C(t);
evaluar C(t);
seleccionar P(t+1) de P(t)UC(t)
t<- t+1;
end
end
2) definición agentes inteligentes
Un agente es todo aquello que percibe su ambiente mediante sensores y
que responde o actúa en tal ambiente por medio de efectores.
Los agentes no requieren de la participación de los humanos para operar.
3) ejemplo de donde se puede aplicar algoritmo genético
9. EJEMPLOS PRÁCTICOS
En el siguiente enlace, se puede apreciar de forma práctica los
conocimientos expuestos en relación a los algoritmos genéticos
[Link] En esta
página se encuentra un applet de Java en el que se muestra un relieve de
un determinado paisaje generado de forma aleatoria. Se puede elegir la
población inicial. Al ejecutar el programa, el algoritmo trata de buscar la
máxima altura a la que podemos ascender.
Otro ejemplo de algoritmo genético se puede encontrar en
[Link] donde el algoritmo trata de
buscar una copia de una figura partiendo de otras generadas de forma
aleatoria.
4) diga variables que se toman en cuenta al desarrollar algoritmo
genético
Para el estudio de los algoritmos genéticos hay que tener en
cuenta una serie de parámetros:
3.1 Tamaño de la Población
Este parámetro nos indica el número de cromosomas que tenemos en nuestra
población para una generación determinada. En caso de que esta medida sea
insuficiente, el algoritmo genético tiene pocas posibilidades de realizar
reproducciones con lo que se realizaría una búsqueda de soluciones escasa y
poco óptima. Por otro lado si la población es excesiva, el algoritmo genético será
excesivamente lento. De hecho estudios revelan que hay un límite a partir del cual
es ineficiente elevar el tamaño de la población puesto que no se consigue una
mayor velocidad en la resolución del problema.
3.2 Probabilidad de Cruce
Indica la frecuencia con la que se producen cruces entre los cromosomas padre es
decir, que haya probabilidad de reproducción entre ellos. En caso de que no exista
probabilidad de reproducción, los hijos serán copias exactas se los padres. En
caso de haberla, los hijos tendrán partes de los cromosomas de los padres. Si la
probabilidad de cruce es del 100% el hijo se crea totalmente por cruce, no por
partes.
3.3 Probabilidad de Mutación
Nos indica la frecuencia con la que los genes de un cromosoma son mutados. Si
no hay mutación, los descendientes son los mismos que había tras la
reproducción. En caso de que haya mutaciones, parte del cromosoma
descendiente es modificado y si la probabilidad de mutación es del 100%, la
totalidad del cromosoma se cambia. En este caso, no se cambian simplemente
unos bits del cromosoma sino que se cambian todos, lo que significa que se
produce una inversión en el cromosoma y no una mutación por lo que la población
degenera muy rápidamente.
5) explica la diferencia en usar agentes genéticos
6) diferencias y ventajas de algoritmo genético
• una clara ventaja es que los algoritmos genéticos son Intrínsicamente paralelos,
es decir, operan de forma Simultánea con varias soluciones, en vez de trabajar de
Forma secuencial como las técnicas tradicionales. Esto Significa que mientras
técnicas tradicionales sólo Pueden explorar el espacio de soluciones hacia una
Solución en una dirección al mismo tiempo, y si la Solución que descubren resulta
subóptima, no se puede Hacer otra cosa que abandonar todo el trabajo hecho y
Empezar de nuevo. Sin embargo, los algoritmos Genéticos simplemente desechan
esta solución Subóptima y siguen por otros caminos.
• cuando se usan para problemas de optimización Resultan menos afectados por
los máximos locales (falsas soluciones) que las técnicas tradicionales. Muchos
algoritmos de búsqueda pueden quedar Atrapados en los óptimos locales: si
llegan a lo alto de Una colina del paisaje adaptativo, descubrirán que no Existen
soluciones mejores en las cercanías y concluirá Que han alcanzado la mejor de
todas, aunque existan Picos más altos en algún otro lugar del mapa, situación Que
no sucede para algoritmos genéticos.
• otra ventaja es su habilidad para manipular muchos Parámetros
simultáneamente. Resulta interesante en Caso de tener varios objetivos a
resolver.
• no necesitan conocimientos específicos sobre el Problema que intentan resolver.
Realizan cambios Aleatorios en sus soluciones candidatas y luego utilizan La
función de aptitud para determinar si esos cambios Producen una mejora o no.
• resulta sumamente fácil ejecutarlos en las modernas Arquitecturas masivas en
paralelo.
• usan operadores probabilísticos, en vez de los típicos Operadores
determinísticos de las otras técnicas.
7. Desventajas de los algoritmos Geneticos
• definir una representación del problema. El lenguaje Utilizado para especificar
soluciones candidatas debe ser Robusto, debe ser capaz de tolerar cambios
aleatorios Que no produzcan constantemente errores fatales o Resultados sin
sentido. Se puede solucionar mediante la Definición de los individuos como listas
de números Donde cada número representa algún aspecto de la Solución
candidata.
• pueden tardar mucho en converger, o no converger en Absoluto, dependiendo en
cierta medida de los Parámetros que se utilicen -tamaño de la población,
Número de generaciones…
• pueden converger prematuramente debido a una serie de Problemas. Si un
individuo que es más apto que la Mayoría de sus competidores emerge muy
pronto en el Curso de la ejecución, se puede reproducir tan Abundantemente que
merme la diversidad de la Población demasiado pronto, provocando que el
Algoritmo converja hacia el óptimo local que representa Ese individuo, en lugar de
rastrear el paisaje adaptativo Lo bastante a fondo para encontrar el óptimo global.
Esto es un problema especialmente común en las Poblaciones pequeñas, donde
incluso una variación Aleatoria en el ritmo de reproducción puede provocar Que un
genotipo se haga dominante sobre los otros.
7) Agente inteligente características
Las cualidades que tendría un agente inteliente ideal, según James A. Hendler,
serían:
Comunicativo: el agente debe entender las necesidades, objetivos y
preferencias del usuario para que éste pueda realizar su función
correctamente. El agente también debe poder comunicarse con el entorno
mediante representaciones compartidas de conocimiento (ontologías).
Capaz: El agente no sólo debe proporcionar una información, sino también un
servicio, es decir, debe tener capacidad para hacer cosas. Por ejemplo, si
se precisa un artículo de revista y ésta es de pago, el agente debe ser
capaz de encontrar el artículo, informar del precio, dar el número de tarjeta
de crédito, etc.
Autónomo: el agente, además de comunicarse, debe poder interactuar con el
entorno, tomando decisiones y actuando por sí solo, limitando sus acciones
según el nivel de autonomía permitida por el usuario.
Adaptativo: Debe ser capaz de aprender del entorno: preferencias de
usuarios, fuentes de información y de otros agentes.