dalamar66 / GeneticAlgorithmsWithPython

source code from the book Genetic Algorithms with Python by Clinton Sheppard

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Genetic Algorithms with Python

Source code from the book Genetic Algorithms with Python by Clinton Sheppard

alt text

ISBN-10: 1540324001, ISBN-13: 978-1540324009

Get it from:

Table of Contents

A brief introduction to genetic algorithms

Chapter 1: Hello World!

  • Guess a password given the number of correct letters in the guess. Build a mutation engine.

Chapter 2: One Max Problem

  • Produce an array of bits where all are 1s. Expands the engine to work with any type of gene.

Chapter 3: Sorted Numbers

  • Produce a sorted integer array. Demonstrates handling multiple fitness goals and constraints between genes.

Chapter 4: The 8 Queens Puzzle

  • Find safe Queen positions on an 8x8 board and then expand to NxN. Demonstrates the difference between phenotype and genotype.

Chapter 5: Graph Coloring

  • Color a map of the United States using only 4 colors. Introduces standard data sets and working with files. Also introduces using rules to work with gene constraints.

Chapter 6: Card Problem

  • More gene constraints. Introduces custom mutation, memetic algorithms, and the sum-of-difference technique. Also demonstrates a chromosome where the way a gene is used depends on its position in the gene array.

Chapter 7: Knights Problem

  • Find the minimum number of knights required to attack all positions on a board. Introduces custom genes and gene-array creation. Also demonstrates local minimums and maximums.

Chapter 8: Magic Squares

  • Find squares where all the rows, columns and both diagonals of an NxN matrix have the same sum. Introduces simulated annealing.

Chapter 9: Knapsack Problem

  • Optimize the content of a container for one or more variables. Introduces branch and bound and variable length chromosomes.

Chapter 10: Solving Linear Equations

  • Find the solutions to linear equations with 2, 3 and 4 unknowns. Branch and bound variation. Reinforces genotype flexibility.

Chapter 11: Generating Sudoku

  • A guided exercise in generating Sudoku puzzles.

Chapter 12: Traveling Salesman Problem (TSP)

  • Find the optimal route to visit cities. Introduces crossover and a pool of parents.

Chapter 13: Approximating Pi

  • Find the two 10-bit numbers whose dividend is closest to Pi. Introduces using one genetic algorithm to tune another.

Chapter 14: Equation Generation

  • Find the shortest equation that produces a specific result using addition, subtraction, multiplication, &c. Introduces symbolic genetic programming.

Chapter 15: The Lawnmower Problem

  • Generate a series of instructions that cause a lawnmower to cut a field of grass. Genetic programming with control structures, objects and automatically defined functions (ADFs).

Chapter 16: Logic Circuits

  • Generate circuits that behave like basic gates, gate combinations and finally a 2-bit adder. Introduces tree nodes and hill climbing.

Chapter 17: Regular Expressions

  • Find regular expressions that match wanted strings. Introduces chromosome repair and growth control.

Chapter 18: Tic-tac-toe

  • Create rules for playing the game without losing. Introduces tournament selection.

About

source code from the book Genetic Algorithms with Python by Clinton Sheppard

License:Apache License 2.0


Languages

Language:Python 100.0%