AlphaIQ foresight fractal markAlphaIQ
v1.0
Users' guide
Six engines
Deterministic by seed

Operating the pre-salt ABM platform

This is a practical manual rather than a specification. It tells you what each control does to the numbers, how to read every tile and chart without misinterpreting it, and which comparisons are safe to make. Every figure quoted comes from the committed engines or from calibration runs against them.

What the platform is, and who it is for

The platform holds six agent-based models of pre-salt operations. Each one represents a decision problem where the outcome is produced by interaction — between vessels and weather, aircraft and disruption, vehicles and a communication channel, responders and a drift field, bidders and each other, suppliers and a capital plan. In every case the aggregate behaviour is not a simple sum of the parts, which is why a spreadsheet or a single-objective optimiser gives the wrong answer.

It is built for three audiences. A logistics or aviation planner uses it to size a fleet and defend the number. An HSE or licensing team uses it to quantify exposure under seasonal forcing and to show what a response capability actually buys. A strategy or supply-chain team uses it to test policy — a bidding posture, a local-content target — before committing to it.

Nothing here requires code. Choose an engine, set parameters or apply a named scenario, run, and read the tiles and charts. The rest of this guide is about doing that well.

The engine selector

The engine selector is the top-level choice: it decides which model runs, which parameter groups matter, and which tiles and charts appear. Switching engine also resets the horizon to that engine's natural length and unit, so set the horizon after choosing the engine rather than before.

Offshore logistics
Phase I
90 days
PSV fleet, FPSO diesel inventories, shore base and weather windows across the Santos Basin cluster. Compares direct port-to-platform routing against fixed and self-propelled offshore hubs.

Agents. Platforms with tanks and stochastic burn, PSVs running a five-state machine, a hub tanker, a feeder, and an AR(1) sea state.

Question it answers. How many vessels, on what supply architecture, meet the service level at least cost per well-day?

Aviation network
Phase I
60 days
Helideck-to-base rotorcraft network as a directed weighted graph, with cluster-preferential assignment, fuel-price sensitivity and an Aircraft Recovery Problem heuristic.

Agents. Three onshore bases with slot limits and local Jet-A1 prices, two offshore clusters generating rotation demand, and heavy and medium airframes with availability states.

Question it answers. What does a disruption cost once you account for recovery, and how sensitive is base choice to fuel price?

AUV swarm
Phase III
400 steps
Decentralised autonomous vehicles under acoustic bandwidth and latency limits, with firefly-style niching for multi-target search and CBBA bundles for inspection tasks.

Agents. Autonomous vehicles with a battery, a noisy intensity sensor and an acoustic modem; targets with heterogeneous signatures and finite inspection work.

Question it answers. What communication range maximises multi-target coverage, given that too much connectivity is as damaging as too little?

Spill response
Phase II
40 days
Lagrangian oil transport under seasonal ITCZ wind reorientation and North Brazil Current recirculation, coupled to a response fleet running nearest-slick or cooperative allocation.

Agents. Oil particles carrying volume, age and a mesoscale drift anomaly; response vessels with transit speed, skimming windows and an allocation rule.

Question it answers. Which seasons are defensible for an Equatorial Margin campaign, and what does better allocation actually buy?

Licensing rounds
Phase IV
24 blocks
Production-sharing bidding under the OPP regime: heterogeneous IOCs with private geological signals compete on profit-oil percentage, form consortia, and face the preemptive operatorship right.

Agents. International operators with budgets, hurdle rates, information quality and risk posture; Petrobras with a tighter signal; transient consortia.

Question it answers. How much does the round leave on the table, and how much of the winner's curse is structural rather than behavioural?

Supplier ecosystem
Phase IV
60 months
Domestic yards, subsea manufacturers and engineering houses responding to a multi-year capital plan under ANP Resolution 19 and PEDEFOR Local Content Unit offsets.

Agents. Suppliers with capacity, backlog, technology level and cash; a capital plan arriving as a ramp to a plateau; a compliance and credit accounting layer.

Question it answers. Does a higher local-content mandate buy local content, or does it buy penalties and schedule slippage?

Parameter reference

Defaults are the committed values. Ranges are the intervals over which the model behaves sensibly and the results are worth interpreting — they are guidance, not hard limits. Parameters outside the engine you have selected are inert.

