Documentation

### This is machine translation

Mouseover text to see original. Click the button below to return to the English version of the page.

# Genetic Algorithm

Genetic algorithm solver for mixed-integer or continuous-variable optimization, constrained or unconstrained

Genetic algorithm solves smooth or nonsmooth optimization problems with any types of constraints, including integer constraints. It is a stochastic, population-based algorithm that searches randomly by mutation and crossover among population members.

## Functions

expand all

 `ga` Find minimum of function using genetic algorithm
 `optimoptions` Create optimization options `resetoptions` Reset options

## Topics

### Genetic Algorithm Optimization Basics

Minimize Rastrigin's Function

Presents an example of solving an optimization problem using the genetic algorithm.

Coding and Minimizing a Fitness Function Using the Genetic Algorithm

Shows how to write a fitness function including extra parameters or vectorization.

Constrained Minimization Using the Genetic Algorithm

Shows how to include constraints in your problem.

Options and Outputs

Shows how to choose input options and output arguments.

Genetic Algorithm Options

Example showing the effect of several options.

Nonlinear Constraints Using ga

An example showing how to use various types of constraints.

Global vs. Local Minima Using ga

An examples showing how to search for a global minimum.

### Common Tuning Options

Set Maximum Number of Generations

Shows how to adjust the maximum generations option to obtain a better result.

Population Diversity

Shows the importance of population diversity, and how to set it.

Fitness Scaling

Describes fitness scaling, and how it affects the progress of `ga`.

Vary Mutation and Crossover

Shows the effect of the mutation and crossover parameters in `ga`.

Hybrid Scheme in the Genetic Algorithm

Shows the use of a hybrid function for improving a solution.

When to Use a Hybrid Function

Describes cases where hybrid functions are likely to provide greater accuracy or speed.

### Mixed Integer Optimization

Mixed Integer Optimization

Solve mixed integer programming problems, where some variables must be integer-valued

Solving a Mixed Integer Engineering Design Problem Using the Genetic Algorithm

Example showing how to use mixed-integer programming in ga, including how to choose from a finite list of values.

Resume ga

Shows how to continue optimizing `ga` from the final population.

Reproduce Results

Shows how to reproduce results by resetting the random seed.

Run ga from a File

Provides an example of running `ga` using a set of parameters to search for the most effective setting.

Use Exported Options and Problems

Shows how to create and use a problem structure or a set of options.

Vectorize the Fitness Function

How to gain speed using vectorized function evaluations.

Create Custom Plot Function

Shows how to create and use a custom plot function in `ga`.

Custom Output Function for Genetic Algorithm

This example shows the use of a custom output function in `ga`.

Custom Data Type Optimization Using the Genetic Algorithm

Solve a traveling salesman problem using a custom data type.

Optimize an ODE in Parallel

Optimizing an objective given by the solution to an ODE using `patternsearch` or `ga` in serial or parallel.

### Genetic Algorithm Background

What Is the Genetic Algorithm?

Introduces the genetic algorithm.

Genetic Algorithm Terminology

Explains some basic terminology for the genetic algorithm.

How the Genetic Algorithm Works

Presents an overview of how the genetic algorithm works.

Nonlinear Constraint Solver Algorithms

Explains the Augmented Lagrangian Genetic Algorithm (ALGA) and penalty algorithm.

Reproduce Results in Optimization App

To reproduce the results of the last run of the genetic algorithm, select the Use random states from previous run check box.

Genetic Algorithm Options

Describes the options for the genetic algorithm.

Watch now