
Genetic Algorithms in Java Basics
Burak Kanber, Lee Jacobson
- Editorial
- Apress
- Año
- 2015
- Páginas
- ~154
- Nivel
- Básico
De qué trata
Manual introductorio y enfocado en la aplicación directa de la computación evolutiva y la inteligencia artificial heurística mediante Java (Java 8). Escrito por Lee Jacobson y Burak Kanber y publicado por Apress, está orientado a programadores principiantes en IA y desarrolladores de Java con conocimientos básicos a intermedios en programación orientada a objetos que buscan resolver problemas combinatorios de optimización difícil sin enredarse en complejas demostraciones matemáticas.
El libro explica la traslación de la biología evolutiva a la ingeniería de software: modelado de cromosomas (representaciones binarias y de ordenamiento), generación de poblaciones, funciones de evaluación de aptitud (fitness), métodos de selección (por torneo y por ruleta), operadores de cruce (crossover uniforme, de un punto y ordenado), operadores de mutación (bit-flip y de intercambio) y técnicas de elitismo. Asimismo, explora estrategias de optimización avanzada como algoritmos genéticos adaptativos con parámetros dinámicos de cruce y mutación. Toda la arquitectura se construye en Java estándar definiendo clases limpias como Individual, Population y GeneticAlgorithm.
El aprendizaje está estructurado en torno a proyectos prácticos guiados paso a paso donde se implementan soluciones ejecutables para problemas clásicos de optimización, complementados con pequeños ejercicios de ajuste al final de los capítulos. El texto aporta una transición fluida desde la teoría conceptual hasta un programa en ejecución con salidas por consola; prescinde de frameworks modernos de deep learning o computación paralela masiva, concentrándose exclusivamente en la heurística evolutiva pura. Conviene contar con un entorno de desarrollo Java para compilar y calibrar las tasas de mutación y tamaño poblacional de cada simulación.
- Java
- Algoritmos genéticos
- Computación evolutiva
- Inteligencia artificial
- Optimización heurística
- Operadores genéticos
- Cruce y mutación
- Problema del viajante (TSP)
- Planificación de horarios
- Robótica simulada
¿Cómo enseña?
Con proyectos
- ✓ Incluye ejercicios
- ✓ Incluye proyectos
Proyectos
Controlador de navegación para robot virtual
Agente simulado en Java que evoluciona mediante selección y mutación genética para aprender a desplazarse de forma autónoma por un laberinto esquivando obstáculos.
Optimizador del problema del viajante de comercio (TSP)
Solucionador combinatorio en Java que encuentra la ruta de menor distancia para recorrer un conjunto de ciudades sin repetir destinos mediante cruce ordenado y mutación por intercambio.
Generador automático de horarios universitarios (Class Scheduler)
Sistema de asignación en Java que optimiza la distribución de aulas, grupos de estudiantes y profesores respetando restricciones operativas y minimizando cruces de horarios.

