Problem 638. Uniform binary crossover
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
Problem Comments
Solution Comments
Show commentsProblem Recent Solvers80
Suggested Problems
-
Extract leading non-zero digit
2191 Solvers
-
Given an unsigned integer x, find the largest y by rearranging the bits in x
1920 Solvers
-
303 Solvers
-
Project Euler: Problem 2, Sum of even Fibonacci
2588 Solvers
-
Convert Two Character String into a Binary Vector
215 Solvers
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!