$title Increasing Returns and average Cost Pricing (HARMGE,SEQ=148) $onText MPSGE input file with an example from Kazuya Kamiya: "Computation of Equilibria with Increasing Returns to Scale" Discussion Paper Number 73, Faculty of Economics, Osaka University, Tokyo, Japan. Kamiya, K, Computation of Equilibria with Increasing Returns to Scale. Tech. rep., Faculty of Economics, Osaka University, ?. Keywords: mixed complementarity problem, general equilibrium model, computation of equilibria, increasing returns, simplicial algorithm $offText Set G 'goods' / X, Y / F 'factors' / C, L /; Scalar A 'markup parameter' / 0 / MCP 'flag for marginal cost pricing' / 1 /; Table ALPHA(*,G) 'production technology' X Y L 0.4 0.46154 C 0.4 0.53846 K 0.2 ; Parameter NU(G) 'scale elasticity for IRTS sectors' / Y 0.3 / BETA(G) 'preference parameters' / X 1, Y 1 / ENDOW(*) 'goods and factor endowments' / X 20, Y 20, C 20, L 20 / K(G) 'specific capital stocks' / X 1 /; $onText $MODEL:KAMIYA $SECTORS: U ! UTILITY INDEX Z(G) ! PRODUCTION OUTPUT $COMMODITIES: PU ! CONSUMPTION PRICE INDEX P(G) ! OUTPUT PRICES W(F) ! FACTOR PRICES R(G)$ALPHA("K",G) ! SPECIFIC FACTORS IN NON-IRTS SECTORS $CONSUMERS: H ! REPRESENTATIVE AGENT $AUXILIARY: Q(G)$NU(G) ! QUANTITY ADJUSTMENT FOR IRTS SECTOR. T(G)$NU(G) ! PRICING ADJUSTMENT FOR IRTS SECTOR. * Utility index (Cobb-Douglas) $PROD:U s:1.0 O:PU I:P(G) Q:BETA(G) * Increasing returns sector with endogenous pricing: $PROD:Z(G) s:1.0 O:P(G) Q:1 A:H N:T(G)$NU(G) I:W(F) Q:ALPHA(F,G) I:R(G) Q:ALPHA("K",G) * FINAL DEMAND: $DEMAND:H D:PU E:P(G) Q:ENDOW(G) E:W(F) Q:ENDOW(F) E:R(G) Q:K(G) E:P(G)$NU(G) Q:1.0 R:Q(G) * Quantity adjustment: $CONSTRAINT:Q(G)$NU(G) Q(G) =e= Z(G)**(1 + NU(G)) - Z(G); * PRICING EQUATION: $CONSTRAINT:T(G)$NU(G) T(G) =e= 1 - ((1 + NU(G)$MCP)/(1 + A))*Z(G)**NU(G); $offText $sysInclude mpsgeset KAMIYA * SPECIFY THAT T(G) AND Q(G) ARE FREE: Q.lo(G)$NU(G) = -inf; T.lo(G)$NU(G) = -inf; $include KAMIYA.GEN solve KAMIYA using mcp; Scalar PNORM 'price index for normalization'; Parameter PRICES(*,*) 'equilibrium prices for various pricig rules'; PNORM = sum(G, P.l(G)) + sum(F, W.l(F)); PRICES(G,"MCP") = P.l(G)/PNORM; PRICES(F,"MCP") = W.l(F)/PNORM; MCP = 0; $include KAMIYA.GEN solve KAMIYA using mcp; PNORM = sum(G, P.l(G)) + sum(F, W.l(F)); PRICES(G,"ACP") = P.l(G)/PNORM; PRICES(F,"ACP") = W.l(F)/PNORM; A = 0.2; $include KAMIYA.GEN solve KAMIYA using mcp; PNORM = sum(G, P.l(G)) + sum(F, W.l(F)); PRICES(G,"A=0.2") = P.l(G)/PNORM; PRICES(F,"A=0.2") = W.l(F)/PNORM; A = 0.5; $include KAMIYA.GEN solve KAMIYA using mcp; PNORM = sum(G, P.l(G)) + sum(F, W.l(F)); PRICES(G,"A=0.5") = P.l(G)/PNORM; PRICES(F,"A=0.5") = W.l(F)/PNORM; A = 1.0; $include KAMIYA.GEN solve KAMIYA using mcp; PNORM = sum(G, P.l(G)) + sum(F, W.l(F)); PRICES(G,"A=1.0") = P.l(G)/PNORM; PRICES(F,"A=1.0") = W.l(F)/PNORM; A = 5.0; $include KAMIYA.GEN solve KAMIYA using mcp; PNORM = sum(G, P.l(G)) + sum(F, W.l(F)); PRICES(G,"A=5.0") = P.l(G)/PNORM; PRICES(F,"A=5.0") = W.l(F)/PNORM; * DISPLAY THE RESULTS: display PRICES;