Liberia Aggregate & Sector-First Financial Model

No preview image

1 collaborator

Default-person Preston Varkpeh (Author)

Tags

(This model has yet to be categorized with any tags)
Visible to everyone | Changeable by the author
Model was written in NetLogo 7.0.3 • Viewed 9 times • Downloaded 0 times • Run 0 times
Download the 'Liberia Aggregate & Sector-First Financial  Model' modelDownload this modelEmbed this model

Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)


WHAT IS IT?

This model simulates how Liberia’s economic sectors contribute to national output under two policy approaches: sector-first and centralized coordination. Each sector is represented as an agent with its own allocation, effectiveness rate, leadership effect, and final output. The model shows whether the economy performs better when sectors act independently or when their efforts are coordinated toward a (centralized) national strategy.

HOW IT WORKS

Each sector is an agent. Every sector receives a budget allocation (deonoted as Ai) and an effectiveness value shown in RPF as (Ri). The model first calculates each sector’s basic output using:

AiRi = Ai * Ri and then compares the sector-first approach with the aggregate-first approach to determine the best strategic approach to policy implimentation in Liberia.

Under the sector-first approach, each sector contributes only its individual output. Under the centralized approach, the model adds leadership and coordination effects through accounting for the combined (aggregate) leadership-factor (denoted in RPF as k) and how the existing policy environment (denoted in RPF as y or gamma) contributes to total output. The model then compares total sector output with total centralized output to show the coordination gain or loss.

HOW TO USE IT

Click "setup" on the "Interface" tab to clear the world (the square box where the turtles exist - the environment), create the sector agents, assign sector data, and reset the model.

Click the "to go" button on the "Interface" tab to run the model continuously. The model updates sector output, sector size, and color based on the selected policy approach.

Use the policy-mode chooser to switch between:

"sector-first" "centralized"

Click compare-policies to print the sector-first total, centralized total, and coordination gain in the Command Center.

Click show-best-worst-sectors to display the four strongest and four weakest sectors based on current output.

THINGS TO NOTICE

Notice that the sector-first approach produces lower aggregate output because each sector acts alone. This represents fragmentation, weak coordination, and missed national-level gains.

Notice that the centralized approach produces higher output because coordination, leadership, and shared strategic alignment improve the economy’s total performance.

Also notice which sectors become visually larger. Larger sector agents represent stronger output contributions. Smaller agents represent weaker performance under the current allocation and effectiveness assumptions.

Please feel free to communicate your observations about what you noticed and how I can improve the model fit (tailored to the specific realities in FY26 budet environment).

THINGS TO TRY

Try switching between sector-first and centralized policy modes and observe the change in total output.

Try pressing compare-policies after each run to see whether coordination gain increases or decreases.

Try changing leadership-factor from: 1.16 to a higher or lower value and observe how much leadership changes national output.

Try adjusting a sector’s Ri value to test how improved sector effectiveness affects the whole economy.

Try increasing weaker sectors such as Agriculture, Social Development Services, or Industry & Commerce to see whether targeted improvements produce better national dividends.

EXTENDING THE MODEL

In future versions, I will do my best to add buttons (choosers) for leadership-factor, gamma-i (environmental impact), and sector effectiveness (Ri) so users can test how leadership alignment changes national output over time. The model can also be extended to include shocks or unexpected events such as budget cuts, corruption losses, policy delays, external donor support, or sector-level reforms.

Another extension I anticipate adding is the interaction effects (shown as q in RPF) which would allow sectors to interact with one another instead of acting only as individual agents. This would make it possible to test spillover effects, where improvement in one sector, such as infrastructure, increases output in other sectors such as agriculture, health, education, and commerce.

NETLOGO FEATURES

This model uses turtles to represent sectors of the economy. Each sector stores its own allocation, effectiveness rate, leadership effect, and final output using sectors-own variables.

The model also uses scale-color to visually show performance differences among sectors. Larger and brighter sector agents represent stronger output contributions, while smaller or weaker-colored agents represent lower-performing sectors.

The model uses procedures such as setup, go, calculate-outputs, compare-policies, and show-best-worst-sectors to organize the simulation logic.

RELATED MODELS

Related NetLogo models include economic growth models, resource allocation models, systems dynamics models, and agent-based models that examine coordination, competition, and emergence.

Conceptually, this model is also related to organizational behavior models, policy coordination models, and complex adaptive systems models where individual agents produce different outcomes depending on whether they act independently or under a coordinated system.

CREDITS AND REFERENCES

This model is based on the user-developed Relative Positioning Framework (RPF), part of an ongoing study titled:

Leadership Misalignment Across Time: Why Leadership Must Be Tailored to Meet the Unique Needs of Today’s Organizations

