Wire routing with simultaneous constraints (weight, EMI, thermal) is NP-hard. No exact solution exists. Genetic algorithms EVOLVE good solutions. Click "Step 10 Generations" to watch fitness improve as the algorithm finds better bundle assignments.
1. Population of candidate bundle assignments
2. Evaluate fitness (lower = better)
3. Select parents (tournament)
4. Crossover + mutation -> children
5. Repeat until convergence
f = total_length + 2 * EMI_conflicts
Colors show bundle assignment. The optimizer separates conflicting wires into different bundles.
Eiben & Smith, Introduction to Evolutionary Computing | Goldberg, Genetic Algorithms in Search | Deb, Multi-Objective Optimization (NSGA-II)