You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+38Lines changed: 38 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -91,6 +91,44 @@ OpenEvolve orchestrates a sophisticated evolutionary pipeline:
91
91
- Feature map clustering and archive management
92
92
- Comprehensive metadata and lineage tracking
93
93
94
+
### Island-Based Evolution with Worker Pinning
95
+
96
+
OpenEvolve implements a sophisticated island-based evolutionary architecture that maintains multiple isolated populations to prevent premature convergence and preserve genetic diversity.
97
+
98
+
#### How Islands Work
99
+
100
+
-**Multiple Isolated Populations**: Each island maintains its own population of programs that evolve independently
101
+
-**Periodic Migration**: Top-performing programs periodically migrate between adjacent islands (ring topology) to share beneficial mutations
102
+
-**True Population Isolation**: Worker processes are deterministically pinned to specific islands to ensure no cross-contamination during parallel evolution
103
+
104
+
#### Worker-to-Island Pinning
105
+
106
+
To ensure true island isolation during parallel execution, OpenEvolve implements automatic worker-to-island pinning:
107
+
108
+
```python
109
+
# Workers are distributed across islands using modulo arithmetic
110
+
worker_id =0, 1, 2, 3, 4, 5, ...
111
+
island_id = worker_id % num_islands
112
+
113
+
# Example with 3 islands and 6 workers:
114
+
# Worker 0, 3 → Island 0
115
+
# Worker 1, 4 → Island 1
116
+
# Worker 2, 5 → Island 2
117
+
```
118
+
119
+
**Benefits of Worker Pinning**:
120
+
-**Genetic Isolation**: Prevents accidental population mixing between islands during parallel sampling
121
+
-**Consistent Evolution**: Each island maintains its distinct evolutionary trajectory
122
+
-**Balanced Load**: Workers are evenly distributed across islands automatically
123
+
-**Migration Integrity**: Controlled migration happens only at designated intervals, not due to race conditions
124
+
125
+
**Automatic Distribution**: The system handles all edge cases automatically:
126
+
-**More workers than islands**: Multiple workers per island with balanced distribution
127
+
-**Fewer workers than islands**: Some islands may not have dedicated workers but still participate in migration
128
+
-**Single island**: All workers sample from the same population (degrades to standard evolution)
129
+
130
+
This architecture ensures that each island develops unique evolutionary pressures and solutions, while periodic migration allows successful innovations to spread across the population without destroying diversity.
0 commit comments