v1.0.0  ·  Morocco, 2026  ·  63/63 tests passing

AEGIS

Autonomous Kinetic Interceptor Swarm

$4,200
AEGIS unit cost
versus
$4,000,000
PAC-3 missile
scroll

Inverting the cost curve of air defense using a swarm of cheap autonomous interceptors.

Contents
01 — Context & Background

How I got here

I've been following active conflicts through open-source intelligence since I was 14. Not casually — seriously. About 90 Telegram channels: frontline journalists, OSINT analysts, AIS vessel trackers, satellite imagery accounts, intercepted radio feeds. I started doing this because I realized that most of what people know about active conflicts arrives 48 hours late, filtered through outlets that compress a complex situation into a headline.

To make sense of all of it, I built NEXUS — an OSINT correlation engine. It pulls from 35+ real-time feeds, clusters events geographically and temporally across six dimensions, and lets me watch conflicts unfold in near-real-time. NEXUS is how I actually understand what's happening in Ukraine, Sudan, the Red Sea, Gaza. It's a personal tool, not a product, but it works.

After a year of watching through NEXUS, a pattern became impossible to ignore. It wasn't about any particular conflict. It was about the economics underneath all of them.

02 — The Problem

The math is broken

“Armies are firing million-dollar missiles at twenty-dollar drones. The asymmetry doesn’t favor the defender. It never will, at current price points.”

A Shahed-136 costs around $20,000 to manufacture. Iran produces them by the thousands. Every country facing mass drone attack — Ukraine, Israel, Saudi Arabia — is responding with interceptors that cost 10 to 200 times more per shot.

Iron Dome interceptors: $40,000–$100,000 each. PAC-3 missiles: $4,000,000 per round. Each time a Shahed-136 is destroyed, the defender has spent more than the attacker did to produce the threat in the first place.

The attacker can sustain this indefinitely. A state actor producing drones at scale can absorb these loss rates easily. The defender cannot. And the problem compounds: as drone swarms grow larger and more sophisticated, the cost disparity gets worse, not better.

This is not a technology failure. No one has failed to build a capable interceptor. The failures are economic and structural. The question nobody seemed to be seriously asking was: what would a fundamentally cheaper response look like?

Not cheaper at the margins. Cheaper by an order of magnitude.

SHAHED-136 ........ $20,000 / unit IRON DOME ........ $40,000–100,000 / intercept PAC-3 ........ $4,000,000 / round —————————————————————— AEGIS ........ $4,200 / unit 952× cheaper than PAC-3 per intercept
03 — NEXUS & the Pattern

What the data showed me

NEXUS didn't tell me to build AEGIS. It showed me the scale of the problem clearly enough that I wanted to. There's a difference.

Watching hundreds of Shahed intercept events accumulate in the NEXUS feed — time, location, interceptor type, estimated cost per shot — the numbers tell a story that no individual report captures. The aggregate burn rate of interceptor stockpiles across conflict zones, measured against drone production rates on the other side, produces a trajectory that only goes one way.

I started thinking about what an honest answer to this problem would look like. Not a clever modification to an existing system. Something built from the problem up, with cost as the primary design constraint from day one.

“If the threat costs $20,000, the defense needs to cost $4,000. Not $400,000. Not even $40,000.”

The insight was simple, even if the engineering isn't: use swarms. Five hundred cheap autonomous units covering the same airspace as one expensive missile battery. No single point of failure. No reload delay. Replaceable at a fraction of the cost.

I spent about three months working through whether this was actually feasible before writing a line of code. The physics checks out. The economics check out. The software engineering is hard but tractable.

04 — What I Wanted to Build

The design goals

I had specific things I wanted to be true about this project before I started. Not aspirations — constraints. Hard ones.

  • Physics-real constants. Every number in the codebase had to come from a verifiable source: ISA atmosphere model, ITU-R rain attenuation, real motor specs from manufacturer datasheets, MIL-STD-1522A structural factors. No made-up specs.
  • A pipeline that actually runs. Not a proof-of-concept sketch. A real 50Hz control loop, with real sensor fusion, real Kalman filtering, real formation physics, running at real-time on standard hardware.
  • Honest safety architecture. The weapon had to be locked by default. Hardware failure means LOCKED, not ARMED. Human veto preserved at all times. The ProximityLock had to actually prevent fratricide, not just check a box.
  • Provable Byzantine fault tolerance. Drones get jammed and spoofed in real conflict. The system had to keep working with up to 1/3 of sensors compromised, using the same mathematics Lamport proved in 1982 — not a workaround.
  • Tractable economics. The bill of materials had to use real parts with real prices from real suppliers (DigiKey, Mouser). The $4,200 unit cost isn't a guess.
