Files
otivm/docs/economy/otivm_iv_cost_calibration_model.md
2026-05-03 10:07:23 -04:00

20 KiB
Raw Blame History

OTIVM-IV Cost Calibration Model — Roman Merchant Economy, c. 14 BCE

Prepared for: OTIVM-IV / CIVICVS Simulator
Date: 2026-05-03
Status: Calibrated historical-economic model, not a claim of exact reconstruction
Baseline good selected: Plain ceramic cup / small clay vessel
Currency convention: 1 denarius (dn) = 16 asses (as)


1. Method

This document treats Roman economic evidence as a calibration field rather than as a complete price list. Values are divided into three categories:

  • Source-backed anchors: values directly attested or strongly reported in ancient evidence or modern synthesis.
  • Analogical conversions: values inferred from better-attested wages, food prices, transport charges, or later Roman price schedules.
  • Simulator calibrations: values required for balanced equations where no direct evidence survives.

The objective is not exactness. The objective is defensibility, internal consistency, and clean decomposition into named constants.

Confidence labels

Label Meaning
HIGH Directly attested or widely accepted anchor; suitable as a calibration base.
MEDIUM Inferred from adjacent evidence, but historically plausible and equation-safe.
LOW Needed by the model but not directly recoverable; treat as calibration.

2. Currency and Equation Rules

Currency

  • 1 dn = 16 as
  • All simulator costs should resolve to denarii internally.
  • UI may show small daily or per-item prices in asses where that better reflects ancient small-denomination accounting.

Conversion

dn = as / 16
as = dn * 16

Otium-cycle convention

The mockup uses an existing placeholder of 8 dn for the next otium cost. This model preserves that magnitude because it is plausible for a cycle covering roughly one to two weeks of a middling merchants subsistence and social operating costs.

Recommended equation:

otium_cycle_cost =
    otium_access_fee
  + personal_maintenance
  + officia_obligation

Recommended simulator constants:

OTIUM_ACCESS_FEE_DN        = 2.00
PERSONAL_MAINTENANCE_DN   = 4.00
OFFICIA_OBLIGATION_DN     = 2.00
OTIUM_CYCLE_TOTAL_DN      = 8.00

These should remain separately logged in parameter_drift_log.


3. Reference Wages and Price Anchors

These anchors should calibrate all derived constants.

Reference item Amount Period / unit Source Confidence Notes
Legionary soldier, miles gregarius, Augustan stipendium 225 dn annual gross pay Augustus-era army-pay tradition; modern syntheses commonly give 225 denarii/year for the Augustan legionary. HIGH Best first-century monetary anchor. Deductions for rations/equipment complicate net disposable pay.
Legionary soldier, implied daily gross 0.616 dn = 9.86 as per day Derived from 225 dn / 365 days. HIGH Use only as gross annualized pay, not as free cash.
Unskilled day laborer 0.3750.625 dn = 610 as day Calibrated from Roman Egypt wage studies and later Diocletianic wage schedules. MEDIUM Direct Augustan Italian data are thin. Use 0.50 dn/day as simulator midpoint.
Skilled artisan / craft worker 0.751.25 dn = 1220 as day Calibrated from later craft wages and relative skill premium; terracotta figurine maker in the Diocletianic Edict is listed above common labor. MEDIUM Use 1.00 dn/day as simulator midpoint for potter/craft labor.
Potter / terracotta specialist 1.00 dn day Analogical: Diocletianic wage schedule lists maker of terracotta figurines at a higher daily rate than common labor. MEDIUM For mass pottery, per-item labor is tiny because production is batched.
Elementary teacher Analogical only monthly per pupil Diocletianic Edict lists elementary teacher monthly per pupil; later, not Augustan. LOW Use as relative status anchor, not as direct Augustan Italian price.
Teacher of Greek/Latin literature / geometry Analogical only monthly per pupil Diocletianic Edict lists literature/geometry teacher above elementary teacher. LOW Can anchor literacy/status costs if education mechanics are later added.
Roman magistrate public salary 0 dn annual public salary Republican/early imperial civic magistracies were generally honorific and unpaid; office could impose private expense. HIGH Useful negative anchor: status office creates obligation more than salary.
Modius of wheat 0.501.00 dn = 816 as per modius Calibrated from early imperial grain-price discussions and later food-price schedules. MEDIUM Use 0.75 dn/modius as simulator food-cost midpoint for central Italy.
One adult grain need 45 modii/month monthly Standard ancient subsistence approximation. MEDIUM Implies grain cost alone of roughly 34 dn/month at 0.75 dn/modius.
Personal bare food floor 0.120.20 dn day Derived from wheat consumption plus simple additions. MEDIUM Merchant maintenance must be higher than this due to lodging, clothing, harbor expenses.
Road freight, full wagon Later analogical per mile Diocletianic Edict preserves road transport charges by wagon/load. LOW Use for ratios only; not direct Augustan prices.
Sea freight Later analogical per route / volume Diocletianic Edict preserves sea freight by route and volume. LOW Useful for relative route cost, not exact first-century amount.
WAGE_UNSKILLED_DAY_DN     = 0.50
WAGE_SKILLED_ARTISAN_DN   = 1.00
WAGE_MERCHANT_SELF_DN     = 1.00
WHEAT_MODIUS_DN           = 0.75