Applies to every engine.

ParameterUnitsDefaultSensible rangeWhat moving it does
Engine
engine
selectorOffshore logisticssix enginesChooses which model runs. Switching engine also resets the horizon to that engine's natural length and unit.
Horizon
numSteps
days · steps · blocks · months90 d logistics · 60 d aviation · 400 steps swarm · 40 d spill · 24 blocks auction · 60 months supplier30–365 d · 14–180 d · 50–900 steps · 10–90 d · 4–60 blocks · 12–120 monthsLength of the run and the number of emitted rows. Several KPIs are cumulative or running averages, so the horizon is not a neutral setting: it moves the tile values as well as the chart length.
Seed
seed
integer420 for Monte Carlo, otherwise any 32-bit integerSeeds the Mulberry32 stream. A non-zero seed reproduces a run bit-for-bit; zero falls through to the platform RNG and gives a fresh draw every run.
Scenario
scenario
selectorBaseline18 named scenariosApplies a partial configuration on top of whatever you already have. Scenarios compose with manual tuning rather than replacing it.
Agent count
numAgents
count205–100Retained for template compatibility only. Every engine sizes its own populations from its own fields; changing this does not change any result.
Shock enabled
shockEnabled
toggleoffon / offTurns on a mid-horizon stress event. What the event is depends on the engine: a frontal system parked over the Santos Basin, a fleet-wide airworthiness directive, an amplified cross-shelf drift anomaly, an oil-price collapse, or a demand surge on the supplier base.
Shock magnitude
shockMagnitude
multiplier1.51.0–3.0Severity of that event. In logistics it multiplies the significant-wave-height mean between 35% and 50% of the horizon; in the auction it divides Brent over the middle fifth of the block sequence.

Reading the tiles and charts

Each KPI tile shows the value from the final emitted row. That is exactly right for a cumulative quantity and misleading for one that is still ramping or that oscillates. The notes below say which is which.

A note on chart axes. The horizontal axis is the engine's own unit: days for logistics, aviation and spill, mission steps for the swarm, months for the supplier base, and block index for the auction. The auction series is a sequence of independent awards, so there is no time trend to read into it — only a level and a dispersion.

A note on units. Costs are USD unless the tile says USD million. Emissions intensity is kilograms of CO₂-equivalent per cubic metre delivered, not tonnes. Stockout hours are platform-hours summed across the whole fleet, so sixteen units at zero stock for one hour is sixteen hours.

The named scenarios

Each scenario is a partial configuration applied on top of your current settings, so it composes with manual tuning rather than resetting it. That is convenient and occasionally surprising: if you have already moved a field that a scenario also sets, the scenario wins.

ScenarioEngineSetsQuestion it answers
BaselineAnyNo overridesWhat does the default configuration do before any intervention?
Case 1 · Direct port→platformLogisticshubStrategy 1, fleet 6What does today's shore-based milk-round architecture cost?
Case 2 · Fixed offshore hubLogisticshubStrategy 2, fleet 5Does a floating forward stock point pay for its own charter?
Case 3 · Self-propelled hubLogisticshubStrategy 3, fleet 5Is it worth moving the hub to chase demand rather than parking it?
Severe weather seasonLogisticsweatherSeverity 1.6, hs limit 2.5 mHow much of the fleet's capacity does a bad winter consume?
SBMI Maricá fuel −10%AviationmaricaFuelIndex 0.9How elastic is base selection to a local fuel-price advantage?
Aircraft recovery disabledAviationrecoveryEnabled off, disruptionRate 0.12What is the rescheduling capability actually worth in cancellations and cost?
Acoustic range 90 mSwarmacousticRangeM 90What does a fragmented, effectively uncoordinated swarm look like?
Acoustic range 350 mSwarmacousticRangeM 350What does the niching regime deliver in coverage and sub-population structure?
Acoustic range 750 mSwarmacousticRangeM 750What happens when the network becomes complete and consensus becomes unanimous?
Hybrid optical-acousticSwarmopticalEnabled on, turbidity 0.2Can local link quality substitute for reach?
JFMA · ITCZ southSpillseason JFMA, SDSWhat is the worst-credible-case shoreline exposure for a first-quarter campaign?
JASO · ITCZ northSpillseason JASO, SDSHow much does a seasonal drilling window reduce that exposure?
MAS-CoPSO responseSpillseason JFMA, MASCOPSOWhat does better fleet allocation buy when the season is already against you?
High-price aggressive roundAuctionBrent 95, 11 IOCsHow far do profit-oil offers move when price and competition both rise?
Low-price roundAuctionBrent 52, 5 IOCsWhere does the profit-oil floor start to bind, and who stops bidding?
No Petrobras preemptionAuctionpreemptionEnabled offIs preemption a discipline on bidding or only a mechanism for taking equity?
75% LC, no UCL offsetSupplierlocalContentPct 75, UCL offWhat does a harder mandate cost when the supply base cannot absorb it?
75% LC with PEDEFOR offsetSupplierlocalContentPct 75, UCL on, PEDEFOR 240mCan investment and credits convert that cost into capability?

