Special Lecture

Fairness and Naturalness

Nakcho Choi

October 30, 2024

강의 노트

Are natural and fair compatible?

Survey

경제학과 이공학의 연결

행위자 기반 모델

실습 1

Python+AI

[Simulation 조건]

1)  10 by 10 바둑판에 bead 1000개를 랜덤하게 또는 균일하게 분포시킨다.

2)  한칸씩 옮겨가며 bead 1개를 다른 곳으로 옮긴다. (인접한 곳 또는 전체 중 한 곳)

3)  이 작업을 1000번 반복한다.

요약

무엇이 불균등 분포를 만들었을까?


  • 초기 분배 조건
  • 교환 횟수
  • 총 구슬의 수
  • 교환 법칙
  • 그냥 자연스럽게 됨

야노 가즈오

야노 가즈오

부자 패널티의 의미는?


  • 재분배를 통한 지속 가능한 상태 유지
  • 구슬이 없는자들의 경제 공동체 참여 기회
  • 자연스러움과 공정함의 의미는?
  • 누진세의 역할은?
  • 자본주의 경제는 지속가능할까?

소득 불평등 지수 (Gini계수)

[1] "완전평등 지니계수:  0"
[1] "높은 불평등 지니계수:  0.63"
[1] "현실 지니계수:  0.33"

실습 2

실습 3

클로드 챗GPT

netlogo를 통해 시뮬레이션을 하려고 한다. 
아래 아래 코드는 다음과 같다.  새로운 기능을 넣어 코드를 수정하라. 

모델에 대한 SETUP은 500명의 에이전트를 생성한 다음 각 에이전트에게 100달러를 제공합니다. 매 틱마다 가능하다면 다른 에이전트에게 1달러를 줍니다. 돈이 없으면 아무것도 하지 않습니다. 각 에이전트는 또한 자신의 부와 동일한 x 좌표로 이동합니다. 

여기에 옵션을 추가하자

옵션1:처음에 500명의 에이젼트에게 최소 1달라, 최대 100달라까지 정규 분포로 제공하고 매틱마다 다른 에이전트에게 1달러를 준다. 돈이 없으면 아무것도 하지 않는다. 에이전트는 자신의 부와 동일한 x 좌표롤 이동한다. 만약 돈이 없으면 x좌표는 0이다. 
옵션2: 처음에 500명에게 100달라러를 균등하게 제공한다. 매틱마다 가능하면 다른 에이젼트에게 1달러를 준다. 그런데 만약 내가 가장 많은 달러를 가지고 있다면 나는 2달러를 다른 에이전트에게 준다. 돈이 없으면 아무것도 하지 않는다. 각 에이전트는 자신의 부와 동일한 x 좌표로 이동한다.만약 돈이 없으면 x좌표는 0이다. 

AI를 통해 NetLogo 코드 수정


NetLogo

turtles-own [ wealth ]

globals [
  option
  max-wealth
]

to setup
  clear-all
  set option user-choice
  
  create-turtles 500 [
    set shape "circle"
    set color green
    set size 2
    
    if option = 1 [
      set wealth random-normal 50 25
      set wealth max (list 0 (min (list wealth 100)))
    ]
    if option = 2 [
      set wealth 100
    ]
    
    setxy (min (list wealth max-pxcor)) random-ycor
  ]
  
  set max-wealth max [wealth] of turtles
  reset-ticks
end

to go
  if option = 1 [
    ask turtles with [ wealth > 0 ] [ transact-option-1 ]
  ]
  if option = 2 [
    set max-wealth max [wealth] of turtles
    ask turtles with [ wealth > 0 ] [ transact-option-2 ]
  ]
  
  ask turtles [ 
    set wealth max (list 0 wealth)  ; Ensure wealth doesn't go below 0
    set xcor min (list wealth max-pxcor)
  ]
  
  tick
end

to transact-option-1
  set wealth wealth - 1
  ask one-of other turtles [ set wealth wealth + 1 ]
end

to transact-option-2
  ifelse wealth = max-wealth [
    set wealth wealth - 2
    ask n-of 2 other turtles [ set wealth wealth + 1 ]
  ] [
    set wealth wealth - 1
    ask one-of other turtles [ set wealth wealth + 1 ]
  ]
end

to-report user-choice
  let choice user-input "Choose option (1 or 2): "
  while [not member? choice ["1" "2"]] [
    set choice user-input "Invalid input. Choose option (1 or 2): "
  ]
  report read-from-string choice
end

to-report top-10-pct-wealth
  report sum [ wealth ] of max-n-of (count turtles * 0.10) turtles [ wealth ]
end

to-report bottom-50-pct-wealth
  report sum [ wealth ] of min-n-of (count turtles * 0.50) turtles [ wealth ]
