trabajos en altura 2024, sistemas de contencion anticaidas
Inspiraciones biológicas de la ingeniería: aprendiendo lecciones de la madre naturaleza
1. ingeniería: aprendiendo lecciones de la
Abraham Otero Quintana
Inspiraciones biológicas de la
madre naturaleza
Abraham Otero Quintana
aotero@ceu.es
1/75
3. Inspiraciones biológicas de la ingeniería
• La ciencia a menudo tiene como objetivo estudiar la
naturaleza.
• El objetivo suele ser comprender la naturaleza para
tomar ventaja de cómo funciona
– Procesos industriales, diseño de nuevos materiales, medios
de transporte, predicción de fenómenos metereológicos…
Abraham Otero Quintana
– Física, química, biología, astronomía, geología…
3/75
4. Inspiraciones biológicas de la ingeniería
• La madre naturaleza ha tenido que “resolver
problemas” complejos, y a lo largo de millones de
años de evolución ha encontrado soluciones
ingeniosas.
• En ocasiones estas soluciones pueden ser aplicables en
ingeniería para resolver problemas complejos que, si
no pudiésemos copiar a la madre naturaleza, quizás
incluso no podríamos resolver.
Abraham Otero Quintana
4/75
5. Abraham Otero Quintana
Índice
1. Introducción a la inteligencia artificial
2. Algoritmos genéticos
3. Redes neuronales artificiales
4. Algoritmos bioinspirados
5. Conclusiones
5/75
6. Algoritmos Genéticos
• Los algoritmos genéticos son programas
que “evolucionan”, simulando en cierto
grado la selección natural, y alcanzan a
resolver problemas complejos que ni
siguiera quienes los crearon comprenden.
Abraham Otero Quintana
6/115
JJoohhnn HH.. HHoollllaanndd
7. Algoritmos Genéticos
– Problemas de búsqueda (optimización: clasificación, diseño, juegos,
etc.)
– Disponemos de un espacio de soluciones previsiblemente complejo y
amplio o de muchas restricciones difíciles de representar
matemáticamente.
– Deseamos encontrar la solución, o la mejor de entre todas.
– La búsqueda está guiada por una función objetivo que tratamos de
maximizar (juegos) o minimizar (reconocimiento de patrones).
Abraham Otero Quintana
• Caracterización del problema:
7/115
8. Algoritmos Genéticos
• Gregor Mendel (1822) descubre que los
caracteres se heredan de forma discreta,
y les llama genes.
Abraham Otero Quintana
• Charles Darwin (1859) introduce la
teoría de la evolución en el libro “El
origen de las especies por medio de la
selección natural”.
8/115
9. Abraham Otero Quintana
Algoritmos Genéticos
9/115
• Walther Flemming
descubre en 1879 los
cromosomas.
• Watson y Crick descubren
en los años 1950 el ADN.
10. Algoritmos Genéticos
• Existen dos tipos de mecanismos que condicionan la
Abraham Otero Quintana
evolución de una especie:
– Mecanismos de disminución de variabilidad:
1. Selección natural.
2. Deriva genética.
– Mecanismos de aumento de la variabilidad:
10/115
1. Mutación.
2. Poliploidía.
3. Recombinación.
4. Flujo genético.
11. Algoritmos Genéticos
• Los algoritmos genéticos fueron propuestos por Holland
en 1970.
• Son métodos sistemáticos para la resolución de problemas
de búsqueda y optimización.
• Es decir, hallar una solución S={x1,x2,...,xn} tal que
F(x1,x2,...,xn) sea máximo o mínimo (según). {x1,x2,...,xn} se
codifican en un cromosoma.
• Aplican métodos análogos a los de la evolución
biológica: selección, reproducción sexual y mutación.
Abraham Otero Quintana
11/115
12. Algoritmos Genéticos
• Codificación: cada individuo (cadena) codifica un
conjunto de genes (parámetros) en bloques de código.
– Se puede demostrar que la codificación sobre la que actúan
mejor los algoritmos genéticos es aquella que emplea un
alfabeto de tamaño dos.
Abraham Otero Quintana
1 0 1 1 0 0 1 0 1 0 0 0 1 1 1 0 1 1 0 0 0
Gen 1 Gen 2 Gen 2 Gen 3 Gen 4
12/115
13. Abraham Otero Quintana
13/115
Recombinación de 1 punto
100101001110011100011101
111001101001110110111110
100101001
111001101
00111
11001
100101001110011100011101
111001101001110110111110
Recombinación de 2 puntos
100101001110
111001101001
110110111110
011100011101
1100011101
0110111110
Algoritmos Genéticos
• Recombinación: se define como el intercambio de
subcadenas entre individuos.
• Se habla de recombinación de n-puntos, siendo n
el número de puntos de corte.
14. Algoritmos Genéticos
• Mutación: se define como la variación en uno o más
elementos del código de un individuo.
• Es necesario establecer previamente una frecuencia de
mutación. Por ejemplo, uno por mil.
Abraham Otero Quintana
111001101001110110111110
mutación
11100110101 1110110111110
14/115
15. Algoritmos Genéticos
1. Cada individuo se evalúa según la función objetivo.
2. Las que logran mayor puntuación se aparean entre sí,
Abraham Otero Quintana
15/115
mediante recombinación.
3. Tiene lugar una mutación en una fracción pequeña de la
población, con el fin de que no se dé una población
uniforme.
4. Es necesario un criterio de finalización.
16. 0’60 0111111101101011010
0’60 1010101101101100011
0111111101101100011
1100001101101001001
Abraham Otero Quintana
0111111101101011010
1010101101101100011
1100001101101011111 1100001101101011111
16/115
POBLACIÓN INICIAL
0111111101101011010
1010101101101100011
0011101101111101001
1110110101101001000
0000111101101101110
0010010001101001100
0’60
0’60
0’50
0’45
0’30
0’25
0’20
0’10 0101010100101101011
APAREAMIENTO
X
X
X
X
0011101101111101001
POBLACIÓN RESULTANTE
1010101101101011010
1100001101101011111
0’70
0’60
0011101101111111111
0’50
0’50
0’50
0’30
0011101101110101001
mutación
Algoritmos Genéticos
17. Algoritmos Genéticos
• Los algoritmos genéticos echan la red sobre el espacio
de soluciones.
• Los distintos individuos de la población exploran
distintas zonas del espacio de soluciones. Paralelismo.
• Si el problema evoluciona, no es necesario reiniciar la
búsqueda. La población constituye un contenedor de
conocimiento que puede servir para adaptarse a los
cambios.
Abraham Otero Quintana
17/115
18. Abraham Otero Quintana
Algoritmos Genéticos
18/115
• Aplicaciones:
– Control de redes de distribución de gas.
– Control de temperatura de grandes edificios.
– Diseño de turbinas.
– Diseño de redes neuronales.
– Diseño de nuevos fármacos.
– Simulación de ecosistemas. Vida artificial.
– Aprendizaje.
– Minería de datos.
19. Abraham Otero Quintana
Algoritmos Genéticos
• Veámoslos en acción: 1D
(http://cs.felk.cvut.cz/~xobitko/ga/)
19/115
20. Abraham Otero Quintana
Algoritmos Genéticos
• Veámoslos en acción: 3D
(http://cs.felk.cvut.cz/~xobitko/ga/)
20/115
21. Abraham Otero Quintana
Algoritmos Genéticos
• Veámoslos en acción: problema del viajante
(http://cs.felk.cvut.cz/~xobitko/ga/)
21/115
22. Abraham Otero Quintana
Algoritmos Genéticos
22/115
• Bibliografía:
– J. Holland, “Algoritmos genéticos”. Investigación y Ciencia, 192, 38-45,
1992.
– D. B. Fogel, “What is evolutionary computation?”. IEEE Spectrum, 26-32,
2000.
– C. Z. Janikow y D. St. Clair. “Genetics algorithms. Simulating nature’s
methods of evolving the best design solution”. IEEE Potentials, 31-35, 1995.
– D. B. Fogel. “What is evolutionary computation?”. IEEE Spectrum, 26-32,
2000.
24. Abraham Otero Quintana
Redes Neuronales
• Cajal describe por primera vez
en 1887 los distintos tipos de
neuronas.
dendritas
Estructura de la neurona.
24/115
soma
axón
25. Redes Neuronales
• Los contactos entre neuronas se denominan sinapsis, y
pueden ser de naturaleza química, eléctrica o mixta.
• En una sinapsis química, la llegada de impulso eléctrico
provoca la liberación de neurotransmisores, para los que la
dendrita postsináptica posee receptores específicos.
Abraham Otero Quintana
Ejemplo de funcionamiento de una
sinapsis química
26. Abraham Otero Quintana
Redes Neuronales
• La conexión entre dos neuronas puede ser excitadora
o inhibidora de la neurona postsináptica.
27. • La plasticidad neuronal hace referencia a la capacidad del
sistema nervioso de remodelar los contactos entre
neuronas y la eficiencia de las sinapsis.
Un sistema aprende cuando es capaz de experimentar
modificaciones estructurales y/o funcionales que se
manifiestan en su comportamiento externo como una mejora
en la realización de una tarea.
Abraham Otero Quintana
Redes Neuronales
28. n
S
wixi > θ Σi=1
1 si
0 en caso contrario
Abraham Otero Quintana
PESO
x1
x2
xn
actividad aferente
(entrada)
S=f(θ)=
actividad eferente
(salida)
Redes Neuronales
S f(θ)
-2
0.2
0.5
SUMADOR
FUNCIÓN
DE
ACTIVACIÓN
x1w1
x2w2
xnwn
n
wixi Σi=1
• Los pesos constituyen la memoria a largo plazo, y su
ajuste corresponde a lo que se denominará aprendizaje.
29. Redes Neuronales
• En el caso más sencillo, la neurona proporciona a la
salida un valor de activación o de inhibición.
• Esto se logra mediante la función de activación.
Abraham Otero Quintana
1.0
f f
0.0
t
1.0
0.0
t
función escalón función sigmoide
31. Abraham Otero Quintana
Redes Neuronales
• Tipos de entrenamiento:
– Supervisado: se le presentan a la red ejemplos de
clases diferentes.
– No supervisado: la red neuronal busca una partición
adecuada del espacio de entrada.
– Mediante refuerzo: no se le proporciona a la red un
conjunto ejemplos, pero sí un refuerzo positivo o
negativo según clasifique bien o mal.
32. Abraham Otero Quintana
• Aplicaciones:
Redes Neuronales
– Explotación de datos (data mining).
– Evaluación en la concesión de préstamos hipotecarios.
– Verificación de firmas en cheques.
– Predicción en la evolución de mercados.
– Reconocimiento de formas en percepción visual.
– Diagnóstico médico.
– Reconocimiento óptico de caracteres.
– Filtrado en telecomunicaciones.
– Predicción de demanda de consumo eléctrico.
– Control adaptativo en procesos industriales.
33. • Aplicación militar: reconocimiento de
formas.
Una red de Hopfield memorizó aviones o trozos de aviones
serbios y reconoció éste bajo la cola de un avión comercial
Abraham Otero Quintana
Redes Neuronales
34. Abraham Otero Quintana
Redes Neuronales
• Veamos algunos ejemplos:
– http://www.aispace.org/neural/sample2.html
34/115
35. • J. Freeman y D. Skapura, “Redes neuronales: algoritmos,
aplicaciones y técnicas de programación”. Addison
Wesley, 1993.
• G. E. Hinton, “Redes neuronales que aprenden de la
experiencia”. Investigación y Ciencia, noviembre 1992.
• D. R. Hush y B. Horne, “An overview of neural networks.
Part I: static networks”. Informática y Automática, 25(1),
1992.
• S. Russell y P. Norvig, “Inteligencia Artificial. Un
enfoque moderno”. Prentice Hall, 1996.
• P. Isasi e I. Galván, “Redes Neuronales Artificiales. Un
enfoque práctico”. Prentice Hall, 2004.
Abraham Otero Quintana
Redes Neuronales
36. Abraham Otero Quintana
Índice
1. Introducción a la inteligencia artificial
2. Redes neuronales artificiales
3. Algoritmos genéticos
4. Algoritmos bioinspirados
5. Conclusiones
36/75
37. Computación Bioinspirada
• Las colonias hormigas, termitas y abejas, entre otras
colonias de insectos, constituyen algunos de los sistemas
auto-organizados más interesantes.
– Administran eficientemente los recursos de la colonia.
– Construyen viviendas complejas.
– Realizan cooperativamente tareas como la búsqueda de alimento,
enfrentamiento con enemigos, traslado de objetos, etc.
• … y lo hacen sin un control central y con una
comunicación limitada.
• Aparecen comportamientos complicados, coordinados,
dirigidos por objetivos a partir de la interacción de
múltiples individuos.
Abraham Otero Quintana
37/75
38. Computación Bioinspirada
• Los investigadores en computación se han inspirado
en el comportamiento social de las colonias de
insectos para resolver problemas parecidos.
• Se inspiran en los insectos como las RNA se inspiran
en la organización del cerebro.
• No por imitar a lo natural se obtiene un buen
resultado. Se trata de imitar a lo natural en aquello en
lo que lo natural obtiene muy buenos resultados.
Abraham Otero Quintana
38/75
39. Computación Bioinspirada
• Los algoritmos basados en colonias de hormigas se
inspiran en el comportamiento de las hormigas reales.
• Las hormigas resuelven sus problemas mediante la
cooperación multiagente y una comunicación basada en la
modificación del entorno.
• Cada hormiga libera una hormona llamada feromona.
• Las hormigas prefieren seguir el rastro de las feromonas.
• Eso les permite optimizar las rutas a seguir hasta el
alimento.
Abraham Otero Quintana
39/75
40. Computación Bioinspirada
• Una avanzadilla de hormigas sale en busca de alimento
siguiendo direcciones aleatorias.
Abraham Otero Quintana
40/75
41. Computación Bioinspirada
• Cuando encuentran un obstáculo lo rodean de un modo
aleatorio (arriba, abajo, izquierda, derecha).
Abraham Otero Quintana
41/75
42. Computación Bioinspirada
• El rastro más corto es más intenso en contenido de
feromona, y se convierte en preferido.
Abraham Otero Quintana
42/75
43. Computación Bioinspirada
• Supongamos un sistema basado en una red de
comunicaciones (red vial, red telefónica, internet).
• Se desea comunicar los puntos A y B.
Abraham Otero Quintana
43/75
A
B
• Hacemos que una avanzadilla de hormigas
artificiales recorran la red, dejando menos
feromona en los nodos más congestionados.
• Las rutas más congestionadas tienen un rastro más débil y
se abandonan progresivamente.
• Puesto que la feromona se evapora, el método se adapta a
la situación actual de la red.
44. • Las hormigas realizan tareas como las de clasificar
• Estos comportamientos todavía no se conocen bien,
pero se pueden modelar mediante comportamientos
locales probabilistas:
1. Es más probable recoger un artículo cuando difiere de lo que lo
Abraham Otero Quintana
cadáveres, ordenar la alimentación.
44/115
rodea.
2. Es más probable dejar un artículo entre los que se le parecen.
• Podemos resolver nuestros problemas siguiendo esta
estrategia.
Computación Bioinspirada
45. • Imaginemos que queremos sentar a mucha gente en un
banquete. Parece razonable sentar juntos a los conocidos.
• Podemos construir un grafo que representa la relación
conocido: une nodos que corresponden a gente que se
conoce.
• Ponemos encima del grafo y una colonia de hormigas.
1. Cada hormiga recoge un nodo si está rodeado de nodos
Abraham Otero Quintana
45/115
desconocidos.
2. Cada hormiga deposita un nodo si está rodeado de nodos
conocidos.
Computación Bioinspirada
46. Computación Bioinspirada
• Poco a poco se van formando
los grupos.
• Algunas utilidades reales de
clasificación de este tipo de
algoritmos pueden ser:
Abraham Otero Quintana
46/115
– Diseño de circuitos electrónicos
(los componentes electrónicos
conectados deben estar cerca)
– Gestión eficiente de
computadoras paralelas (los
procesos con dependencia de
datos deben ejecutarse en el
mismo procesador).
47. Computación Bioinspirada
• Demo: http://www.rennard.org/alife/english/antsgb.html
Abraham Otero Quintana
47/115
48. Abraham Otero Quintana
Computación Bioinspirada
48/75
• Bibliografía:
– J. Schneider, Swarm intelligence, Communications of the
ACM, 45(8), 62-67.
49. Abraham Otero Quintana
Índice
1. Introducción a la inteligencia artificial
2. Redes neuronales artificiales
3. Algoritmos genéticos
4. Algoritmos bioinspirados
5. Conclusiones
49/75
50. • Las soluciones de la madre naturaleza no tienen
que ser siempre las mejores…
Abraham Otero Quintana
Conclusiones
50/75
51. Abraham Otero Quintana
Conclusiones
• Pero a veces pueden ser sorprendentemente
buenas… y sencillas
51/75
52. Abraham Otero Quintana
http://www.uspceu.com/
¿Preguntas?
Abraham Otero Quintana
aotero@ceu.es
52/75