Graph Crossover
Rip in half
- Choose random bond
- Find the shortest path
- Remove and remember random path bond
- Repeat until cut set found
Mate halves
- Select a random cut bond
- If cut bond in other half exist
- choose one at random
- merge cut bonds, respect valence
- else
- flip coin
- heads -- attach cut bond to random atom in other half respecting valence
- tails -- discard cut bond
- repeat until all cut bonds processed