4. Table 1 — Periodic Operating Costs

Cost item Amount (dn) Per cycle Source Confidence Notes
OTIVM access / commercial information retainer 2.00 dn per otium cycle Calibration from commercial association, factor, broker, and information-access behavior; no exact “subscription” equivalent is known. LOW Represents letters, informants, harbor gossip, factor access, and maintaining a place in commercial knowledge channels.
Personal maintenance 4.00 dn per otium cycle Derived from wheat-price anchor, lodging, simple meals, clothing upkeep, lamps/oil, local movement. MEDIUM Plausible for a middling working merchant over roughly 714 days; above subsistence, below elite consumption.
Officia obligations 2.00 dn per otium cycle Calibration from Roman patronage, collegial obligations, tips, gifts, unrepaid favors, and small social expenses. LOW Should fluctuate by status and events. Baseline represents ordinary soft obligations, not crisis bribes.
Total recommended otium cycle cost 8.00 dn per otium cycle Sum of three components. MEDIUM Preserves mockup magnitude while decomposing it into citable triggers.

Periodic-cost equation

otium_cycle_cost_dn =
    2.00  // otium_access_fee_dn
  + 4.00  // personal_maintenance_dn
  + 2.00  // officia_obligation_dn
= 8.00 dn

Drift-log mapping

Cost item Suggested trigger_type Parameter affected
OTIVM access otium_access_fee liquiditas, possibly mercatus_scientia maintenance
Personal maintenance personal_maintenance liquiditas
Officia obligations officia_obligation liquiditas, clientela, fama

5. Baseline Goods Model Selection

The originally proposed wicker basket is useful, but ceramic vessels are a stronger first baseline because Roman pottery is archaeologically abundant, batched, transportable, breakable, and well suited to equation decomposition.

Candidate Decision Reason
Plain ceramic cup / small clay vessel SELECTED Best balance of archaeological richness, simple material flow, batch production, and transport/market logic.
Wicker basket Defer Good for seasonal organic material, but direct price evidence is weaker.
Axe Defer Strong labor/material model, but iron pricing and smithing variability complicate first baseline.
Army tent Defer Useful later for military supply; textile/leather input model is more complex.
Chair/table Defer Too variable by wood species, joinery, finish, and status market.

6. Table 2 — Plain Ceramic Cup / Small Clay Vessel Full Cost Structure

Baseline assumptions

  • Product: plain local ceramic cup or small cup-like vessel.
  • Production mode: batched workshop production.
  • Sale context: town or harbor market in Roman Italy.
  • Finished item simulator retail value: 2 as = 0.125 dn.
  • Fine/slipped or branded version may be doubled to 4 as = 0.25 dn.
  • This is deliberately a humble good; the value comes from repeatable structure, not high margin.

Cost components

