| Policy Dimension | Current Stance | Strategic Consequence | Risk Assessment |
|---|
| Policy Dimension | Current Stance | Strategic Consequence | Risk Assessment |
|---|
How does the evaluator compute strategic trade-off scores, and what are its computational limits?
The policy workbench models diplomatic policy options using four linear heuristic equations that map slider inputs (Diplomatic Engagement, Counterterrorism Pragmatism, Aid Carve-outs, and Rights Conditionality) to four 0–100 indicators: Humanitarian Cushion, Security Threat Index, Diplomatic Leverage, and Rights Compliance Factor. It also adjusts security and leverage scores according to the selected regional alignment. These calculations serve as qualitative exploration tools rather than validated geopolitical forecasting models.
The workbench relies entirely on simplified additive weight formulas rather than econometric or empirical diplomatic outcome datasets. In the code, the regional neighbor option calculates a local variable diplomaticBonus that is never added to the returned score. External factors such as internal regime factions, currency liquidity, climate shocks, or international sanctions enforcement are unmodeled.
When the 'Strict Containment' preset button is clicked, the tool sets Diplomatic Engagement to 10%, Counterterrorism to 20%, Aid to 20%, Rights Conditionality to 90%, and alignment to US-EU Bloc. The calculation engine evaluates Humanitarian Cushion as round(20 * 0.7 + 10 * 0.3) = 17, Security Threat as round(100 - (20 * 0.5 + 10 * 0.3)) = 87, Diplomatic Leverage as round(10 * 0.4 + 20 * 0.4 - 90 * 0.2) = -6 (clamped to 0), and Rights Compliance Factor as round(90 * 0.3 + 10 * 0.2) = 29. The narrative box updates to the 'Principled Isolation Dilemma' description and the table highlights Critical Risk.
The calculation engine inside calculateMetrics() evaluates four formulas: Humanitarian Cushion = min(100, round(aid * 0.7 + diplomatic * 0.3)); Security Threat Index = min(100, round(100 - (ct * 0.5 + diplomatic * 0.3))); Diplomatic Leverage = min(100, round(diplomatic * 0.4 + aid * 0.4 - rights * 0.2)); and Rights Compliance Factor = min(100, round(rights * 0.3 + diplomatic * 0.2)). Scores are subsequently clamped to a lower bound of 0.
Selecting 'Rival Powers (China/Russia)' subtracts 15 points from leverage and adds 10 points to the security threat index. Selecting 'Central/South Asian Neighbors' subtracts 5 points from the security threat index, while its assignment of a 10-point diplomatic bonus remains an unreferenced local variable in script execution.
The interface assigns discrete qualitative statuses to the calculated metrics: Humanitarian access is labeled 'CRITICAL RISK' when Humanitarian Cushion falls below 40, otherwise 'MANAGED'. The Counterterrorism vector is labeled 'HIGH THREAT' when the Security Threat Index exceeds 50, and 'MODERATE' otherwise. Civic & Rights Leverage is marked 'SEVERE DEFICIT' when the Rights Compliance Factor falls below 30.
The saved default uses diplomatic engagement forty and aid sixty five. Its humanitarian score is aid times point seven plus diplomatic times point three, giving fifty seven point five, rounded to fifty eight. Bars use five pixels per score or control unit on their shared zero to one hundred scale. These arbitrary response coefficients are simulator assumptions, not validated humanitarian effects. Labels do not certify policy results. The default leverage adds forty times point four and sixty five times point four, then subtracts rights eighty times point two, yielding twenty six. Selecting rival powers subtracts fifteen after that calculation, giving eleven. Bars use twelve pixels per leverage point. This is a source rule and does not establish diplomatic causality. Security starts at one hundred minus counterterrorism thirty times point five and diplomacy forty times point three, giving seventy three before actor adjustments. Regional neighbors selection assigns a variable diplomatic bonus ten, but the source never includes that variable in the returned leverage or other scores. It subtracts five from security threat, changing seventy three to sixty eight; leverage remains twenty six. The bars use five pixels per threat point. Rights score is separately eighty times point three plus forty times point two, or thirty two. Radar rendering calls D3 lineClosed, a method that may be unavailable in the loaded D3 runtime; offline library absence already blocks healthy chart proof. JSON exports active policy inputs and computed assumptions, not verified political outcomes.