Genetic Algorithm
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
Problem-Based Solution
optimvalues | Create values for optimization problem (Since R2022a) |
solve | Solve optimization problem or equation problem |
Solver
ga | Find minimum of function using genetic algorithm |
Options
optimoptions | Create optimization options |
resetoptions | Reset options |
Live Editor Tasks
Optimize | Optimize or solve equations in the Live Editor (Since R2020b) |
Topics
Problem-Based Genetic Algorithm
- Minimize Rastrigins' Function Using ga, Problem-Based
Basic example minimizing a function with multiple minima in the problem-based approach.
- Constrained Minimization Using ga, Problem-Based
Solve a nonlinear problem with nonlinear constraints and bounds using ga in the problem-based approach.
- Solve a Mixed-Integer Engineering Design Problem Using the Genetic Algorithm, Problem-Based
Example showing how to use problem-based mixed-integer programming in ga, including how to choose from a finite list of values.
- Feasibility Using Problem-Based Optimize Live Editor Task
Solve a nonlinear feasibility problem using the problem-based Optimize Live Editor task and several solvers.
- Set Options in Problem-Based Approach Using varindex
To set options in some contexts, map problem-based variables to solver-based using varindex .
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.
- Effects of Genetic Algorithm Options
Example showing the effect of several options.
- Global vs. Local Optimization Using ga
This example shows how setting the initial range can lead to a better solution.
Common Tuning Options
- Set Maximum Number of Generations and Stall Generations
Examine the effects of setting the MaxGenerations and MaxStallGenerations options.
- 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 ga Optimization
Solve mixed integer programming problems, where some variables must be integer-valued.
- Solve 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.
Specialized Tasks
- 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.
- 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 ODEs in Parallel
Save time by calling an expensive subroutine just once and computing an ODE solution in parallel using patternsearch or ga .
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 for Genetic Algorithm
Explains the Augmented Lagrangian Genetic Algorithm (ALGA) and penalty algorithm.
- Genetic Algorithm Options
Explore the options for the genetic algorithm.