Given two binary vectors, return the two children by combining the genes of them using a binary crossover mask.

More information: Uniform crossover

  • Parents and mask are row vectors of the same size N;
  • Output is a 2 x N matrix containing both children;
  • The first child must have genes from the first parent at the positions where the mask is true, and genes from the second parent where the mask is false;
  • The second child must have genes from the first parent at the positions where the mask is false, and genes from the second parent where the mask is true;
  • The mask is also supplied.

Example:

mask    = [1 0 0 0 1 1 1 0 0];
parent1 = [0 0 0 1 1 1 0 0 0];
parent2 = [1 1 0 0 1 0 1 1 0];
children = [0 1 0 0 1 1 0 1 0;
            1 0 0 1 1 0 1 0 0];

Solution Stats

152 Solutions

82 Solvers

Last Solution submitted on Feb 28, 2026

Last 200 Solutions

Problem Comments

Solution Comments

Show comments
Loading...

Problem Recent Solvers82

Suggested Problems

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!