end

노벨경제학상 (Segregation)

토머스 셸링

토머스 셸링

실습4

도시의 경제적 불평등 시뮬레이션

  • simulation 개요
이 NetLogo 모델은 도시의 경제적 불평등을 시뮬레이션하는 것으로, 부유층과 빈곤층의 거주 패턴과 직업 위치를 모델링합니다. 주요 특징은 다음과 같습니다:

1. 부유층(rich)과 빈곤층(poor)이 있으며, 일자리(jobs)도 존재합니다.
2. 각 패치(지역)는 quality(질)와 price(가격) 속성을 가집니다.
3. 사람들은 자신의 효용(utility)을 최대화하는 위치를 선택합니다.
4. 부유층은 quality를, 빈곤층은 낮은 price를 선호합니다.
5. 사람들이 이주하면 주변 지역의 quality와 price에 영향을 줍니다.
6. 직업은 가격이 높은 지역에 생성되는 경향이 있습니다.

View 설명

Price(땅값, 임대비)

Price(땅값, 임대비)

quality: 지역의 질 (편의시설,복지시설, 의료혜택)

quality: 지역의 질 (편의시설,복지시설, 의료혜택)

dist: 직업 위치로부터의 거리 (회사,건물,일터로부터 거리)

dist: 직업 위치로부터의 거리 (회사,건물,일터로부터 거리)

rich-utility: 부유층에게 유용한 지역 (편의시설 중요)

rich-utility: 부유층에게 유용한 지역 (편의시설 중요)

poor-utility: 가난한 사람들에게 유용한 지역 (가격이 낮을 수록 선호)

poor-utility: 가난한 사람들에게 유용한 지역 (가격이 낮을 수록 선호)

시뮬레이션 conditions

-   조정 변수:

number-of-tests: 사람들이 거주하고 싶은 위치 선택 시 고려하는 지역 수

residents-per-job: 새 직업이 생성되기 위한 필요한 거주자 수

max-jobs: 최대 직업 수

poor-price-priority: 빈곤층의 가격 중요도

rich-quality-priority: 부유층의 질 중요도

poor-per-step: 매 단계 추가되는 빈곤층 수

rich-per-step: 매 단계 추가되는 부유층 수

death-rate: 매 단계 사라지는 사람들 수

-   Travel Distance 그래프:

부유층과 빈곤층이 가장 가까운 직업 위치까지 이동해야 하는 평균 거리를 시간에 따라 보여줍니다. (부자들은 직장과 좀 더 가까운 곳에 살고, 가난한 사람들은 좀 더 먼 곳에 산다. )

-   2D 맵:

현재 선택된 뷰 모드에 따라 지역의 특성을 색상으로 표시합니다.

빨간 점: 직장 위치 파란 점: 빈곤층 거주지 분홍 점: 부유층 거주지

of jobs: 현재 직장의 수

population: 총 인구 수

poor pop: 빈곤층 인구 수

rich pop: 부유층 인구 수

도시의 경제적 불평등과 거주 패턴을 모델링 : NetLogo

실습 5


여기에서 다운로드 NetLogo Web


학벌이나.. 인종집단에 대한 평판이나.. 이런게. 노동시장에 미치는 영향을 주제로 netlogo 시뮬레이션 예제 코드와 interface 를 어떻게 만들어야 하는지 자세히 말해줘. 


네, 학벌이나 인종 집단에 대한 평판이 노동시장에 미치는 영향을 시뮬레이션하는 NetLogo 코드 예제를 만들어 드리겠습니다. 이 모델은 고용주의 편견, 노동자의 기술 수준, 그리고 시간에 따른 고용 패턴의 변화를 시뮬레이션합니다.


시뮬레이션 의미
이 코드는 다음과 같은 특징을 가지고 있습니다:

1.  두 그룹의 노동자(A와 B)가 있으며, 각자 다른 색상으로 표시됩니다.
2.  각 노동자는 0에서 1 사이의 임의의 기술 수준을 가집니다.
3.  고용주들은 0에서 1 사이의 편견 수준을 가지며, 이는 B 그룹에 대한 차별 정도를 나타냅니다.
4.  고용 과정에서 고용주는 노동자의 기술 수준에서 편견에 따른 페널티를 뺀 값이 가장 높은 노동자를 선택합니다.
5.  시뮬레이션이 진행됨에 따라 각 그룹의 고용률이 계산되어 표시됩니다.

이 모델을 실행하면, 시간이 지남에 따라 편견이 고용 패턴에 어떤 영향을 미치는지 관찰할 수 있습니다. 고용주의 평균 편견 수준, 각 그룹의 평균 기술 수준 등을 조정하는 슬라이더를 추가하여 다양한 시나리오를 테스트할 수 있습니다.

