Taller 1 - Control inteligente

Anuncio
CONTROL INTELIGENTE
Laboratorio Nº5 INTRODUCCIÓN A LOS ALGORITMOS GENETICOS
Profesor: Juan Pablo Rivera.
Objetivos

Implementar algoritmos genéticos para la solución de problemas tales como el valor
máximo y mínimo de una función, y el movimiento de un robot siguiendo las paredes
de una habitación.
MARCO TEORICO
Los algoritmos genéticos corresponden a la clase de métodos estocásticos de
búsqueda Que operan en una población de soluciones. La idea básica, inspirada en
los procesos evolutivos en biología, es que el contenido genético de una población
contiene potencialmente la solución, o una solución mejor, a un dado problema de
adaptación. Esta solución puede estar inactiva porque la combinación genética
adecuada esta diseminada entre varios sujetos. Solo la asociación de genomas
distintos puede llevar a la activación de la solución.
PROCEDIMIENTO
1. Graficar las siguientes funciones de dos variables, encontrando sus valores
máximo y mínimo mediante el uso de MATLAB. Seleccionar a partir de la grafica
un rango adecuado de valores en los que le interese identificar el máximo y el
mínimo.
(X2+Y2-1)
7
6
5
4
3
2
1
0
-1
-2
2
1.5
1
2
1.5
0.5
1
0
0.5
-0.5
0
-0.5
-1
a.
-1
-1.5
-2
Y
-1.5
-2
X
Rango de valores: -1 y 1 (Después de estos valores el valor máximo disminuye,
pero el valor mínimo permanece igual)
Valor mínimo: -1
Valor máximo: 9.3907e+030
(2 sin(4 x)+cos(2 y))
b. 2sen4x+cos2y
3
2
1
0
-1
-2
-3
10
8
6
4
2
0
-2
-4
-6
-8
-10
y
-10
-8
-6
-4
-2
0
2
4
6
8
10
x
Rango de valores: -10 y 10 (Aquí es indiferente la selección de este punto, ya que
la función es cíclica y no influirá en los valores máximo y mínimo.)
Valor mínimo: -3
Valor máximo: 3
((2 x 2) (y 2)+(3 x)-(2 y))
c. 2X^2Y^2+3X-2Y+8=0
50
40
30
20
10
0
-10
2
1.5
1
0.5
Rango
0
valores: -74 y
la
función
2
1.5
de
74 (Entre estos puntos
-1
alcanza su valor más alto)
1
0.5
-0.5
0
-0.5
-1
-1.5
-2
y
-1.5
-2
x
Valor mínimo: -3.1660
Valor máximo: 2.2065e+149
2. Que es un algoritmo genérico y qué relación tendría esta técnica con el numeral
anterior.
Es una técnica de optimización que encuentra los algoritmos propios para la variable
en un proceso, permite seleccionar de un grupo de individuos el más óptimo o los más
óptimos,
Esta técnica se relaciona con el punto anterior en que busca los valores más óptimos,
en este caso estamos en una búsqueda de los valores mínimos y máximos de la
función
3. Haga un programa en matlab donde mediante programación genética un robot
pueda moverse siguiendo las paredes de una habitación.
(IF (IF (IF (se)(0)(ne))
(OR (se) (este))
(IF (OR (AND (e) (0) )
(so))
(OR (so)(0))
(AND(NOT(NOT(AND (s) (se))))
(se))))
(IF (o)
(OR (norte)
(NOT (NOT (s))))
(oeste))
(NOT (NOT (NOT (AND (IF (NOT (sur))
(se)
(o))
(NOT (n)))))))
CONCLUSIONES

Para hallar el mínimo de la función con los algoritmos genéticos se debe poner
un signo menos que se anteponga a la función para que tome esta al revés y
así engañar al sistema haciendo que el mínimo detectado sea en verdad el
máximo de la función.

Los algoritmos genéticos toman como base la evolución humana en el cual
como selección natural solo sobreviven los individuos más aptos, que para el
caso solo sobreviven los software más aptos para la solución del problema.

Los algoritmos genéticos ofrecen óptimas soluciones a problemas complejos,
ya que no solo encuentran programas eficaces, es decir, que realicen su tarea
sino que además buscan el más eficiente de estos, ósea el que realice su labor
en el menor tiempo posible.

A diferencia de los otros algoritmos, cuya convergencia y resultado final son
fuertemente dependientes de la posición inicial, en los algoritmos genéticos la
convergencia del algoritmo es poco sensible a la población inicial si esta se
escoge de forma aleatoria y es lo suficientemente grande.
Descargar