05 — What I Refused to Do

What this isn’t

There are several things I deliberately refused to do, because they would have made the project dishonest.

  • I didn't make up physics. The V_patrol figure went through multiple corrections — it's 99 km/h, not 114, not 155. The self-test in oc_types.py rejects any value outside the valid range at import time.
  • I didn't hide what doesn't work. Wave 2 of the Nevada simulation (three Lancet-3s in formation) took multiple debugging cycles. The cluster explosion bug, the Q matrix structure, the ASSOC_RADIUS problem — all documented, all fixed, all with the original broken version still visible in the commit history.
  • I didn't build a toy. A toy simulation uses fake numbers and makes everything intercept. The real simulation uses actual Shahed-136 kinematics, real Doppler noise models, real energy budgets. If a drone can't afford the intercept, it RTBs. That's what the code does.
  • I didn't pretend the hardware exists. Tessera MK.II is a design specification and a bill of materials. The CFRP airframe, the Cesaroni booster, the 60GHz mesh radio — none of it has been manufactured. I'm 16 and I'm in Morocco. I'm honest about that.

“The most important engineering decision I made was to be honest about what doesn’t exist yet. A lie in a spec sheet is harder to fix than a bug in code.”

06 — What I Built

The actual system

AEGIS is a control pipeline. It runs at 50 Hz. One full tick for 50 drones takes 6 milliseconds on a laptop. The architecture has four modules:

M1 — SpectralFusion. Aggregates sensor readings from all drones, filters out Byzantine nodes using Median Absolute Deviation (Lamport 1982 BFT bound: <1/3 of swarm), detects lures using five physical rules derived from real infrared signatures. A flare is above 700K. A cold balloon has contrast below 5K with pixel area above 10. Jettisoned lures decelerate above 15 m/s². These aren't heuristics — they come from the physics of what different objects look like in LWIR.

M2 — MultiTargetUKF. An Unscented Kalman Filter tracking position, velocity, and acceleration in all three axes. The intercept predictor scans 12 seconds forward in 0.1-second windows to find the booster ignition timestamp. Before the Cholesky optimization, this took 37ms. After, it takes 0.9ms. The bug was running a full decomposition every scan step instead of propagating a cheap linear estimate.

M3 — ElasticNet. Spring-physics formation management. Each drone computes forces from its 6 nearest neighbors only — O(6N) instead of O(N²). At 500 drones, that's 83x fewer operations. The swarm holds a hexagonal patrol grid, contracts into an engagement cone when a target is confirmed, and self-heals if nodes drop out.

M4 — EnergyBudget. Three inviolable reserves per drone. 10 Wh for parachute deployment. 40 Wh for return to base. 60 Wh for one combat sprint. The threat worth score combines mass, velocity, and collateral risk into a value between 0 and 100. Below 60: RTB without engaging. 60–80: authorize automatically in sim mode, request Colonel approval in live mode. Above 80: explicit human authorization required regardless.

63 tests passing. 0 failing. Full pipeline p99: 14.35ms on 50 drones. 50Hz budget: 20ms. Margin: 5.65ms. Wave 1 (Shahed-136): intercepted in 7 ticks, 54ms wall time.
07 — What’s Missing

The honest gap list

There are things that are missing from this project. Some I know how to fix. Others I haven't figured out yet.

  • Physical hardware. Tessera MK.II doesn't exist. The BOM is real, the specs are physics-derived, but no unit has been built or tested. This is the biggest gap.
  • Wave 2 convergence. The three Lancet-3 scenario in the Nevada simulation is close but not fully converged. The 22m formation spacing makes track association at 18m ASSOC_RADIUS marginal. I know what the fix is; I haven't implemented the full multi-hypothesis tracker yet.
  • Real sensor integration. The sensor fusion module uses simulated detections with Gaussian noise. Real IMX678, FLIR Lepton 3.5, and Inxpect Doppler radar have specific noise models, latencies, and failure modes that aren't fully modeled yet.
  • 60GHz mesh implementation. The networking protocol exists on paper. The Sivers IQ EVK06002 integration isn't coded; only simulated latency and packet loss are modeled.
  • Hardware-in-the-loop testing. Everything runs on a simulated clock. Real-time OS constraints, interrupt latency, and Jetson Orin power management haven't been validated.
  • Regulatory and legal framework. Autonomous weapons systems exist in a complicated legal space. I've thought about it; I haven't solved it. The Human Loop Gate is a partial answer — not a complete one.
