Title: (M????N??)???
1?????????????????
2(M????N??)???
- ?????????
- ????U()?????????????????(????)??????0???????
- ?????????
- ?????????Q??????????????????0???????
3?????
- ?????????????????0????????????
- ??0??(??????????)????????????0????
- Walras??????????????????
4???????
- ??????????(??)j?????????Qj?????Lj?Kj?????????????(
??????????) - ??0??(?????)????????????????????
- ????????????????????
- ???????????????????
- ??????????????????????0????????????????Walras?????
?????0????
5?????????
- ???????????????????????????????????????????(??????
??)? - ??????????????????????????????????????????????????
???(??????)??????? - ?????????????Scarf(1967,1973) ????????????????????
?Merrill(1972)?Van der Laan Talman(1979)????????
- ?????????????????????????????(Hansen-Kuhn-McKinnon
)?????? - ????2????K?L???????(r?w)??????????(rw1)?3???????
???????0???????????????????????????
6??(??)
- ??(m???? simplex)???????????bj
j1,,m1??????????????SX?ZmX?ajbj,
?aj1,aj?0. - ??(????)???bj???????????????
- ??(???)m-1????S????m????S?????????
73????????????
- ??
- ??b1?n1?????????????
- ????
- ???????n1?????????
- ???????f?1??n????????????
- ???ej???????????
- ???????
- ????????????
- ???????bj??????????????????????bn1?b1??????
- Lemke?Howson?????????????????????????
8Scarf??????
- ???D???3????????????????
- ?????????????()??????????????
- ??????????????????????4???????????????????????????
5???? - ????????????????????????3?????????????????????????
?????????????????????????????????????????????? - ??????????????????????????????????????????????????
????????????????D?????????????????????2????
- () ???????
- ????????????????0???????? i (??????)?????
- ????????????????????????????j(??)?????
9?????????????
- D5?1??????1rw????
- ???????????????????????????
- ????????????????????????
- ????(1/5,4/5) ??????????????????????????((0,1)????
???????) - ?????????????????????????????????????????????????
w
w
?l
k
?k
1
k
k
l
l
l
r
0
1
r
0
1
10Prolog?????????
- ??Prolog????Shoven and Whalley??????????2?2???????
???????????????????????????? - ????????????Scarf?????????????????????????
11ShovenWhalley?22????
- Prolog?????geq00.pl???????????????????????(http//
www.us.kanto-gakuen.ac.jp/indo) - ??????????????????????????????????????????????????
??
??????(Shoven Whalley??) price_of_product(firm(
m),1.399). price_of_product(firm(s),1.093). price_
of_capital(1.373). price_of_labor(1.000).
consumer(r). rich consumer(p). poor firm(m).
maker firm(s). sales market_share(firm(m),consum
er(r),0.5). market_share(firm(s),consumer(r),0.5).
market_share(firm(m),consumer(p),0.3). market_sha
re(firm(s),consumer(p),0.7). demand_substitution_e
lasticity(consumer(r),1.5). demand_substitution_e
lasticity(consumer(p),0.75). endowment(consumer(r)
,capital,25). endowment(consumer(p),capital,0). en
dowment(consumer(r),labor,0). endowment(consumer(p
),labor,60). scale_of_business(firm(m),1.5). scale
_of_business(firm(s),2.0). inputs_weight(firm(m),0
.6). inputs_weight(firm(s),0.7). supply_substituti
on_elasticity(firm(m),2.0). supply_substitution_el
asticity(firm(s),0.5).
?- production(A,K,LB,C). A firm(m) K
6.21451 L 26.3591 B 1.5, 0.6, 2.0, 1.373,
1.0 C 24.9405, 24.9405, 5.04871e-029, true
A firm(s) K 18.7894 L 33.6307 B 2.0,
0.7, 0.5, 1.373, 1.0 C 54.3762, 54.3762,
5.04871e-029, true No ?- utility(A,B,C). A
consumer(r) B 11.5116, 16.6699 C 27.8641
A consumer(p) B 13.4289, 37.7063 C
50.8946 No ?-
?- geq00. geq00 compiled 0.01 sec, 0
bytes Yes ?- total_expendenture_for(F,Q,V). F
firm(m) Q quantity(24.9405r11.5116p13.4289)
V value(34.8918r16.1048p18.787) F
firm(s) Q quantity(54.3762r16.6699p37.7063)
V value(59.4332r18.2202p41.213) No
12????????????
- ??utility/3??????????????????production/3?????????
????????????????(???CES???) ??????????????????????
???????????????????????? - total_expendenture_for/3??????????????????????????
?????? - ???????????production/3???????????????????????????
??????????????????????????????????
production/3??3??(?????C???????????)??????????????
??????????????????????????????????? - ???????????????????????????????????????(??????????
)????????????????????????????? - ?- excess_demand(A,B,C).
- A capital(0.0038891725.0039-25, price(1.373))
- B labor(-0.010200559.9898-60, price(1.0))
- C disequilibrium
- No
- ?-
excess_demand(capital(EDKK1-K,price(R)),labor(EDL
L1-L,price(W)),T)- endowment(consumer(r),capi
tal,Kr), endowment(consumer(p),capital,Kp),
endowment(consumer(r),labor,Lr),
endowment(consumer(p),labor,Lp), K is Kr
Kp, L is Lr Lp, production(firm(m),Km,Lm,
_,_,_,R,W,_), production(firm(s),Ks,Ls,_,_,_,
R,W,_), K1 is Km Ks, L1 is Lm Ls,
EDK is K1 - K, EDL is L1 - L,
equilibrium_check(EDK,EDL,T). equilibrium_check
(EDK,EDL,disequilibrium)-
member(X,EDK,EDL), Xgt0,
!. equilibrium_check(_,equilibrium).
13??????????
- ??????????????????????ShovenWhalley??????????????
??????????????????Prolog????????????????????? - ?????????????????????????????????????????????????
????????r???1.3735?????????????Solver???????????
14Scarf?????????
- ?????????????????????????????????????
- ???Scarf?????????????????????????????????????????
- ????????1??????????????(????????????)?
- ??????????????????????????????????????????????
15???????(1)
- ??Prolog?????????????????????????????????????1????
????????????????????allocation/3??????????????????
????????????????? - ?????????????????????10???5000????????ShavenWhall
y??????????????? - ???????????????????????????????????????????
- price_of_product(firm(m),A)- A is
1.399/(1.37351). - price_of_product(firm(s),B)- B is
1.093/(1.37351). - price_of_capital(A)-A is 1.3735/(1.37351).
??? - price_of_labor(B)-B is 1/(1.37351). ???
2. grid(10). ?- test_simple. approximated
solution is id(6), prices(5/10, 5/10),
excess_demands(7.63971, -2.76429),
label(1) Yes 2. grid(5000). ?-
test_simple. approximated solution is
id(2108), prices(2893/5000, 2107/5000),
excess_demands(0.00852542, 0.00268448),
label(1) Yes
?- listing(log_simple). log_simple(id(1),
prices(10/10, 0/10), excess_demands(-20.6774,
660272.0), label(2)). log_simple(id(2),
prices(9/10, 1/10), excess_demands(-16.9082,
11.6681), label(2)). log_simple(id(3),
prices(8/10, 2/10), excess_demands(-13.2364,
6.54272), label(2)). log_simple(id(4),
prices(7/10, 3/10), excess_demands(-8.38792,
3.61095), label(2)). log_simple(id(5),
prices(6/10, 4/10), excess_demands(-1.73013,
0.687809), label(2)). log_simple(id(6),
prices(5/10, 5/10), excess_demands(7.63971,
-2.76429), label(1)). log_simple(id(7),
prices(4/10, 6/10), excess_demands(21.1433,
-6.91299), label(1)). log_simple(id(8),
prices(3/10, 7/10), excess_demands(41.187,
-11.7324), label(1)). log_simple(id(9),
prices(2/10, 8/10), excess_demands(72.3653,
-16.9863), label(1)). log_simple(id(10),
prices(1/10, 9/10), excess_demands(126.664,
-22.1559), label(1)). log_simple(id(11),
prices(0/10, 10/10), excess_demands(2.05073e00
6, -28.6762), label(1)). Yes
16??????????????
- ???????????????????????????????Prolog?????????????
?????????(????????????!)N??D?????????????????????a
lloc/3?????????? - ????????????????????????alloc?????????????????1,2,
3?????????????????? - ???2??????????????????????????????????????????????
??
??allocation???????? ??(??)?????????????????0????
?????????????????D??????????(??(1)????????????????
??) Scarf?????? ?????????????????????????????????
??????????????????????????????????????????????????
???????(????????????)???????????0?????????????????
?????????????????D??????????
17??????????
- test run for pivot/3.
- ?- Bout(1),Dout(2),Fout(3),
- Hout(2),Jout(1),
- A4,0,0,3,0,1,3,1,0,
- pivot(A,B,C),pivot(C,D,E),
- pivot(E,F,G),pivot(G,H,I),
- pivot(I,J,K).
- B out(1)
- D out(2)
- F out(3)
- H out(2)
- J out(1)
- A 4, 0, 0, 3, 0, 1, 3, 1, 0
- C 2, 1, 1, 3, 0, 1, 3, 1, 0
- E 2, 1, 1, 2, 2, 0, 3, 1, 0
- G 2, 1, 1, 2, 2, 0, 1, 2, 1
- I 2, 1, 1, 1, 1, 2, 1, 2, 1
1-Dimension simplicies pivot(V1,V2,out(1),V3,
V2)- vector_diff(V2,V1,D),
vector_sum(D,V2,V3), \ (member(X,V3),Xlt0). pi
vot(V1,V2,out(2),V1,V3)-
vector_diff(V1,V2,D), vector_sum(D,V1,V3),
\ (member(X,V3),Xlt0).
N-Dimensional simplicies pivot(V,out(K),T)-
length(V,N), N gt 2, nth1(K,V,VJ),
pivot(ring,K/N,K0,K1), nth1(K1,V,V1),
nth1(K0,V,V0), vector_diff(V1,VJ,D),
vector_sum(D,V0,V2), \ (member(X,V2),Xlt0),
substitute(K/N,V,_-gtV2,T).
pivot(ring,1/N,N,2)-!. pivot(ring,K/N,K0,K1)
- K gt 0, K lt N, !, K0 is K -1, K1 is K
1. pivot(ring,N/N,K0,1)- K0 is N - 1,
!. substitute(K/N,V,VK-gtV2,T)- length(V,N),
nth1(K,V,VK), findall(W, (nth1(J,V,X), (J
\ K -gt WX WV2)), T).
18????????
?- simplical_subdivision( dim(2),pivot(K),perm
(Pi),(1/D)(S-gtT) ). K 1 Pi (1-gt2),
(2-gt1) D 10 S 10, 0, 0, 9, 1, 0, 9, 0,
1 T 8, 1, 1, 9, 1, 0, 9, 0, 1 K
1 Pi (1-gt2), (2-gt1) D 10 S 9, 1, 0,
8, 2, 0, 8, 1, 1 T 7, 2, 1, 8, 2, 0,
8, 1, 1 K 2 Pi (1-gt2), (2-gt1) D
10 S 9, 1, 0, 8, 2, 0, 8, 1, 1 T 9,
1, 0, 9, 0, 1, 8, 1, 1 Yes ?-
- -------------------------------------------------
- subdivision of unit simplex
- -------------------------------------------------
- simplical_subdivision(dim(N),
- pivot(K),perm(Pi),(1/D)(S-gtT)
- )-
- N1 is N 1,
- vertex_of_simplical_subdivision(
- dim(N),
- vertex(N1),perm(Pi),(1/D)S
- ),
- pivot(S,out(K),T).
- initial_simplical_subdivision(
- dim(N),(1/D)S
- )-
- grid(D),
- N1 is N 1,
vertex_of_simplical_subdivision( dim(N),
vertex(K), perm(Pi), (1/D)SS0O )-
grid(D), length(Q,N), N1 is N 1,
nth1(K0,Q,_), (K0 gt N-gt !, failtrue), K is
K0 1, vertex_of_simplical_subdivision(
dim(N), vertex(K0), perm(Pi),(1/D)S0O
), member(K0-gtKP,Pi), findall(W,
( nth1(J,S0,X), exchange(
dim(N),row(KP),col(J),DK ), W is X
DK, W gt 0 ), S), length(S,N1).
19????
- J.B. Shoven and J. Whalley (1992). Applying
General Equilibrium. Cambridge University
Press.??????????????. ?? ? (?). ???????.1993. - H. E. Scarf (1982). The computation of
equilibrium prices An exposition. In K.J. Arrow
and M.D. Intriligator (eds.), Handbook of
Mathematical Economics, vol. II, North-Holand,
Chapter 21.