Edit: network-optimization
Contracts
arcs
Transportation lanes connecting supply-chain nodes. Each arc defines a directed link with per-unit shipping cost, maximum throughput, transit time, and great-circle distance. Used by network flow, transportation, and routing models. — 7 col(s)demand
Customer demand forecasts by product and planning period. Each row is a (customer, product, period) tuple with a forecasted quantity and a service-level priority (1 = critical, 5 = deferrable) that drives fulfillment sequencing. — 5 col(s)inventory-policy
Inventory stocking parameters per warehouse and product. Defines holding costs, safety-stock floors, and maximum storage limits that feed into multi-echelon inventory optimization and network design models. — 5 col(s)nodes
Network locations in the supply chain: factories, distribution centers, and customer zones. Each node has a type, geographic coordinates, throughput capacity, and an annualized fixed operating cost used in facility-location decisions. — 8 col(s)products
Product master data. Each SKU has physical attributes (weight, volume) used for vehicle capacity checks and a declared unit value used in inventory holding-cost calculations and service-level prioritization. — 6 col(s)supply-capacity
Factory production capacity by product and period. Defines the maximum units a factory can produce, the variable cost per unit, and a fixed setup cost incurred whenever production is scheduled in that period. — 6 col(s)time-periods
Planning horizon definition. Each row is a discrete time bucket (week, month, or quarter) with start/end dates. Referenced by demand, supply-capacity, and other period-indexed contracts to ensure temporal consistency. — 4 col(s)vehicles
Fleet master data for vehicle routing problems. Each vehicle has weight and volume limits, a per-kilometer operating cost, and a maximum number of stops per route. Vehicles are assigned to a home depot node. — 7 col(s)Constraints
arc-endpoints-valid
3 rule(s) — references: nodes, arcsEvery arc must connect two nodes that exist in the network (subset). Every node must have at least one outbound arc (coverage), ensuring the network graph has no isolated locations. Prevents dangling references and disconnected nodes.demand-integrity
5 rule(s) — references: demand, nodes, products, time-periodsDemand rows must reference valid customers, products, and planning periods (subset). Every product and every time period must appear in at least one demand row (coverage). Catches orphaned demand records and ensures no product or period is left without forecast data.supply-integrity
5 rule(s) — references: supply-capacity, nodes, products, time-periodsSupply-capacity rows must reference valid factories, products, and planning periods (subset). Every product must have at least one factory that can produce it, and every planning period must have supply capacity defined (coverage). Ensures no product or period is left without a production plan.{
"id": "prj_seed_001",
"name": "network-optimization",
"description": "Multi-commodity network flow optimization. Determines optimal shipment quantities across the supply chain to minimize total transportation and production cost while satisfying customer demand within capacity limits.",
"contractRefs": [
"nodes",
"arcs",
"products",
"demand",
"supply-capacity",
"time-periods"
],
"constraintRefs": [
"arc-endpoints-valid",
"demand-integrity",
"supply-integrity"
],
"rowCountOverrides": {
"arcs": {
"mode": "default"
},
"demand": {
"mode": "default"
},
"nodes": {
"mode": "default"
},
"products": {
"mode": "default"
},
"supply-capacity": {
"mode": "default"
},
"time-periods": {
"mode": "default"
}
},
"createdAt": "2026-02-11T10:00:00Z",
"updatedAt": "2026-02-18T04:53:21.2094286Z"
}Test Data Generation
Configure row counts per contract, then generate synthetic data. Defaults: 20 rows/contract, max 1000.
| Contract | Mode | Rows | Source |
|---|---|---|---|
arcs |
20 |
global default (20) | |
demand |
20 |
global default (20) | |
nodes |
20 |
global default (20) | |
products |
20 |
global default (20) | |
supply-capacity |
20 |
global default (20) | |
time-periods |
20 |
global default (20) |
| NODE_ID | NODE_TYPE | NAME | REGION | LATITUDE | LONGITUDE | CAPACITY | FIXED_COST |
|---|---|---|---|---|---|---|---|
3zjO$8B@B1dj | i2CTTk#Aoh | YwSb!6RAZJjO | yfvh#wmX!P | -42.35 | 15.87 | 9067.52 | 9654.37 |
@5HSte4Na71 | Kj0dzJLa | XzOCYDQH | &%!zEEpVaiJT | -20.13 | -113.02 | 4252.60 | 6837.41 |
xCFzo2pEUM | dAfpoVdu | a3lHzFvJ2MQj | ldYmvA#jLoJ | 34.06 | 138.32 | 8231.94 | 1729.54 |
K*fkStm1gor | V1jZ1bvi | WDUk3Zxa88O | 1tnjL0Mt7lg | -54.14 | 95.35 | 3989.68 | 8026.19 |
SL$k1JRamDfh | kx@3RQU00x1 | NnIkSoq!W | FN7vsjh3Lp | -1.58 | 60.99 | 2565.76 | 2846.83 |
O$Q9GalY2ZQJ | ICVcKbeclC | &g&#Ry@$T1x# | wyDw$5CLR&j | -38.17 | -176.40 | 4492.72 | 250.88 |
jc075lIy | zIlerBmJJm | F!tQoF3u | B&*w7tyTg | -31.13 | 115.79 | 5996.77 | 7348.50 |
oKF#pIFIG@3 | J9Xo*XAkG | 1y9&K7DVE | yHw#6jNLM | -89.52 | -108.91 | 7351.44 | 4348.44 |
$%&RpZ2sB | i!W4pOTnAb | 6Fsm7n3BHLB | VVVsZamZ | 66.59 | 43.70 | 9782.87 | 1998.76 |
fb1wmPfN&sH | #8fdRema | rK71NDJkg*m | 1Y%J35NU | 26.86 | -107.56 | 6085.07 | 1676.29 |
hfmECfHFPi | *45dfrZHFFVJ | FaPsI6Gha | 7h#bvg%mxK | 44.89 | 1.58 | 4598.32 | 434.15 |
BpmQvRtgiyr | p!A#iEamt | ViR0A@jJq | GBn7dpP@2 | 12.57 | 7.47 | 7453.18 | 2689.17 |
5EF&ZVti@Vse | oVMj4bO7So | 4222m&2vP | 2uC1UAGXs | -85.96 | 114.51 | 8588.50 | 9818.13 |
@ZIcP2lZb | Z9!$*7Ue | Hb1G3CvHH%9 | 3CMhXGoDwGVe | 8.14 | 45.55 | 1954.13 | 3891.70 |
sLLprG9Rx | Nzw4P#c!Sy | Tvf0FfI! | S$Ifs%oKvbVD | -59.71 | 46.52 | 8309.12 | 9435.01 |
MtQa044nAn$ | lUh3Fh#T | dGCA1vzGqS | AWfyWP6lSj | 87.83 | -171.78 | 1381.99 | 35.70 |
FsyH74RuKw | NzO7vutL | @93oS*W0gw*L | ugZYZPIx | 7.63 | 53.05 | 7608.73 | 40.64 |
Ip$*pbEN | AFzqPAVwtDm | Pv*@f4SIX | k1*bmwMfbjgz | -1.78 | 78.50 | 2484.68 | 5218.02 |
EYG&U%Z6 | l9t!#u@jqWE | CGCz&KB1CwR | 9cYrOb2qvn | -20.77 | 90.22 | 1990.93 | 2325.00 |
LwScQgsE | LDb2P&&bRL | nLHD1nZog#l | ALdrP89$zYrC | 34.98 | -150.03 | 3104.79 | 4649.44 |
Constraint Verification
| Constraint | Rule | Result | |
|---|---|---|---|
arc-endpoints-valid |
arcs.FROM_NODE ⊆ nodes.NODE_ID |
All 20 values valid | |
arc-endpoints-valid |
arcs.TO_NODE ⊆ nodes.NODE_ID |
All 20 values valid | |
arc-endpoints-valid |
arcs.FROM_NODE covers all values from nodes.NODE_ID |
6 of 20 parent values missing | |
demand-integrity |
demand.CUSTOMER_ID ⊆ nodes.NODE_ID |
All 20 values valid | |
demand-integrity |
demand.PRODUCT_ID ⊆ products.PRODUCT_ID |
All 20 values valid | |
demand-integrity |
demand.PERIOD ⊆ time-periods.PERIOD_ID |
All 20 values valid | |
demand-integrity |
demand.PRODUCT_ID covers all values from products.PRODUCT_ID |
4 of 20 parent values missing | |
demand-integrity |
demand.PERIOD covers all values from time-periods.PERIOD_ID |
6 of 20 parent values missing | |
supply-integrity |
supply-capacity.FACTORY_ID ⊆ nodes.NODE_ID |
All 20 values valid | |
supply-integrity |
supply-capacity.PRODUCT_ID ⊆ products.PRODUCT_ID |
All 20 values valid | |
supply-integrity |
supply-capacity.PERIOD ⊆ time-periods.PERIOD_ID |
All 20 values valid | |
supply-integrity |
supply-capacity.PRODUCT_ID covers all values from products.PRODUCT_ID |
7 of 20 parent values missing | |
supply-integrity |
supply-capacity.PERIOD covers all values from time-periods.PERIOD_ID |
7 of 20 parent values missing |