Component Amount (dn or as) Source Confidence Notes
Clay extraction / raw clay 0.125 as = 0.0078 dn Calibration from low raw-material value; clay is local and low cost. LOW Clay is abundant; cost is mainly labor/access, not material scarcity.
Water and preparation 0.125 as = 0.0078 dn Calibration from workshop preparation logic. LOW Includes levigation, kneading, and waste loss at tiny per-unit batch share.
Permit/customary access fee for clay pit 0.125 as = 0.0078 dn Calibration from estate/public-land access logic. LOW No direct cup-level fee; included so the supply-chain equation has an access-cost slot.
Transport of raw clay to workshop 0.25 as = 0.0156 dn Calibration from short local haul; later transport schedules only support relative scale. LOW Should be near zero if workshop sits near clay source; increase for urban workshops.
Potter labor 0.50 as = 0.03125 dn Derived from skilled wage 1 dn/day and batch production. MEDIUM Assumes one potter can form many simple vessels per day; labor share is small per cup.
Assistant / unskilled labor 0.125 as = 0.0078 dn Derived from 0.50 dn/day unskilled wage and batch support. MEDIUM Includes moving clay, stacking, cleaning, carrying.
Kiln fuel 0.25 as = 0.0156 dn Calibration from kiln batch fuel spread across many items. LOW Fuel matters at workshop scale but is small per cup if firing is efficient and batched.
Kiln depreciation / tools 0.125 as = 0.0078 dn Calibration. LOW Covers wheel, tools, kiln wear, wasters.
Workshop overhead 0.25 as = 0.0156 dn Calibration from rent, storage, supervision, breakage. LOW Needed for equation completeness.
Breakage / waster allowance 0.125 as = 0.0078 dn Archaeological pottery studies emphasize breakage, discard, and lifecycle effects. MEDIUM Small per-unit surcharge; should rise for long-distance trade.
Finished-goods transport to local market 0.25 as = 0.0156 dn Calibration from short haul. LOW If carried to stall locally, this is small. For intercity transport, route system should add separate vectura.
Portoria / toll 0 as local; 0.125 as if crossing toll boundary Portoria commonly modeled as low ad valorem toll; use only when route crosses toll district. MEDIUM For local sale, zero. For transported goods, use route-level toll rather than baked-in cost.
Market fee / stall share 0.25 as = 0.0156 dn Calibration from market-control/stall logic. LOW Represents daily stall rent or market dues allocated per item.
Merchant margin 0.50 as = 0.03125 dn Calibration. MEDIUM Needed to make the item worth handling; roughly 25% of final retail price.
Total local retail price 2.00 as = 0.125 dn Sum of components. MEDIUM Equation-safe humble ceramic cup baseline.

Baseline ceramic-cup equation

ceramic_cup_local_cost_as =
    clay_raw_as
  + clay_prep_as
  + clay_access_fee_as
  + raw_transport_as
  + potter_labor_as
  + assistant_labor_as
  + kiln_fuel_as
  + kiln_depreciation_as
  + workshop_overhead_as
  + breakage_allowance_as
  + finished_transport_as
  + local_portoria_as
  + market_fee_as
  + merchant_margin_as

With recommended values:

ceramic_cup_local_cost_as =
    0.125
  + 0.125
  + 0.125
  + 0.250
  + 0.500
  + 0.125
  + 0.250
  + 0.125
  + 0.250
  + 0.125
  + 0.250
  + 0.000
  + 0.250
  + 0.500
= 3.000 as

This sum is too high for the chosen 2 as retail target. Therefore the first naive component allocation overstates the unit burden. Batch production must compress overhead and labor further.

Corrected baseline equation

For the simulator, use a 2-as local cup and group micro-costs into batch categories:

Aggregated component Amount Notes
Raw material and preparation 0.25 as Clay, water, preparation, access.
Workshop labor 0.50 as Potter and assistant batch share.
Kiln/fuel/tools 0.375 as Firing and tool wear.
Breakage allowance 0.125 as Wasters and handling loss.
Local transport and market fee 0.25 as Stall and short transport.
Merchant margin 0.50 as Incentive to handle and sell.
Total 2.00 as = 0.125 dn Recommended base constant.

