Читать книгу Algoritmos Genéticos con Python - Álvaro Rodríguez - Страница 6

Оглавление

Prefacio

I Parte 1: Introducción a los algoritmos genéticos

1 Introducción

1.1 Introducción a los algoritmos genéticos

1.2 Primeros pasos mediante un problema sencillo

1.3 Definición del problema y generación de la población inicial

1.3.1 Creación del problema

1.3.2 Creación de la plantilla del individuo

1.3.3 Crear individuos aleatorios y población inicial

1.4 Función objetivo y operadores genéticos

1.4.1 Función objetivo

1.5 Operadores genéticos

1.6 Últimos pasos: Algoritmo genético como caja negra

1.6.1 Configuración algoritmo genético

1.6.2 Resultados del algoritmo genético

1.7 ¿Cómo conseguir resultados consistentes?

1.8 Convergencia del algoritmo

1.9 Exploración versus explotación en algoritmos genéticos

1.10 Código completo y lecciones aprendidas

1.11 Para seguir aprendiendo

2 El problema del viajero

2.1 Introducción al problema del viajero

2.2 Definición del problema y generación de la población inicial

2.2.1 Creación del problema y plantilla para el individuo

2.2.2 Crear individuos aleatorios y población inicial

2.3 Función objetivo y operadores genéticos

2.3.1 Función objetivo

2.3.2 Operadores genéticos

2.4 Selección del algoritmo genético

2.5 Últimos pasos

2.5.1 Configuración del algoritmo genético µ + λ

2.6 Comprobar la convergencia del algoritmo en problemas complejos

2.7 Ajuste de los hiperparámetros: Probabilidades de cruce y mutación

2.8 Acelerando la convergencia del algoritmo: El tamaño del torneo

2.9 Acelerando la convergencia del algoritmo: Aplicar elitismo

2.10 Complejidad del problema: P vs NP

2.11 Código completo y lecciones aprendidas

2.12 Para seguir aprendiendo

3 Algoritmos genéticos y benchmarking

3.1 Introducción a las funciones de benchmark

3.2 Aprendiendo a usar las funciones de benchmark: Formulación del problema 78

3.2.1 Función h1

3.2.2 Función Ackley

3.2.3 Función Schwefel

3.3 Definición del problema y generación de la población inicial

3.4 Función objetivo y operadores genéticos

3.4.1 Función objetivo

3.4.2 Operadores genéticos

3.5 Código completo

3.6 Evaluación de algunas funciones de benchmark

3.6.1 Función h1

3.6.2 Función Ackley

3.6.3 Función Schwefel

3.7 Ajuste de los hiperparámetros de los operadores genéticos

3.8 Lecciones aprendidas

3.9 Para seguir aprendiendo

4 Algoritmos genéticos con múltiples objetivos

4.1 Introducción a los problemas con múltiples objetivos

4.2 Introducción a la Pareto dominancia

4.3 Selección del algoritmo genético

4.4 El problema de la suma de subconjuntos con múltiples objetivos

4.4.1 Formulación del problema

4.4.2 Definición del problema y generación de la población inicial

4.4.3 Definición del problema y plantilla del individuo

4.4.4 Función objetivo y operadores genéticos

4.4.5 Últimos pasos: Ejecución del algoritmo multiobjetivo

4.4.6 Configuración del algoritmo genético multiobjetivo

4.4.7 Algunos apuntes sobre los algoritmos genéticos con múltiples objetivos

4.4.8 Código completo

4.5 Funciones de benchmark con múltiples objetivos

4.5.1 Definición del problema y población inicial

4.5.2 Función objetivo y operadores genéticos

4.5.3 Ejecución del algoritmo multiobjetivo

4.5.4 Representación del frente de Pareto

4.5.5 Ajuste de los hiperpámetros de los operadores genéticos

4.5.6 Código completo

4.6 Lecciones aprendidas

4.7 Para seguir aprendiendo

II Parte 2: Algoritmos genéticos para ingeniería

5 Funcionamiento óptimo de una microrred

5.1 Introducción

5.2 Formulación del problema

5.2.1 Recursos renovables

5.2.2 Unidades despachables

5.2.3 Sistema de almacenamiento de energía

5.2.4 Balance de potencia

5.3 Problema con un objetivo: Minimizar el coste de operación

5.3.1 Definición del problema y generación de la población inicial

5.3.2 Operadores genéticos

5.3.3 Función objetivo

5.3.4 Ejecución del algoritmo

5.3.5 Resultados obtenidos

5.4 Problema con múltiples objetivos: Minimizando el coste de operación y el ciclado de la batería

5.4.1 Definición del problema, población inicial y operadores genéticos

5.4.2 Función objetivo

5.4.3 Ejecución del algoritmo

5.4.4 Resultados obtenidos

5.5 Código completo y lecciones aprendidas

5.6 Para seguir aprendiendo

6 Diseño de planta microhidráulica

6.1 Introducción

6.2 Formulación del problema

6.2.1 Modelado de la central micro-hidráulica

6.3 Problema con un objetivo: Minimizando el coste de instalación

6.3.1 Definición del problema y generación de la población inicial

6.3.2 Operadores genéticos

6.3.3 Función objetivo o de fitness

6.3.4 Ejecución del algoritmo

6.3.5 Resultados obtenidos

6.4 Problema con múltiples objetivos: Minimizando el coste de instalación y maximizando la potencia generada

6.4.1 Definición del problema, población inicial y operadores genéticos

6.4.2 Función objetivo o de fitness

6.4.3 Ejecución del algoritmo

6.4.4 Resultados obtenidos

6.5 Código completo y lecciones aprendidas

6.6 Para seguir aprendiendo

7 Posicionamiento de sensores

7.1 Introducción

7.2 Formulación del problema

7.3 Problema con un objetivo: Maximizando el número de puntos cubiertos 189

7.3.1 Definición del problema y generación de la población inicial

7.3.2 Operadores genéticos

7.3.3 Función objetivo

7.3.4 Ejecución del algoritmo

7.3.5 Resultados obtenidos

7.4 Problema con múltiples objetivos: maximizando el número de puntos cubiertos y la redundancia

7.4.1 Definición del problema, población inicial y operadores genéticos

7.4.2 Función objetivo

7.4.3 Ejecución del algoritmo

7.4.4 Resultados obtenidos

7.5 Código completo y lecciones aprendidas

7.6 Para seguir aprendiendo

Epílogo

A Herencia de arrays de numpy

A.1 Introducción a las secuencias en Python

A.2 Slicing en secuencias y operadores genéticos de deap

A.3 Operador de comparación en secuencias

B Procesamiento paralelo

B.1 Procesamiento paralelo con el módulo multiprocessing

B.2 Procesamiento paralelo con el módulo Scoop

Glosario

Bibliografía

Algoritmos Genéticos con Python

Подняться наверх