08 — Honest State of the Project

Where this actually is

This is a serious software project built by a 16-year-old in Morocco with no institutional affiliation, no funding, and no hardware.

The things that are real: the physics, the code, the test suite, the benchmark results, the mathematical foundations. All of it is verifiable. The self-test in oc_types.py validates every physical constant at import time against ISA atmosphere and MIL-STD-1522A bounds. If a number is wrong, the system tells you immediately.

The things that are not real: the hardware, the full operational scenario, the regulatory pathway. I'm honest about this in the README and in every public description of the project.

What this project demonstrates is that the control architecture for a swarm-based air defense system is tractable with current algorithms and commercial hardware. The software engineering is solved. The physics is validated. The economics work. What's needed next is fabrication, testing, and institutional support — none of which I can provide from my position right now.

“The math is real. The code runs. The hardware doesn’t exist yet. I think that’s worth being honest about.”

I'm applying to EPFL (2027), ETH Zürich (2027), and MIT (2027). AEGIS is the primary project in my portfolio. I'm not trying to impress anyone with it — I'm trying to show that I understand a real problem and built a real attempt at solving it. Whether the attempt is good enough is for other people to judge.

Four modules.
One pipeline.

50 Hz control loop. 6ms average per tick. p99 14.35ms on 50 drones. Budget: 20ms.
Input
SensorFrames
EO + LWIR + Doppler
120B / frame
×500
M1
Spectral­Fusion
MAD BFT filter
5-rule lure detect
0.80ms
M2
UKF Tracker
9-state · 19σ pts
12s horizon
0.19ms
M3
Elastic­Net
Spring physics
O(6N)
3.77ms
M4
Energy­Budget
3-reserve model
Worth score
0.12ms
Output
DroneCommands
48B per drone
60 GHz CCP
×500
MODULE M1 — spectral_fusion.py
SpectralFusion
Byzantine Fault Tolerance · Lure Detection · EMA Clustering
500 drones report simultaneously. Up to 1/3 may be jammed or spoofed. The MAD filter rejects Byzantine votes without knowing which drones are compromised — it only needs the theoretical minimum from Lamport 1982. Five physical rules classify lures from real IR signatures.
3.0σ
MAD Threshold
<⅓
Byzantine tol.
5
Lure rules
score_i = |vote_i − median| / (1.4826 × MAD)
reject if score_i > 3.0σ
MODULE M2 — intercept_ukf.py
MultiTargetUKF
9-State · Singer Q Matrix · Intercept Predictor
Unscented Kalman Filter tracking [px,py,pz,vx,vy,vz,ax,ay,az]. The intercept predictor scans 12 seconds forward to find the booster ignition timestamp. After fixing the Cholesky bottleneck: 37ms → 0.9ms per scan. Association radius 18m prevents track merging on Lancet-3 formations.
9D
State vector
12s
Horizon
±0.3s
Fire timing tol.
λ = α²(n+κ) − n  ·  α=10⁻³ β=2.0 κ=0
σ[i] = μ ± √((n+λ)·P)i
MODULE M3 — elastic_net.py
ElasticNet
Spring Physics · O(6N) · Decentralized · 4-State FSM
500 drones self-organize without a central coordinator using only local information from 6 nearest neighbors. Attraction springs, repulsion below 15m, slot-restore force. O(6N) vs O(N²) means 83× fewer operations at N=500. FSM: PATROL → ENGAGE → PURSUIT → REFORM.
83×
vs O(N²)
45m
Cell spacing
0.5G
Force clamp
F = F_attract + F_repulse + F_slot
|F| ≤ 5.0 m/s²
MODULE M4 — budget_manager.py  +  proximity_lock.py
EnergyBudget & Safety
3-Reserve Model · Worth Score · ProximityLock · HumanLoopGate
177.6 Wh usable split into three inviolable reserves: 10 Wh chute, 40 Wh RTB, 60 Wh combat. Threat worth score [0–100] drives RTB/authorize/request-human. ProximityLock checks 15m exclusion sphere + 45°×60m blast cone every tick. Default state: LOCKED.
177.6
Usable Wh
8s
Veto window
28,445
KE impact J
S = (m/50)·30 + (v/200)·30 + c·25
S < 60 → RTB  ·  S ≥ 80 → Colonel auth
Live Simulation Engine
Real algorithms · JS port of Python pipeline · MAD filter · UKF · ElasticNet
REAL PIPELINE
Threat Platform
Mission Config
Inbound threats8
2102040
Interceptor swarm25
8204060
Byzantine nodes %10
0102030
Physics — oc_types.py
99.3
V_patrol km/h
320
V_sprint km/h
28,445
KE impact J
1.190
ρ(300m) kg/m³
28.6
Endurance min
1.93
SF MIL-STD
Pipeline
M1 SpectralFusionSTANDBY
M2 MultiTargetUKFSTANDBY
M3 ElasticNetSTANDBY
M4 EnergyBudgetSTANDBY
ProximityLockLOCKED
HumanLoopGate
KYIV
50.45°N 30.52°E · 300m AGL · Active Defense
Threats
Intercepts
Tick 0
Real-time pipeline log — 50 Hz
Threats neutralized
Penetrations
Engagement
BFT rejections0
Lures identified0
Avg intercept t
Battery reserve177.6 Wh
Swarm health100%
Net quorum
Wave progression
Detection0%
UKF tracking0%
Intercept fire0%
Neutralized0%
MISSION COMPLETE

