Chapter 5 of The Nature of Code, Autonomous Agents, implements Reynolds steering and the three boids rules: separation, alignment, and cohesion. The environment here contains real independent agents.

I drop the flock into live OpenSky traffic over the Alps, so separation has to work against real aircraft, not only other boids.

The page fetches live aircraft states over the Alps from the OpenSky Network (position, true track, ground speed) and draws each as an oriented marker. A boids flock runs the three rules plus a repulsion from every real aircraft, so the emergent flocking must resolve against measured air traffic.

The three steering vectors are separation \(\mathbf{s} = -\sum_{j} \mathbf{r}_{ij}/\lVert \mathbf{r}_{ij} \rVert^2\), alignment \(\mathbf{a} = \langle \mathbf{v}_j \rangle - \mathbf{v}_i\), and cohesion \(\mathbf{c} = \langle \mathbf{x}_j \rangle - \mathbf{x}_i\), summed into a force limited by \(\lVert \mathbf{F} \rVert \le F_{\max}\) with speed capped at \(\lVert \mathbf{v} \rVert \le v_{\max}\). The naive neighbor evaluation over \(n\) agents is \(O(n^2)\). Aircraft headings are ADS-B true-track angles.

Data source: The OpenSky Network states API
Endpoint: https://opensky-network.org/api/states/all?lamin=45&lomin=5&lamax=48&lomax=11
Access: Public, no key. Loaded from an hourly server-side refresh when possible, with a bundled snapshot fallback, and a live browser fetch only when the API allows CORS. Data window: Oct 26, 2026 (pulled Oct 26, 2026 UTC)