Seeding and reproducibility

Seed 0 — Monte Carlo
A seed of zero falls through to the platform random number generator, so every run is a fresh draw. Use it when you want to feel the dispersion of an outcome — repeated runs at seed 0 are the cheapest sensitivity analysis available.
Any other seed — exact replay
A non-zero seed drives a Mulberry32 stream. The same seed and the same configuration reproduce a run bit-for-bit, which is what makes a result quotable in a report and auditable afterwards.
One stream, two languages
The TypeScript engines and the Python validation backend share the same Mulberry32 implementation, so a seeded run in the browser and the corresponding run in the validation pipeline consume the same random stream. Divergence between them is a modelling bug, not noise.

How many seeds is enough? It depends on the metric. Charter cost is deterministic given the configuration and needs one. Cost per well-day and average passenger delay are stable across three to five seeds. Stockout hours, cancellations and beaching percentages are heavy-tailed and deserve eight or more — the calibration figures in this guide use eight seeds for logistics, six for the swarm and twelve for the spill.

Quote the seed. When a number leaves the platform and goes into a deck, carry the seed and the horizon with it. A cost per well-day without a horizon is not a number anyone can reproduce.

The first fifteen minutes

Six exercises that between them exercise every engine and demonstrate the platform's main claims. Each states what to change and roughly what you should see. If your numbers differ materially at the same seed and horizon, something has been changed in the configuration you did not intend.

1
Find the knee in the fleet-size curve
  1. Select the offshore logistics engine, seed 42, horizon 90 days, supply strategy Case 1.
  2. Run at fleet size 3, then 4, then 5, then 6, then 8, recording cost per well-day and stockout hours each time.
What you should see

Cost per well-day falls 526k → 224k → 58k → 41k → 28k USD and stockout hours fall 9,977 → 4,146 → 930 → 565 → 240 platform-hours. Nautical miles move the other way, 28k → 60k. The knee is at five vessels; everything past six is buying insurance, not service.

2
Compare architectures at matched service, not matched fleet
  1. Run Case 1 with five vessels, then Case 2 with four vessels.
  2. Record cost per well-day, cumulative miles and emissions intensity for each.
What you should see

Case 1 at five vessels gives 58k USD per well-day, 51k nm and 930 stockout hours; Case 2 at four gives 24k USD, 28k nm and 269 hours. The hub reaches an acceptable service level with one fewer vessel and roughly 40% fewer steamed miles, and emissions intensity drops from 41–46 to about 35 kgCO₂e/m³.

3
Make the self-propelled hub earn its charter
  1. Run Case 2 and Case 3 side by side at fleet size 5.
  2. Then raise the drilling-unit count to 5 and the drilling burn multiple to 3.5 and repeat.
What you should see

At the base cluster geometry the two are within noise of each other — 16k USD and 81 stockout hours against 18k USD and 108 hours — so Case 3's advantage is second-order. It grows with demand heterogeneity, which is what the second run demonstrates: mobile, concentrated rig demand is what a fixed hub position cannot follow.

4
Price the aircraft recovery capability
  1. Select the aviation engine, 60 days, three heavy and four medium airframes, 120 POB per unit.
  2. Note the baseline, then apply the aircraft-recovery-disabled scenario.
  3. Separately, set the Maricá fuel index to 0.9 and watch the movement share.