Tessera MK.II

Delta-canard CFRP airframe · 7.2 kg MTOW · Cesaroni Pro54 APCP booster · None of this has been built yet.

Airframe & Flight Envelope
ConfigurationDelta-Canard Pusher
MaterialToray T800H CFRP Autoclave
Wingspan940 mm
Length1,120 mm
MTOW7.20 kg
RCS< 0.003 m²
V_patrol (L/D max)99.3 km/h
V_sprint (booster)320 km/h
G_design22 G (SF 1.93 — MIL-STD-1522A)
Patrol endurance28.6 min @ V_patrol
Sensors & Compute
EO CameraSony IMX678 — 4K 60fps
IR ThermalFLIR Lepton 3.5 LWIR (8–14μm)
RadarInxpect LBK-24 Doppler 24 GHz
ComputeJetson Orin NX
Neural Acc.Hailo H15 — 40 TOPS @ 3.5W
Mesh RadioSivers IQ EVK06002 — 60 GHz
Fallback RadioSiK 900 MHz
GPSHere3+ RTK
Propulsion & Energy
MotorT-Motor U10 Plus (η 93%)
ESCFLAME 60A
PropellerXoar CFRP 16×10 6-blade (η 78%)
BatteryTattu Plus 10Ah 6S LiPo Si-anode
Usable energy177.6 Wh (80% DoD)
BoosterCesaroni Pro54 6GXL APCP
Booster impulse764.5 N·s / 1.8s
ΔV booster+107 m/s (0 → 320 km/h)
Economics
CFRP airframe$680
Sensors + compute$1,400
Propulsion + booster$420
Battery + electronics$380
Assembly + QA$1,320
Unit total $4,200
PAC-3 per round$4,000,000
Cost advantage952×
Status
“None of this hardware has been manufactured. The BOM uses real part numbers from DigiKey and Mouser. The physics is derived from first principles using ISA atmosphere, manufacturer datasheets, and MIL-STD-1522A. But Tessera MK.II exists only as a specification.”
AH
NameAmine Harch
HandleVitalcheffe
Age16
LocationMorocco
SchoolSeconde, French Lycée
TargetsEPFL • ETH • MIT (2027)

The person who built this.

I built NEXUS because I was frustrated with how hard it is to understand what's actually happening in active conflict zones in real time. I built AEGIS because NEXUS showed me a problem I thought was worth trying to solve.

I don't have a defense industry background. I don't have institutional affiliation. I'm in my first year of secondary school in Morocco, working from a laptop. The advantage is that I had no prior assumptions about what the answer was supposed to look like. I just followed the math.

Everything in this codebase is mine — not generated, not copied. The algorithms are literature-sourced (Van der Merwe 2001, Lamport 1982, Olfati-Saber 2006). The constants are derived from primary sources. The bugs were real bugs, and fixing them taught me more than writing the initial code did.

I'm applying to EPFL in January 2027, ETH Zürich in December 2026, and MIT Early Action in November 2026. AEGIS is the centerpiece of my application. Whether it's good enough is for the admissions committees to decide.

If you want to discuss the project, the code is public and the commit history is honest.