Initial commit

This commit is contained in:
2026-05-03 10:07:23 -04:00
parent 1ee725b269
commit f09fb7952e
2 changed files with 905 additions and 0 deletions

View File

@@ -0,0 +1,419 @@
# 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
```text
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:
```text
otium_cycle_cost =
otium_access_fee
+ personal_maintenance
+ officia_obligation
```
Recommended simulator constants:
```text
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. |
### Recommended wage constants
```text
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
```text
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
```text
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:
```text
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
```text
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
```text
AS_PER_DENARIUS = 16
```
### Wages
```text
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
```text
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
```text
OTIUM_ACCESS_FEE_DN = 2.00
OFFICIA_OBLIGATION_DN = 2.00
OTIUM_CYCLE_TOTAL_DN = 8.00
```
### Ceramic baseline
```text
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
```text
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:
```text
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:
```text
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.