|
Government Model Version 3.1
Technical Document (equations)
December/2001
About this document
The objects and variables needed for
this model are listed in the Coding the Society Model Structure Version-2
document. Each variable mentioned here that's already listed in that
document will appear in italics.
The model assumes regimes (govt types)
will appear from the tech model as applications and that applications have
a tech level (development level). These two techs are also assumed to
exist:
Media
Economic Science
Management
Each civ has a list of N+2 regimes
describing different govt types through the Political Structure, Regime
Policies and Directly Negotiated Policies variables. These descriptive
values for N of them come from default settings or from scenario
designer's settings and remain constant through the game. A list of
default regimes and their values is provided at the end of this document.
The other two regimes have their variables as pointers to the ones in the
Conservative Govt Profile and the Ruler's Govt Profile. For these two
their Knowledge and Development levels are constant and
equal to 1.
Math expressions used:
Exp(x) is the exponential function
evaluated at x.
Abs(x) is the absolute value of x.
Sign(x) is a function that returns a 0
if x is 0, a 1 if x>0 and a -1 if x<0
Rexp(a,b,c) is equal to
1/(1+Exp(a+b*c))
You'll probably have to implement the
last one.
1. Model Equations
Calculations needed:
I. Computing Real Power Distribution
II. Creating the Conservative Govt
Profile
III. Computing the 5 Political Powers
shares for a social class.
IV. Computing preferences for DNPs for
a social class.
V. Creating the Support Regimes Shares
for a social class.
VI. Creating the 5 Political Block
Profiles.
VII. Creating the Society's Govt
Profile.
VIII. Creating the Future Govt
Profile.
IX. Creating the Current Govt Profile.
X. Determining the demographic share
for a social class.
XI. Determining Knowledge and
Development levels for a Regime.
XII. Determining the Govt-Regime
Distance and the Ruler-Regime Distance for a Regime.
XIII. Determining Social Class'
Historical PCI
XIV. Updating Empire's Stability
XV. Determining Optimum Institutional
Infrastructure (OII) needed in a province.
XVI. Determining the Number of
Administrators Needed (NAN) in a province.
XVII. Determining Administration
Effectiveness Level (AEL) for a province.
XVIII. Determining the Maximum Number
of Feudal Units (MNFU) in a province.
XIX. Determining Govt's Official
Religion.
I. Computing Real Power Distribution
The values for the 6 polpowers for the
5 political blocks and the ruler in the Real Political Structure
are defined as:
RULERPW=NRULERPW+(1-NRULERPW)*I_RULER*(1-M*CR)/T
BUROCRPW=(1-NRULERPW)*(NBURPW+I_BUR*(1-M*CR))/T
RELIGIOUSPW=(1-NRULERPW)*(NRELPW+I_REL*(1-M*CR))/T
CAPITALPW=(1-NRULERPW)*(NCAPITALPW+I_CAP*(1-M*CR))/T
PEOPLEPW=(1-NRULERPW)*(NPEOPLEPW+I_PEOPLE*(1-M*CR))/T
MILITPW=(1-NRULERPW)*(NMILITPW+I_MIL*(1-M*CR))/T
where:
I_BUR=0.15*(1-PP + SP)+0.05*NP
I_RULER=BRIBES*0.15+GSQUAD*0.3
I_CAP=0.1*PP+0.05*(1-SP)
I_PEOPLE=0.15*SYND
I_MIL=0.1*GSQUAD+0.3*IIS+0.1
M is the tech level of the Media Tech
(from the tech model).
CR is the value of Civil Rights
in the Current Govt Profile.
PP is the value of Private Property
in the Current Govt Profile.
SP is the value of Social Policies
in the Current Govt Profile.
NP is the number of provinces the civ
has.
GSQUAD is the Goons Squad Level.
BRIBES is the Ruler's Bribes Level.
SYND is the tech level of the
Syndicalism Tech.
IIS is the Internal Intelligence
Services Level.
T=NBURPW+NRELPW+NCAPITALPW+NPEOPLEPW+NMILITPW
+(I_BUR+I_RULER+I_CAP+I_PEOPLE+I_MIL)*(1-M*CR)
I_REL=0.3*X
X is the sum over all EGs of
(1-PI)*(1-FR)*POP*IR/S
PI is the Province Isolation of
the province the EG lives in.
FR is the EG's Religious
Discrimination Factor.
POP is the EG's population.
IR is EG's Importance of Religion.
S is the sum over all EGs of
(1-PI)*(1-FR)*POP
NBURPW is the political power
of Bureaucracy Block in the Current Govt Profile.
NRULERPW is ruler's political power
in the Current Govt Profile.
NRELPW is the political power
of Religious Block in the Current Govt Profile.
NCAPITALPW is the political power
of Capitalists' Block in the Current Govt Profile.
NPEOPLEPW is the political power
of People's Block in the Current Govt Profile.
NMILITPW is the political power
of Military Block in the Current Govt Profile.
II. Creating the Conservative Govt Profile
Every variable X in the Conservative
Govt Profile is determined as:
C*A+(1-A)*B
where:
A=Min(1,LGT/1200)
B is the current value of X in the
Conservative Govt Profile.
C is the value of X in the Current
Govt Profile.
IMPORTANT: This calculations must be
made after the new Current Govt Profile has been created. For
example, if you're in year 1900 and the next game turn is 10 years long,
then you first have to determine the Current Govt Profile for year 1910
and based on that info compute the Conservative Govt Profile for year
1910.
III. Computing the 5 Political Powers shares for a social class.
Each social class object has 5
variables describing its political power:
A share
of Political Power in the Military Political Block
A share
of Political Power in the Religious Political Block
A share
of Political Power in the Capitalists Political Block
A share
of Political Power in the People's Political Block
A share of Political Power in the
Bureaucracy's Political Block
Each variable is associated to a particular social role. Respectively
those are:
Warfare
Ethics
Kapital
Human
Administration
The share of political power in the Military Political Block, for example,
is A/T
where:
A=W*(1-FE*FR)*(1-PI)*P*DS
T is the sum of all A's over all
social classes of all EG's in the civ.
W is the value of the social role
Warfare in the social class' definition.
FE is EG's Ethnic Discrimination
Factor.
FR is EG's Religious Discrimination
Factor.
PI is the Province Isolation
value of the province the social class lives in.
P is EG's population.
DS is social class' Demographic
Share.
The same is made to all other 4
political blocks, replacing W for Ethics (Religious Block),
Human (People's Block), Kapital (Capitalists' Block) and
Administration (Bureaucracy Block).
IV. Computing Preferences for DNPs for a social class.
Civil Rights=ES*((0.5*(IND-TRAD)-p)/(1-p)
Note for me: la libertad que realmente
goza una clase es CR*(1-p)+p
Foreign Affairs=AGG
Ethnic
Discrimination: if the EG and the govt have the
same nationality, then ED=1-ET. Otherwise ED=0.
Religious Discrimination:
if
the govt
has an official religion
then
if
EG's religion and the govt's official religion are the same
then
RD=1-RT
else
RD=0
end if
else
If
EG's religion and the govt's Dominant Religion are
the same
then
RD=1-RT
else
RD=0
end if
end if
Slavery=(1-Sign(1-H))*Min(1,
(1-ET)*(1+(ASC/3)))
Tax Rate=(((p-K*CPW)/3)+0.4*Min(SP
, (1-(IND*(1-p)+p)))+AGG*0.1)*(1-FE*FR)
where:
ES is
Empire's Stability
TRAD is EG's Traditionalism.
SP is the value of Social Policies
in the Current Govt Profile
FE is EG's Ethnic Discrimination
Factor.
FR is EG's Religious Discrimination
Factor.
p=E*RPW + W*MPW + K*CPW
RPW is the political power of
the Religious Block in the Current Govt Profile.
MPW is the political power of
the Military Block in the Current Govt Profile.
CPW is the political power of
the Capitalists Block in the Current Govt Profile.
IND=0.5*((1-K*0.4)*Individualism +
K*0.4) + 0.5*(1-E*0.3)*Individualism + E*0.3*RIndividualism
ASC=0.5*(1-K*0.2)*Asceticism +
0.5*(1-E*0.3)*Asceticism + E*0.3*RAsceticism
AGG=0.5*((1-W*0.3)*Aggressiveness +
W*0.3) + 0.5*(1-E*0.3)*Aggressiveness + E*0.3*RAggressiveness
ET=(1-E*0.3)*EthnicTolerance + E*0.3*REthnicTolerance
RT=(1-E*0.3)*ReligiousTolerance +
E*0.3*(1-IR)*RReligiousTolerance
IR is EG's Importance of Religion.
E is the value of the social role
Ethics in the social class definition.
W is the value of the social role
Warfare in the social class definition.
K is the value of the social role
Kapital in the social class definition.
H is the value of social role Human
in the social class definition.
with Individualism, Aggressiveness,
Asceticism, EthnicTolerance and ReligiousTolerance being the values of
those attributes in the moral code of the EG and RIndividualism,
RAggressiveness, RAsceticism, REthnicTolerance and RReligiousTolerance
being the values of those attributes in the moral code of the religion the
EG follows.
V. Creating the Support Regimes Shares for a social class.
The array of support regime shares in
the social class object is a vector describing how social class'
population is divided politically among a set of regimes. Each component
of the vector is associated to one of the regimes listed in the "regimes
list" of the civ. The first component is associated to the ruler's regime,
the second to the conservative regime and the other 3 components (the
array is 5 components long) to 3 "selected" regimes from the list of
built-in regimes. If, for example, monarchy was selected as the 3rd
option, then the 3rd vector component represents the social class' share
who supports monarchy.
The first thing to do, then, is select
these 3 regimes. The selection is made at the civ level, valid for all
social classes in all EGs. Once the selection is made (thus determining
the 5 regime options social classes have), we compute the support regime
shares vector components on a per social class basis.
Civ level
To select the 3 built-in regimes from
the list, you have to check for each regime the value DL*(BASE+KL*30+S6)
and then pick the 3 regimes with highest value.
where:
BASE is the regime's Base
Attractiveness Value.
KL, DL and S6 are defined below.
Social Class level
To compute the vector components
values we first build and auxiliary vector with "raw" support. Then the
share is computed as RAW/T, where T is the sum of all components of the
raw support vector. The raw support for a given regime is:
Exp(0.08*KL*DL*(BASE-BAN+S1+S2+S3+S4+S5+S6))
where:
BASE is the regime's Base
Attractiveness Value if the regime is one of the built-in regimes, or,
if the regime is the ruler's one, then BASE=50*OB+(DRF+50*BRIBES)*(1-DSH).
And if the regime is the conservative regime, then BASE=TRAD*100+(A+W)*30.
KL is the regime's Knowledge Level.
DL is the regime's Development
Level.
TRAD is EG's Traditionalism.
BAN is the regime's Banning Factor.
DSH is the social class'
demographic share.
BRIBES is ruler's bribes level.
DRF is the Dissidence Reduction
Factor. This is a variable I forgot to include in the Coding the Society
Model Structure document. It's a variable belonging to the GOVT class.
S1=20*IND*(p+Sign(L)*PPW+A*BURPW)
S2=-10*(1-ASC)*(Abs(SP-(1-(IND*(1-p)+p)))
+ Abs(PP-ECON*Rexp(2,-8,1-OB)*(0.3+0.7*IND)+(1-ECON*Rexp(2,-8,1-OB))*(0.3+0.4*IND)))
S3=-30*(Abs(Rexp(3,-4,IR)-RPW)+Abs(Rexp(6,-7,AGG)-MPW)+Abs(Rexp(6,-6,(1-ASC)*IND)-CPW))
S4=-30*Abs(Rexp(4,-6,1-OB)-PPW)
S5=5*(HPCI/PCI)*SP*Sign(L)
S6=50*Exp(-5+5*(1-ES))*RULERPW
with:
p=E*RPW+W*MPW+K*CPW
RPW is the political power of
the Religious Block in the Regime's Political Structure.
MPW is the political power of
the Military Block in the Regime's Political Structure.
CPW is the political power of
the Capitalists Block in the Regime's Political Structure.
PPW is the political power of
the People's Block in the Regime's Political Structure.
BURPW is the political power of
the Bureaucratic Block in the Regime's Political Structure.
RULERPW is the political power
of the ruler in the Regime's Political Structure.
ECON is the tech level of the Economic
Science Tech.
SP is the Social Policies
variable in the Regime Policies of the Regime.
IND=0.5*((1-K*0.4)*Individualism +
K*0.4) + 0.5*(1-E*0.3)*Individualism + E*0.3*RIndividualism
ASC=0.5*(1-K*0.2)*Asceticism +
0.5*(1-E*0.3)*Asceticism + E*0.3*RAsceticism
AGG=0.5*((1-W*0.3)*Aggressiveness +
W*0.3) + 0.5*(1-E*0.3)*Aggressiveness + E*0.3*RAggressiveness
IR=(1-E*0.3)*ImportanceOfReligion+E*0.3
E is the value of the social role
Ethics in the social class definition.
W is the value of the social role
Warfare in the social class definition.
A is the value of the social role
Administration in the social class definition.
K is the value of the social role
Kapital in the social class definition.
L is the value of the social role
Labor in the social class definition.
OB is the value of EG's Obedience.
HPCI is social class' Historical PCI.
This is a variable I forgot to include in the SOCIALCLASS class in the
Coding the Society Model Structure document.
PCI is social class' Per Capita
Income.
with Individualism, Aggressiveness,
Asceticism, ImportanceOfReligion, EthnicTolerance and ReligiousTolerance
being the values of those attributes in the moral code of the EG and
RIndividualism, RAggressiveness, RAsceticism, REthnicTolerance and
RReligiousTolerance being the values of those attributes in the moral code
of the religion the EG follows.
VI. Creating the 5 Political Blocks Profiles.
Each political block in the GOVT
object consists of three groups of variables, the political power
structure, the directly negotiated policies and the regime policies. For
the military political block you have to determine the values of the
variables doing this:
Directly Negotiated Policies (DNP)
For each policy you have to sum over
all social classes of all EG's in the civ these expressions:
SCPW_MPB*SCDNP
where SCPW_MPB is the social class'
political power in the military political block and SCDNP is the
social class' preference for the DNP policy being processed.
Political Structure and Regime Policies
For each variable you have to sum over
all social classes of all EG's in the civ these expressions:
SCPW_MPB*V
where:
SCPW_MPB is the same value defined
above.
V is the sum of SSH*X over all 5
components of the social class' regime support shares vector.
SSH is the vector component value.
X is the value of the variable being
processed in the regime object associated to the vector component.
The same must be done to all other 4
political blocks replacing SCPW_MPB for SCPW_RPB (social class'
political power in the religious political block), SCPW_PPB, etc.
VII. Creating the Preliminary Govt Profile.
Each variable of the Preliminary Govt
Profile is created as a weighted sum of the variables in the 5 Political
Blocks Profiles, where the weights are the political powers of each
political block in the Real Political Structure divided by 1-RULERPW,
where RULERPW is the ruler's political power in the Real Political
Structure.
VIII. Creating the Future Govt Profile.
Directly Negotiated Policies and Regime Policies
Each variable in the Future Govt
Profile is determined as:
S + SIGN(R-S)*MIN(ABS(R-S),M)
where:
M=exp(-3+3*RULERPW)
RULERPW is the ruler's political
power in the Real Political Structure
S is the variable's value in the
Preliminary Govt Profile.
R is the variable's value in the
Ruler's Govt Profile.
Political Powers of Political Blocks
The political power of political block
X in the Future Govt Profile is determined as:
S+PS+NS
where:
PS=(MX/Abs(V1))*Min(Abs(R-S),M)*Sign(1+Sign(R-S))
NS=(MX/Abs(V2))*Min(Abs(R-S),M)*Sign(-1+Sign(R-S))
MX=Max(Abs(V1),Abs(V2))
V1 is the sum of the expressions
Min(Abs(R-S),M)*Sign(1+Sign(R-S)) over all Political Blocks.
V2 is the sum of the expressions
Min(Abs(R-S),M)*Sign(-1+Sign(R-S)) over all Political Blocks.
S is the political power of
political block X in the Preliminary Govt Profile.
R is the political power of
political block X in the Ruler's Govt Profile.
M is as defined above.
IX. Creating the Current Govt Profile.
Any variable X in the Current Govt
Profile is computed as:
C+Sign(C-N)*Min(Abs(C-N) , 0.01*LGT*(0.4+0.6*RULERPW))
where:
C is the current value of variable X
in the Current Govt Profile.
N is the value of variable X in the
Future Govt Profile.
LGT is the length of the game turn in
months.
RULERPW is the ruler's polpower
in the Real Political Structure.
X. Determining the demographic share for a social class.
NOT SOLVED YET
XI. Determining Knowledge and Development levels for a Regime.
The Development Level is simply a
pointer to the tech level value of the application (tech model) that
represents the regime.
KL=CKL+Sign(1-D-CKL)*Min(Abs(1-D-CKL)
, LGT/720)
where:
D is the Govt-Regime Distance.
LGT is the length of the game turn in
months.
CKL is the current value of KL.
XII. Determining the Govt-Regime Distance and the Ruler-Regime Distance
for a Regime.
Both calculations are made to know how
similar are the regime variables (political structure and regime policies)
and the Current Govt Profile and Ruler Govt Profile, respectively.
For each of the 8 variables involved
you have to compute Abs(R-Q), where R is the regime value and Q the value
of the CGP or the RGP (depending on what distance you're computing). Then
sum all those values and divide the result by 8.
XIII. Determining Social Class' Historical PCI
HPCI=(1-LGT/1200)*CHPCI+(LGT/1200)*PCI
where CHPCI is the current HPCI, PCI
is social class' Per Capita Income and LGT is the Length of the
Game Turn in months.
XIV. Updating Empire's Stability
ES=Min(1,CES+LGT/1200)
where CES is the current Empire's
Stability value and LGT is the Length of the Game Turn in months.
XV. Determining Optimum Institutional Infrastructure (OII) needed in a
province.
OII is a variable I forgot to include
in the LOCALGOVT class in the Coding the Society Model Structure document.
OII=P*(0.01+0.2*SP+0.15*(1-PP))
where:
SP is the value of Social Policies
in the Current Govt Profile.
PP is the value of Private Property
in the Current Govt Profile.
P is total province population.
XVI. Determining the Number of Administrators Needed (NAN) in a province.
NAN is a variable I forgot to include
in the LOCALGOVT class in the Coding the Society Model Structure document.
NAN=0.5*(1-0.5*MT)*OII
where:
MT is the tech level of a "Management
Tech" in the tech model.
OII is Optimum Institutional
Infrastructure (defined in section XV in this document).
XVII. Determining Administration Effectiveness Level (AEL) for a province.
AEL=(1-0.5*Rexp(-10,20,PAL)*PI)*(0.4+0.6*Rexp(2,-15,PAL))*Min(1,ININ/OII)
where:
PAL is Local Govt's Autonomy Level.
PI is the value of Province
Isolation of the province.
ININ is province's Institutional
Infrastructure.
OII is Optimum Institutional
Infrastructure (defined in section XV in this document).
XVIII. Determining the Maximum Number of Feudal Units (MNFU) in a
province.
I'm assuming local economy
buys/produces feudal units pretty much the same way the ruler buys his
military units. Each game turn a part of the local funds are allocated in
buying feudal units and when the "price" is met, a new unit appear. But
this part of the modeling is not solved yet and needs interrelations
defined with econ and military models, so don't believe me much. What the
govt model does have to determine, though, is the maximum number of feudal
units allowed to represent warlords' existence and power. In this way, if
MNFU is greater than the current number of feudal units, then the local
economy has to produce more and if the contrary occurs, then feudal units
must be eliminated.
MNFU=10*Rexp(14,-32,RULERPW+MPW)*Rexp(20,-28,PAL)
(rounded to the closest integer)
where:
RULERPW is ruler's political power
in the Real Political Structure.
MPW is Military Political Block's
political power in the Real Political Structure.
PAL is Local Govt's Autonomy Level.
XIX. Determining Govt's Official Religion.
If Rexp(5,-35,RD) rounded to the
closest integer is equal to 0, then the govt has no official religion. If
it's 1, it has one. The official religion in that case is the Dominant
Religion.
RD is the value of Religious
Discrimination in the Current Govt Profile.
2. Default Social Classes and their Social Roles
Values.
|
Social Class Name |
Aristocracy |
Workers |
Slaves |
Middle Class |
|
Human social role |
1.00 |
1.00 |
0.00 |
1.00 |
|
Labor social role |
0.00 |
1.00 |
1.00 |
0.40 |
|
Kapital
social role |
1.00 |
0.00 |
0.00 |
0.05 |
|
Ethic social role |
0.00 |
0.00 |
0.00 |
0.00 |
|
Warfare social role |
0.00 |
0.00 |
0.00 |
0.00 |
|
Administrative social role |
0.00 |
0.00 |
0.00 |
0.00 |
|
Social Class Name |
Military Officials |
Nobles |
Civil Servants |
Clergy |
|
Human social role |
1.00 |
1.00 |
1.00 |
1.00 |
|
Labor social role |
0.00 |
0.00 |
0.00 |
0.00 |
|
Kapital
social role |
0.00 |
1.00 |
0.00 |
0.00 |
|
Ethic social role |
0.00 |
0.05 |
0.00 |
1.00 |
|
Warfare social role |
1.00 |
0.80 |
0.00 |
0.00 |
|
Administrative social role |
0.00 |
0.80 |
1.00 |
0.00 |
3. Default Regimes and their values.
|
Regime Name |
Warlord Despotism |
Oligarchy |
Divine Monarchy |
Monarchy |
Imperial Monarchy |
|
Ruler power |
80% |
40% |
50% |
70% |
65% |
|
Military Block power |
15% |
0% |
5% |
10% |
10% |
|
Religious Block Power |
5% |
5% |
35% |
10% |
5% |
|
Capitalists' Block Power |
0% |
50% |
5% |
5% |
5% |
|
People's Power |
0% |
0% |
0% |
0% |
0% |
|
Bureaucratic Block Power |
0% |
5% |
5% |
5% |
15% |
|
Private Property |
80% |
95% |
40% |
60% |
60% |
|
Social Policies |
0.00 |
0.05 |
0.05 |
0.05 |
0.10 |
|
Base Attractiveness |
10 |
10 |
10 |
20 |
25 |
|
Regime Name |
Militaristic Divine Monarchy |
Constitutional Monarchy |
Republic |
Capitalist Democracy |
Socialism |
|
Ruler power |
40% |
40% |
35% |
20% |
30% |
|
Military Block power |
25% |
5% |
5% |
0% |
0% |
|
Religious Block Power |
25% |
5% |
5% |
0% |
0% |
|
Capitalists' Block Power |
5% |
30% |
30% |
0% |
0% |
|
People's Power |
0% |
10% |
15% |
70% |
45% |
|
Bureaucratic Block Power |
5% |
10% |
10% |
10% |
25% |
|
Private Property |
40% |
70% |
70% |
100% |
40% |
|
Social Policies |
0.05 |
0.20 |
0.20 |
0.30 |
0.70 |
|
Base Attractiveness |
10 |
30 |
20 |
50 |
50 |
|
Regime Name |
Communism |
Social Democracy |
Communist Dictatorship |
Capitalist Dictatorship |
Fundamentalism |
|
Ruler power |
30% |
20% |
60% |
60% |
55% |
| |