What you should see

Baseline gives 3.19 h average passenger delay, 80% utilisation, two cancellations and 3.0m USD of recovery savings. Disabling recovery under a doubled disruption rate takes cancellations from 2 to 73 and adds 0.38m USD. The fuel discount moves SBMI Maricá from 25.2% to 27.6% of movements — a real but bounded response, because affinity and slot limits also bind.

5
Sweep the acoustic range and find both cliffs
  1. Select the swarm engine, twelve vehicles, six targets, a 2,000 m box, 400 steps.
  2. Run at 50, 100, 250, 400, 600 and 800 m of acoustic range.
  3. Record coverage, niching index and the largest connected component each time.
What you should see

Coverage runs 25, 25, 33, 31, 22, 8% and the niching index peaks at 2.03 at 250 m. The largest component grows monotonically from 24% to 92%. The analytic connectivity threshold reported by the engine is 513 m; above it the network is effectively complete, consensus becomes unanimous, and the swarm collapses onto the loudest single target. Too much connectivity is as damaging as too little.

6
Separate the seasonal effect from the response effect
  1. Select the spill engine, Foz do Amazonas defaults: 8,000 m³ over three days, 175 km offshore, 40 days.
  2. Run the four combinations of season (JFMA, JASO) and allocation (SDS, MAS-CoPSO).
  3. Then move to Phase IV: disable Petrobras preemption on the auction engine, and run the supplier engine at a 75% mandate with and without UCL credits.
What you should see

Shoreline oiling is 43.9% and 44.1% under JFMA against 11.6% and 11.9% under JASO — allocation barely moves it. Recovery, by contrast, goes from 0.51% to 3.31%, a factor of six and a half. Allocation strategy changes what is recovered, not where the oil goes. In Phase IV, removing preemption lifts winning profit-oil from 43.6% to 44.1% and the winner's curse from 4.5% to 6.9%; on the supplier side, a 75% mandate without credits costs 459m USD of penalties and 21.5 months of delay, while the same mandate with PEDEFOR costs nothing in penalties and 9.4 months.

Common pitfalls

Reading a terminal KPI off a series that is still ramping
Cost per well-day is total spend divided by unit-days, so it falls through the first weeks of any run as fixed charter is amortised. Supplier lead time is still climbing at month 20 of a 60-month plan. Days to first landfall is a running median that drifts up before it settles. If the chart has not flattened, the tile is not an answer — extend the horizon or quote the value with the horizon attached.
Comparing hub cases at equal fleet size
Charter cost is close to linear in vessel count, so any two architectures compared at the same fleet size mostly reveal their fixed-cost difference — and the hub cases carry roughly 1.55 hub-equivalents of extra charter before a single mile is saved. The hub's claim is that it reaches the same service level with fewer vessels. Fix the service level, then compare cost.
Drawing a conclusion from a single seed
Every calibration figure in this guide is a mean across seeds: eight for logistics, six for the swarm, twelve for the spill. Stockout hours in particular are heavy-tailed, because a stockout is a rare interaction between a weather window, a reorder trigger and a vessel already committed elsewhere. Run three to five seeds before believing any ordering, and use seed 0 for Monte Carlo mode when you want a fresh draw each time.
Treating swarm coverage as a settled quantity
Coverage oscillates step to step as vehicles arrive at and depart from targets. Take the mean over the last fifth of the run rather than the final step, and check mean battery and active vehicle count before attributing a late decline to the communication regime.
Forgetting which fields the engine actually reads
The auction engine takes its block count from the horizon field, not from the separate block-count field. The generic agent-count field does nothing in any engine. Switching engine resets the horizon to that engine's natural length, so a horizon you set deliberately will be overwritten when you change engines.
Comparing scenarios that changed more than one thing
The named scenarios are partial configurations layered on your current state, and several move two parameters at once — the recovery-disabled scenario also doubles the disruption rate, and the PEDEFOR scenario also doubles the investment. If you need a clean derivative, change one field by hand.
One last piece of advice. The value of these models is rarely the point estimate. It is the shape of the response — where the knee in the fleet-size curve sits, how wide the niching window is, which season is defensible, how much of the winner's curse survives when consortia are allowed. Run the sweep, look at the shape, and let the point estimate come last.