The model applies RPF ideas to Liberia’s economic sectors to examine whether a sector-first or centralized policy approach produces stronger national output. It is intended for research, teaching, and simulation-based exploration of leadership alignment, resource allocation, and national development outcomes.

Comments and Questions

Please start the discussion about this model! (You'll first need to log in.)

Click to Run Model

 ;; FINAL NOTES ON CODE DESCRIPION OF THE RPF MODEL (USING NETLOGO)
;; From an RPF perspective, the current ranking identifies which sectors controbute most to aggregate national output under existing assumptions 
;; It can serve as the basis of experimenting with reallocation scenarios to test if moving resources from lower-performing sectors to highper performing sectors will improve overall output.  
;; We can test the impact on total output if we were to redistribute resources from other sectors (eg. PADM).
;; Overall, Liberia is bettter off following an agggregate long-term strategy that promotes cordination/synergy between sectors based on program-based budgeting. 

;; GAME OF LIFE RULES - RPF APPLICATION

;; Rule 1: Survival Rule
;; A sector survives when output is above the minimum threshold

;; Rule 2: Growth Rule
;; A sector grows when effectiveness and leadership alignment are high

;; Rule 3: Decline Rule
;; A sector weakens when resources exceed performance

globals [
  total-budget
  total-sector-output
  total-centralized-output
  sector-first-total
  coordination-gain
  leadership-factor
  economy-message
  minimum-output-threshold
]

breed [sectors sector]

sectors-own [
  sector-name
  Ai
  Ri
  AiRi
  gamma-i
  leadership-output
  final-output
  contribution-share
  adopted?
  policy-state
]
;; each sector is affected by aggregate or sector-first policy approaches and leadership

to apply-rpf-rules

  ask sectors [

    ; Survival Rule
    if final-output < minimum-output-threshold [
      set color red
    ]

    ; Growth Rule
    if Ri > 0.03 [
      set color turquoise
    ]

  ]
end 

to setup
  clear-all

  set leadership-factor 1.20
  set policy-mode "centralized"
  set minimum-output-threshold 1000000

  create-sectors 11 [
    set shape "house"
    set size 3
    set color brown
    setxy random-xcor random-ycor
    set policy-state "sector-first"
    set color violet 
  ]
    
 ;; create a network of agents
 ask turtles [ 
      create-link-with one-of other turtles
  ]
ask one-of sectors [
  set policy-state "centralized"
  set color green
]
 
  assign-sector-data
  calculate-outputs
  apply-rpf-rules
  layout-circle sectors 10

  reset-ticks
end 

to assign-sector-data
  ask sectors [
    if who = 0 [
      set sector-name "Public Administration"
      set Ai 465830677
      set Ri 0.12535
      set gamma-i 12357
    ]

    if who = 1 [
      set sector-name "Municipal Government"
      set Ai 66895865
      set Ri 0.018
      set gamma-i 1774
    ]

    if who = 2 [
      set sector-name "Transparency & Accountability"
      set Ai 34415342
      set Ri 0.00926
      set gamma-i 913
    ]

    if who = 3 [
      set sector-name "Security & Rule of Law"
      set Ai 151830763
      set Ri 0.04086
      set gamma-i 4027
    ]

    if who = 4 [
      set sector-name "Health"
      set Ai 101711262
      set Ri 0.02737
      set gamma-i 2698
    ]

    if who = 5 [
      set sector-name "Social Dev. Services"
      set Ai 16124238
      set Ri 0.00434
      set gamma-i 428
    ]

    if who = 6 [
      set sector-name "Education"
      set Ai 132976385
      set Ri 0.03578
      set gamma-i 3527
    ]

    if who = 7 [
      set sector-name "Energy & Environment"
      set Ai 78187195
      set Ri 0.02104
      set gamma-i 2074
    ]

    if who = 8 [
      set sector-name "Agriculture"
      set Ai 13663843
      set Ri 0.00368
      set gamma-i 362
    ]

    if who = 9 [
      set sector-name "Infrastructure & Basic Services"
      set Ai 133214386
      set Ri 0.03585
      set gamma-i 3534
    ]

    if who = 10 [
      set sector-name "Industry & Commerce"
      set Ai 16235271
      set Ri 0.00437
      set gamma-i 431
    ]
  ]
end 

to calculate-outputs
  ask sectors [
    set AiRi Ai * Ri
    set leadership-output leadership-factor * AiRi
  ]

  set total-budget sum [Ai] of sectors
  set sector-first-total sum [AiRi] of sectors

  ask sectors [
    set final-output leadership-output + gamma-i * sqrt Ai
  ]

  set total-centralized-output sum [final-output] of sectors
  set coordination-gain total-centralized-output - sector-first-total

  if policy-mode = "sector-first" [
    ask sectors [
      set final-output AiRi
      set color violet 
      set size 1 + (AiRi / 10000000)
      set label sector-name
    ]

    set total-sector-output sector-first-total
    set economy-message "Sector-first policy weakens the economy: sectors act alone and lose national value."
  ]

  if policy-mode = "centralized" [
    ask sectors [
      set final-output leadership-output + gamma-i * sqrt Ai
      set contribution-share final-output / total-centralized-output
      set color scale-color green contribution-share 0 0.50
      set size 1 + (final-output / 50000000)
      set label sector-name
    ]

    set total-sector-output total-centralized-output
    set economy-message "Centralized policy wins: coordination increases national output and captures aggregate gains."
  ]
end 

to go
  calculate-outputs
  update-policy-adoption
  apply-rpf-rules
  layout-circle sectors 10
  tick
end 

to compare-policies
  calculate-outputs

  print word "Sector-first total output: $" precision sector-first-total 2
  print word "Centralized total output: $" precision total-centralized-output 2
  print word "Coordination gain: $" precision coordination-gain 2

  if total-centralized-output > sector-first-total [
    print "RESULT: Sector-first policy is costly because it produces less national output."
    print "RESULT: Centralized policy wins because coordination creates higher aggregate economic value."
  ]
end 

to show-best-worst-sectors
  calculate-outputs

  let ranked-sectors sort-by [[a b] -> [final-output] of a > [final-output] of b] sectors

  let best-4 sublist ranked-sectors 0 4
  let worst-4 sublist ranked-sectors ((length ranked-sectors) - 4) (length ranked-sectors)

  print "----- BEST 4 PERFORMING SECTORS -----"
  foreach best-4 [ s ->
    print (word [sector-name] of s
      " | Output: $" precision ([final-output] of s) 2
      " | Allocation: $" precision ([Ai] of s) 2
      " | R: " precision ([Ri] of s) 5)
  ]

  print "----- WORST 4 PERFORMING SECTORS -----"
  foreach worst-4 [ s ->
    print (word [sector-name] of s
      " | Output: $" precision ([final-output] of s) 2
      " | Allocation: $" precision ([Ai] of s) 2
      " | R: " precision ([Ri] of s) 5)
  ]
end 

;; This procedure will determine whether or not sectors adopted a sector-first or centralized approach to policy in Liberia

to adopted
  ;; adapt based on broadcast influence
  if random-float 1.0 < broadcast-influence [
    set adopted? true
    set color white
  ]
  
  ;; adapt based on social influence of a (social) network
  let neighbors-adopted link-neighbors with [adopted?]
  let total-neighbors link-neighbors
    if random-float 1.0 < ( social-influence * count neighbors-adopted / count total-neighbors) [
    set adopted? true
    set color blue
  ]
end 
  ;; add an adoption logic based on policy approach

to update-policy-adoption
  ask sectors with [policy-state = "sector-first"] [
    if random-float 1 < 0.10 [
      set policy-state "centralized"
      set color green
    ]
  ]
end 

;; This procedure enables us to create an reset innovation button in the interface that we can run on the same network multiple time to help us determine the consistency of actions in a node

to reset-innovation

  ask sectors [
    set adopted? false
    set color magenta
  ]

  ;; choose one initial innovator
  ask one-of sectors [
    set adopted? true
    set color yellow
  ]

  reset-ticks
end 

;; This procedure turn the links on or off until needed 

to hide-links
  ask links [ hide-link ]
end 

to show-links
  ask links [ show-link ]
end 

to show-color-legend
  print "========================================"
  print "RPF MODEL COLOR LEGEND"
  print "========================================"
  print "VIOLET: Sector-first policy sector"
  print "GREEN: Centralized policy sector"
  print "SKY: Centralized-policy adopter"
  print "BLUE: Sector influenced through social-network adoption"
  print "TURQUOISE: High-effectiveness sector"
  print "RED: Sector below minimum output threshold"
  print "YELLOW: Initial centralized-policy innovator"
  print "========================================"
  print "COLOR PRIORITIES"
  print "RED: Highest priority - weak / below output threshold"
  print "TURQUOISE: High effectiveness and surviving sector"
  print "SKY: Adopted centralized policy"
  print "BLUE: Social-network influenced adopter"
  print "GREEN: Centralized policy"
  print "VIOLET: Sector-first policy"
  print "YELLOW: Initial centralized-policy innovator"
  print "========================================"
end 

There is only one version of this model, created 6 days ago by Preston Varkpeh.

Attached files

No files

This model does not have any ancestors.

This model does not have any descendants.