Latest data pull 163 rows
Oct 26, 2026 (pulled Oct 26, 2026 UTC)
Callsign
Latitude
Longitude
Heading (°)
Speed (m/s)
EWG55E
45.483
9.18
150
258.4
EWG5JY
47.527
7.701
230.3
242.6
AEE4CA
45.797
7.522
309.9
204.5
AEE852
46.248
8.87
353.2
209.8
EWG6V
45.42
5.945
196
236
EJU704W
45.724
5.093
174.4
44.2
WMT8SG
45.079
7.951
142.1
180.7
ELY282
45.038
10.603
106.8
258.5
ELY387
45.654
9.282
270.8
143.5
DESSU
47.673
9.515
239.2
37.1
ANE55UZ
46.637
10.966
11.4
198.4
BBB35
47.582
7.529
180
0.1
WZZ454
47.389
10.749
307.7
190
IPASC
45.189
7.83
254
57.8
ANE1183
45.716
5.09
264.4
9.3
VLG6050
45.101
8.716
11.7
136.6
MAC345X
45.797
5.084
174.9
75.4
AIC69R
47.462
8.558
182.8
0.1
THY4LW
47.462
8.555
185.6
0
THY1QS
45.717
5.082
104.1
3.1
RAM811D
46.475
6.071
227.8
226.5
HBLVC
47.582
9.471
231.8
55
SAS2689
45.608
8.74
348.7
68.2
HBEPH
46.928
7.48
143.7
31.3
BUS02
47.599
7.53
329.1
5.7
AFR565
46.708
6.074
294.2
220.6
SUS1332
47.051
7.784
51.8
191.9
VLG73ND
45.192
7.645
258.8
0
N45LX
45.215
9.609
110.1
242.2
DLH8CF
47.454
8.901
2.8
209.1
SECU3
45.726
5.082
196.9
0.5
BUS03
47.599
7.53
329.1
5.7
UAE83
46.287
6.182
225.5
77.1
LOT5CN
46.898
6.997
214.7
204.1
JFA97Y
47.214
8.683
290.6
183
ETD7MA
47.668
8.447
232.1
91.3
HBKTM
46.92
7.516
318
42.3
RYR882Q
46.623
5.992
316.8
199.8
TRA35P
47.187
10.378
163.1
280.1
SWR7WA
45.467
8.779
349.6
99.9
AFR975
45.738
10.279
283
222.3
QTR8282
47.677
7.469
154.7
72.3
M04
47.588
7.537
222.2
4.1
CXI3N
46.284
6.13
188.4
239.2
EFW4SS
45.53
7.084
132.5
237.1
CFE11L
47.467
8.557
160.3
14.9
RYR81AU
45.481
5.942
284.4
210.9
TVS52A
47.125
7.246
230.8
227.8
AUA155K
46.149
10.248
261.1
216.1
AUA143P
47.455
8.558
194.1
6.4
THY8DR
47.45
9.437
101.6
256.3
THY59B
47.586
9.316
105.2
244.1
RYR514Y
47.656
6.065
349.3
211
RYR26
46.708
8.58
174.3
266.8
RYR561U
46.273
5.678
232.2
220.7
FIN01AD
45.826
6.181
202.7
248.1
IBE06DK
47.375
8.305
351.3
146.2
EFW7SN
47.47
7.318
288.2
206.3
RYR6524
45.546
10.34
235.8
240.7
RYR2HR
45.696
10.82
78.4
229.5
MOG72
47.993
9.843
144.8
275
SEH910
46.606
6.351
296.3
202
EJU56AN
46.289
9.026
354.9
184.4
FIE3247
45.327
10.118
328.3
122.2
RYR6245
47.599
6.79
282.6
202.4
AFR52PL
46.303
5.394
125.1
252.6
AFR63PD
47.452
8.559
185.6
0
EDW5057
47.646
10.926
276.2
205.9
SWR98G
47.454
8.555
154.7
8.2
SWR115Y
47.449
8.557
334.7
0
SWR1DE
47.442
5.887
285.8
194.6
SWR4WP
47.426
7.965
273.9
158.3
SWR52
47.644
6.509
287.6
208.9
EJU61LM
47.438
10.987
97.8
243
BAW5KY
47.922
5.673
313.2
199.1
(none)
46.165
8.936
8.5
42.4
LBT2023
47.745
9.843
145.7
266.5
TVF18JU
45.252
10.289
285.7
205.7
AFR1343
46.682
5.528
327.7
196.5
AFR68YL
45.716
5.077
14.1
0
AFR54ZW
45.567
9.066
281.5
191.6
AFR95ZD
45.646
10.822
270.7
201.2
DLH4LL
46.195
10.982
154.2
250.3
DLH53C
46.217
6.431
46.6
233.6
DAH1037
45.699
5.092
173
84
DLH94C
45.02
6.792
14
223.2
TVF13LL
45.715
5.084
14.1
0
ATL781
47.462
8.554
61.9
0
SWR3ZK
46.987
7.351
231.3
181.9
DGDON
47.669
9.513
140.6
0
TAP55E
47.367
7.804
232.6
231.9
SWR9BL
46.788
8.738
173.4
233
EZS52DN
46.231
6.101
140.6
5.7
SWR2258
47.418
10.554
71.4
238.3
ATL779
47.463
8.554
22.5
2.3
TAP93ZS
47.217
7.8
242.6
183.2
KLM91X
47.494
8.52
137.1
78.6
KLC26G
47.59
7.532
154.7
12.4
ZEBRA1
47.46
8.559
348.8
13.9
ZEBRA4
47.454
8.562
101.3
1.8
NJE935G
45.447
9.277
354.4
20.6
OMA153
47.711
9.818
269.6
200.6
RYR3DU
45.884
9.662
349.8
190.8
SCOUT12
47.331
9.347
4.4
59.9
SCOUT11
47.341
9.34
250.1
51.4
DITMM
47.951
8.746
302.9
79.6
RYR44TW
46.073
5.906
137.4
257.4
TCSVN
46.94
8.546
174.4
249.7
RYR78PC
47.138
10.766
323.6
189.1
V632
46.172
8.93
280.9
40.9
V619
46.133
8.736
262
39.6
CFG9DU
46.455
6.46
346.1
222.6
KLM41L
46.517
10.759
164.2
274.3
KLM38T
47.317
8.134
254.6
182
RYR3ZL
45.665
9.724
285.1
73
EZY45YH
47.976
7.113
151.2
252.3
IACVD
45.208
7.65
1.5
39.6
TVF81GF
46.367
5.941
115
245.8
TVF65LZ
45.568
6.618
140.3
239.3
DLH1K
47.451
8.63
69.2
157.9
EZS16DF
45.876
7.156
293.3
175.4
EJU58JL
47.476
7.058
256.5
174.6
EJU12AK
47.385
7.285
355.8
160.4
EZS68NJ
46.282
6.361
42.5
135.5
EZY71JZ
45.603
8.741
348.9
69.2
RBG544
45.508
9.961
349.1
106.3
WMT3133
45.668
6.405
136.4
260.9
EWG15K
46.369
10.993
211.4
248.2
EWG76L
47.046
6.304
188.7
247.7
LOT7ER
46.182
10.512
244.2
230.8
EWG37H
46.443
6.73
209.2
237
EXS58K
47.566
10.115
138.9
271.6
VOE2519
46.092
6.483
350.3
203.6
ITY220
47.504
6.855
302.6
201.5
ITY574
47.453
8.559
5.6
2.1
DLA5KT
45.669
8.753
227.2
180.9
RYR81AE
47.698
10.592
117.8
200.7
RYR7PJ
46.801
7.738
65.5
241.5
RYR68DM
47.34
6.175
346.9
210.8
EWG85C
45.998
8.755
152.9
268
HOP15YH
46.238
6.658
312.3
205.8
ITY1291
45.092
9.805
140.9
215.4
RYR425V
47.357
8.354
134.3
248.5
RYR85EB
47.141
6.346
189.4
246.1
RYR1EG
47.72
8.303
118.1
271.8
RYR58SQ
45.642
9.846
285.1
92.7
HAT6772
45.022
5.105
71.9
235.4
PAV126
46.189
9.039
354.1
120
AAB73F
45.44
7.968
325.6
215
HBJTH
46.231
10.929
35.5
218
WMT558
45.278
7.901
260.3
204.1
EDW25G
47.682
7.271
107.3
221
EDW385R
47.462
8.56
154.7
9.3
EDW229F
47.451
8.557
154.7
9.3
WMT6X
45.338
8.843
310.9
110.9
SWR180
47.463
8.55
275.6
7.7
SWR262C
46.106
6.234
44.6
226.3
KMM491
45.034
9.486
152
266.3
DLH6LM
45.351
9.287
356.1
75.3
OCN489
47.351
9.205
67.5
224.9
SWR9ZT
47.442
8.563
64.7
0
SWR1QL
47.035
5.025
324
192.6
HOP1203
45.681
7.162
319.2
190.4

All 163 aircraft are listed below.