12 · Capital Systems Modeler · Capital Systems Integrator (architectural cost)

Architecture allocation

Can it place functions onto controllers so every constraint holds and network traffic is minimal?

Allocate functions to ECUs under CPU and pin capacity, zone locks and redundancy segregation, minimising the signal rate that has to cross the network. The optimum is found by exhaustive search, so “good enough” is measured against the real best.

Capital reference. Specifying the Architectural Cost of a Component (systems-integrator/specifying-the-architectural-cost-of-a-component). This domain stands for the capability that article describes; the task gives the model the rules in full rather than testing whether it remembers Capital’s.

Not tested here. Network topology design, bus loading and timing analysis.

Scale ladder. S: 6 functions on 3 ECUs · M: 8 functions on 3 ECUs · L: 10 functions on 4 ECUs.

Results

ModelVerdictS passedM passedL passedMean score
Claude Opus 5.5Assist3 / 33 / 32 / 399.6
Claude Fable 5.1Ready3 / 33 / 33 / 3100
Claude Sonnet 5.5Ready3 / 33 / 33 / 3100

Every trial

ModelSizeSeedScoreChecksTime
Claude Fable 5.1L#04187879443100constraints: all constraints hold · optimality: crossRate 2610 against optimum 2610102 s
Claude Fable 5.1L#14171101824100constraints: all constraints hold · optimality: crossRate 1080 against optimum 108056 s
Claude Fable 5.1L#24221434681100constraints: all constraints hold · optimality: crossRate 2020 against optimum 202082 s
Claude Fable 5.1M#02600911944100constraints: all constraints hold · optimality: crossRate 1840 against optimum 184028 s
Claude Fable 5.1M#12617689563100constraints: all constraints hold · optimality: crossRate 660 against optimum 66020 s
Claude Fable 5.1M#22634467182100constraints: all constraints hold · optimality: crossRate 2230 against optimum 223038 s
Claude Fable 5.1S#03032355530100constraints: all constraints hold · optimality: crossRate 870 against optimum 87016 s
Claude Fable 5.1S#13049133149100constraints: all constraints hold · optimality: crossRate 1070 against optimum 107027 s
Claude Fable 5.1S#22998800292100constraints: all constraints hold · optimality: crossRate 1010 against optimum 101015 s
Claude Opus 5.5L#0418787944396.3constraints: all constraints hold · optimality: crossRate 2780 against optimum 261056 s
Claude Opus 5.5L#14171101824100constraints: all constraints hold · optimality: crossRate 1080 against optimum 108031 s
Claude Opus 5.5L#24221434681100constraints: all constraints hold · optimality: crossRate 2020 against optimum 202069 s
Claude Opus 5.5M#02600911944100constraints: all constraints hold · optimality: crossRate 1840 against optimum 184028 s
Claude Opus 5.5M#12617689563100constraints: all constraints hold · optimality: crossRate 660 against optimum 66019 s
Claude Opus 5.5M#22634467182100constraints: all constraints hold · optimality: crossRate 2230 against optimum 223034 s
Claude Opus 5.5S#03032355530100constraints: all constraints hold · optimality: crossRate 870 against optimum 87017 s
Claude Opus 5.5S#13049133149100constraints: all constraints hold · optimality: crossRate 1070 against optimum 107035 s
Claude Opus 5.5S#22998800292100constraints: all constraints hold · optimality: crossRate 1010 against optimum 101015 s
Claude Sonnet 5.5L#04187879443100constraints: all constraints hold · optimality: crossRate 2610 against optimum 261041 s
Claude Sonnet 5.5L#14171101824100constraints: all constraints hold · optimality: crossRate 1080 against optimum 108022 s
Claude Sonnet 5.5L#24221434681100constraints: all constraints hold · optimality: crossRate 2020 against optimum 202025 s
Claude Sonnet 5.5M#02600911944100constraints: all constraints hold · optimality: crossRate 1840 against optimum 184019 s
Claude Sonnet 5.5M#12617689563100constraints: all constraints hold · optimality: crossRate 660 against optimum 66013 s
Claude Sonnet 5.5M#22634467182100constraints: all constraints hold · optimality: crossRate 2230 against optimum 223023 s
Claude Sonnet 5.5S#03032355530100constraints: all constraints hold · optimality: crossRate 870 against optimum 87015 s
Claude Sonnet 5.5S#13049133149100constraints: all constraints hold · optimality: crossRate 1070 against optimum 107014 s
Claude Sonnet 5.5S#22998800292100constraints: all constraints hold · optimality: crossRate 1010 against optimum 101013 s

What the model is asked

The small instance at seed 3032355530, exactly as sent. Regenerate any instance with npm run sample -- allocation M 2.

Show the prompt (1,355 characters)
TASK: Function-to-ECU allocation.

Assign every function to exactly one ECU so that ALL constraints hold:
- the sum of cpu of the functions on an ECU <= its cpuCap, and the sum of pins <= its pinCap;
- a function with a zone must go on an ECU in that zone (zone null = any ECU);
- each pair in `segregate` must be on different ECUs.
Among valid allocations, MINIMISE crossRate = the sum of `rate` over signals whose two functions are on different ECUs.

ECUs:
[
  {"id":"E1","cpuCap":35,"pinCap":11,"zone":"FRONT"},
  {"id":"E2","cpuCap":42,"pinCap":16,"zone":"CABIN"},
  {"id":"E3","cpuCap":74,"pinCap":41,"zone":"REAR"}
]

Functions:
[
  {"id":"F1","cpu":23,"pins":11,"zone":null},
  {"id":"F2","cpu":12,"pins":9,"zone":"REAR"},
  {"id":"F3","cpu":5,"pins":7,"zone":null},
  {"id":"F4","cpu":22,"pins":6,"zone":null},
  {"id":"F5","cpu":10,"pins":7,"zone":"REAR"},
  {"id":"F6","cpu":28,"pins":12,"zone":null}
]

segregate: []

Signals:
[
  {"a":"F2","b":"F1","rate":340},
  {"a":"F1","b":"F5","rate":480},
  {"a":"F4","b":"F3","rate":190},
  {"a":"F2","b":"F5","rate":110},
  {"a":"F6","b":"F3","rate":370},
  {"a":"F1","b":"F4","rate":230},
  {"a":"F1","b":"F3","rate":360},
  {"a":"F1","b":"F6","rate":500}
]

Output format (JSON, exactly these keys):
```json
{
 "allocation": [
  {
   "function": "F1",
   "ecu": "E2"
  }
 ],
 "crossRate": 340
}
```

All results · Capital knowledge base article