Corrected equation

ceramic_cup_base_as =
    raw_material_prep_as      // 0.25
  + workshop_labor_as         // 0.50
  + kiln_fuel_tools_as        // 0.375
  + breakage_allowance_as     // 0.125
  + local_transport_market_as // 0.25
  + merchant_margin_as        // 0.50
= 2.00 as

Variant constants

Good constant Amount Use
CERAMIC_CUP_PLAIN_LOCAL_AS 2 as Local plain vessel.
CERAMIC_CUP_FINE_LOCAL_AS 4 as Better finish, slip, stamp, or preferred workshop.
CERAMIC_CUP_TRANSPORTED_AS 3 as Plain vessel after intercity transport and toll burden.
CERAMIC_CUP_BREAKAGE_RATE_LOCAL 0.05 Local handling.
CERAMIC_CUP_BREAKAGE_RATE_INTERCITY 0.12 Longer transport.
CERAMIC_CUP_PORTORIA_RATE 0.025 Use 2.5% ad valorem where toll applies.

7. Simulator Constants

Currency

AS_PER_DENARIUS = 16

Wages

WAGE_UNSKILLED_DAY_DN     = 0.50
WAGE_SKILLED_ARTISAN_DN   = 1.00
WAGE_MERCHANT_SELF_DN     = 1.00
WAGE_LEGIONARY_YEAR_DN    = 225.00

Food and maintenance

WHEAT_MODIUS_DN             = 0.75
MERCHANT_DAILY_MAINT_DN     = 0.35
OTIUM_CYCLE_DAYS            = 10
PERSONAL_MAINTENANCE_DN     = 4.00

Note: MERCHANT_DAILY_MAINT_DN * 10 = 3.50 dn; rounded to 4.00 dn to include incidental urban expense.

Otium

OTIUM_ACCESS_FEE_DN        = 2.00
OFFICIA_OBLIGATION_DN      = 2.00
OTIUM_CYCLE_TOTAL_DN       = 8.00

Ceramic baseline

CERAMIC_CUP_PLAIN_LOCAL_AS       = 2.00
CERAMIC_CUP_FINE_LOCAL_AS        = 4.00
CERAMIC_CUP_TRANSPORTED_AS       = 3.00
CERAMIC_CUP_PORTORIA_RATE        = 0.025
CERAMIC_CUP_BREAKAGE_LOCAL_RATE  = 0.05
CERAMIC_CUP_BREAKAGE_ROUTE_RATE  = 0.12

Route toll

PORTORIA_AD_VALOREM_RATE_LOW     = 0.025
PORTORIA_AD_VALOREM_RATE_HIGH    = 0.050

Use 0.025 as default.


8. Confidence Register

Model value Confidence Reason
225 dn Augustan legionary stipend HIGH Strong standard anchor.
1 dn = 16 as HIGH Stable Roman accounting convention after denarius retariffing.
Magistracy as unpaid / expense-bearing HIGH Good civic-status rule.
0.50 dn unskilled daily wage MEDIUM Plausible synthesis; not exact 14 BCE Italy.
1.00 dn skilled artisan daily wage MEDIUM Relative skill premium supported by later schedules.
0.75 dn per modius wheat MEDIUM Plausible central-Italy simulation midpoint.
8 dn otium cycle MEDIUM Defensible if cycle means about 10 days of middling maintenance plus social costs.
2 dn OTIVM access LOW Direct equivalent does not exist; calibration for information access.
2 dn officia LOW Historically real category, weakly priceable.
2 as plain ceramic cup MEDIUM Plausible low-value mass good; exact Augustan price not directly attested here.
Ceramic component breakdown LOWMEDIUM Equation-safe allocation, not direct ancient accounting.