이 시뮬레이션을 통해 학생들은 노동 시장에서의 차별과 그 영향을 시각적으로 이해할 수 있으며, 이는 김영철 교수의 연구 주제와도 밀접하게 연관됩니다.

결과

실습 6


논문 다운로드


어떻게 논문을 읽고 공부할 것인가?


시뮬레이션 v.1 : python code


시뮬레이션 v.2 : python code

김영철 교수님 논문 수식 직접 입력해서 만든 시뮬레이션 :

복잡계 (경제물리, 사회물리학)

문송? 판 뒤집혔다!

백만명 가입자 달성 날짜


  • 문과, 이과 , 예체능 분리의 시대
  • 전문적인 지식 훈련이 중요한 시대
  • 질서, 경험이 중요한 시대

  • AI를 수단으로 경계가 허물어짐
  • 도전해 보는 것이 더 중요해진 세상

예제

어느날 A군은 한 강연회에서 페어트레이딩 관련 내용을 듣습니다. 

웹페이지로 한번 구현해볼까 하고 생각해봅니다.
유투브로 python streamlit 강의 기초를 들어봅니다. 

코딩 프로그램을 설치합니다. 

- Python, VS code
- Cursor

AI에게 우선 내용을 설명하고
KOSPI와 S&P 500 지수를 이용하여 상관관계 보는 
**파이썬 코드** 또는 **Rshiny 코드** 를 만들어달라고 함
** 그것을 streamlit 또는 shinyapps 에 게시할 수 있는 방법을 요청
버그 수정 ~~

AI에게 두 지수를 이용하여 Pair trading 하는 코드 작성 요청

버그 수정 ~~

아이디어 구현까지 걸린 시간 2일 ~~

앞으로 어떻게 공부할 것인가


Claude와 대화

여러분은 어떻게 생각하나요?

KDI

KDI

아제모을루 교수

아제모을루 교수

About

Nakcho Choi

Those who recognize the value of their data will experience freedom.

코로나 바이러스 전염병 모델링


  • 워싱턴포스트
  • 왜 기하급수적으로 퍼지나?
  • 어떻게 전염을 줄일 수 있나?
    1. 물리적 격리는 효과있는가? 가능한가?
    2. 사회적 거리두기 (이동도를 낮춤)

Example

추가 실습 6


경제학과 3, 4학년 학생들이 수요, 공급, 환율 등 응용미시이론 교과내용에 맞는 더 쉬운 예제를 만들어줘

이 모델을 위한 인터페이스 설정:

  1. ‘setup’ 버튼 추가
  2. ‘go’ 버튼 추가 (forever 체크박스 선택)
  3. 다음 모니터들 추가:
    • ‘exchange-rate’
    • ‘domestic-price’
    • ‘foreign-price’
  4. 다음 그래프들 추가:
    • “Price and Exchange Rate”
      • 3개의 펜 추가: “domestic-price”, “foreign-price”, “exchange-rate”
    • “Supply and Demand”
      • 2개의 펜 추가: “total-demand”, “total-supply”

      • Plot update commands:

        plot sum [demand] of consumers
        plot sum [supply] of producers

이 모델의 주요 특징과 경제 개념:

  1. 수요와 공급: 소비자의 수요와 생산자의 공급이 가격에 따라 변동합니다. 이는 기본적인 수요-공급 법칙을 보여줍니다.

  2. 가격 메커니즘: 총수요와 총공급의 차이에 따라 국내 가격이 조정됩니다. 이는 시장 청산 과정을 나타냅니다.

  3. 환율: 국내 가격과 외국 가격의 상대적 변화에 따라 환율이 조정됩니다. 이는 구매력 평가설(PPP)의 개념을 간단히 구현한 것입니다.

  4. 국제 무역: 환율 변동이 수요와 공급에 영향을 미치는 과정을 통해 국제 무역의 기본 메커니즘을 보여줍니다.

  5. 외부 충격: 외국 가격과 환율에 랜덤 요소를 추가하여 외부 경제 충격을 시뮬레이션합니다.

이 모델을 통해 학생들은 다음과 같은 응용미시이론의 핵심 개념들을 실제로 관찰하고 이해할 수 있습니다:

  • 수요와 공급의 상호작용
  • 가격 결정 메커니즘
  • 환율의 결정 요인
  • 국제 무역의 기본 원리
  • 경제 변수들 간의 상호의존성

학생들은 이 모델을 실행하면서 다양한 시나리오(예: 수요 충격, 공급 충격, 환율 충격 등)를 만들어 그 결과를 관찰하고 분석할 수 있습니다.