ERX seeks to preserve adjacency (edge) information between elements. In an edge appears in a parent, ERX tries to keep it in the child. Global positions and order are not a priority.

  • For example, in TSP, the tour quality is driven by the edges.

Algorithm:

  1. Build edge table for all cities from ,
  2. Choose a starting city; set child
  3. While child is not complete:
    1. Remove from all sets (mark visited)
    2. If : choose next city with smallest
    3. Else (dead-end): choose any unvisited city (tie-break)
    4. Append to : set
  4. Return child permutation .

Basically, each is a set of adjacency options inherited from parents. Small indicates a high constraint node, so ERX selects it early to avoid losing valid inherited edges. If idea is that if we postpone a hard-to-place city, we may lose its last inherited adjacencies, so choosing smallest tends to preserve more parent edges overall.