9. Open Questions / Calibration Flags

  1. Otium cycle length
    The equations become clearer if the game formally defines one otium cycle as 10 sim days. If the intended cycle is shorter or longer, PERSONAL_MAINTENANCE_DN should scale with days while OTIUM_ACCESS_FEE_DN and OFFICIA_OBLIGATION_DN may remain fixed or semi-fixed.

  2. OTIVM subscription category
    No direct Roman “subscription to trade intelligence” price should be expected. Treat as a composite of factor access, letters, informants, harbor networks, and collegial standing.

  3. Officia
    This should become event-sensitive. Suggested multiplier:

    officia_cost = base_officia * status_multiplier * event_pressure
    

    Where status_multiplier rises with auctoritas and clientela.

  4. Pottery transport
    The local cup is useful as a production baseline but not as a lucrative trade good. Transported ceramics should be modeled in batches, not as single-item cargo.

  5. Fine ware
    Terra sigillata or stamped fine ware should be a separate product class. It is not merely a plain cup with higher price; it implies different production organization, reputation, and distribution.


10. Bibliography and Evidence Notes

Primary / ancient evidence

  • Diocletian, Edictum de Pretiis Rerum Venalium, AD 301. Used only as a later Roman relative price and wage schedule, not as direct 14 BCE pricing.
  • Polybius, Histories, Book 6. Used for Republican military pay/ration context.
  • Suetonius / Augustus-era military-pay tradition. Used indirectly through modern synthesis for Augustan stipendium.

Modern works and datasets consulted

  • Antony Kropff, An English translation of the Edict on Maximum Prices, also known as the Price Edict of Diocletian, version 2.1, 2016.
    URL: https://kark.uib.no/antikk/dias/priceedict.pdf

  • Walter Scheidel, Real wages in Roman Egypt: A contribution to recent work on pre-modern living standards, Princeton/Stanford Working Papers in Classics, 2008.
    URL: https://www.ancientportsantiques.com/wp-content/uploads/Documents/AUTHORS/Scheidel2008-Wages.pdf

  • J. Theodore Peña, Roman Pottery in the Archaeological Record, Cambridge University Press, 2007.
    Used for pottery lifecycle framing: manufacture, distribution, use, reuse, maintenance, recycling, discard, reclamation.

  • Heli Kiiskinen, Production and Trade of Etrurian Terra Sigillata Pottery in Roman Etruria and beyond between c. 50 BCE and c. 150 CE, 2013.
    Used for transport/distribution relevance of Italian terra sigillata and the caution that pottery trade involved multiple models.

  • Richard Duncan-Jones, The Economy of the Roman Empire: Quantitative Studies, 2nd ed., Cambridge University Press, 1982.
    General calibration background for prices, costs, and quantitative Roman-economy evidence.

  • Peter Temin, The Roman Market Economy, Princeton University Press, 2013.
    General market-context support.

  • Walter Scheidel, Ian Morris, and Richard Saller, eds., The Cambridge Economic History of the Greco-Roman World, Cambridge University Press, 2007.
    General economic background and scale calibration.

  • Jean Andreau, Banking and Business in the Roman World, Cambridge University Press, 1999.
    Used for commercial-network context.

  • Koenraad Verboven, The Economy of Friends: Economic Aspects of Amicitia and Patronage in the Late Republic, Latomus, 2002.
    Used for officia, patronage, and social-economic obligations.

  • Philip A. Harland, Associations, Synagogues, and Congregations, 2nd ed., 2013.
    Used for collegial and association behavior as social-economic context.


11. Implementation Note

Recommended database insertion pattern:

parameter_drift_log.trigger_type = 'otium_access_fee'
parameter_drift_log.delta_note   = 'Commercial information access and factor network maintenance.'
parameter_drift_log.value_after  = liquiditas_before - OTIUM_ACCESS_FEE_DN

parameter_drift_log.trigger_type = 'personal_maintenance'
parameter_drift_log.delta_note   = 'Food, lodging, clothing upkeep, light, and local movement.'
parameter_drift_log.value_after  = liquiditas_after_access - PERSONAL_MAINTENANCE_DN

parameter_drift_log.trigger_type = 'officia_obligation'
parameter_drift_log.delta_note   = 'Patronage, tips, gifts, collegial contributions, and unrecovered favors.'
parameter_drift_log.value_after  = liquiditas_after_maintenance - OFFICIA_OBLIGATION_DN

This preserves the current 8 dn design while making the ledger explainable and citable.