$title Agreste Farm Level Model of NE Brazil (AGRESTE,SEQ=88) $onText This is a farm level model of the north east region of brazil. There is only one farm type - medium sized. There are 3 types of land and risk on revenue is considered. Kutcher, G P, and Scandizzo, P L, The Agricultural Economy of Northeast Brazil. The Johns Hopkins University Press, Baltimore and London, 1981. Keywords: linear programming, agricultural economics, farming, crop yields, livestock $offText $sTitle Set Definitions Set c 'crops' / cotton-h 'cotton-herbaceo' banana 'banana' sugar-cane 'sugar-cane' beans-arr 'beans-de-arranca' beans-cor 'beans-de-corda' oranges 'oranges' manioc 'manioc' corn 'corn' sisal 'sisal' / p 'cropping activities' / crop-02 'cotton-herbaceo' crop-05 'banana' crop-10 'sugar cane' crop-15 'oranges' crop-16 'manioc' crop-17 'corn' crop-19 'sisal' crop-25 'beans-de-corda corn' crop-29 'cotton-herbaceo beans-de-arranca corn' crop-30 'cotton-herbaceo beans-de-corda corn' crop-33 'beans-de-arranca corn' crop-36 'beans-de-arranca manioc corn' / s 'land types' / good 'flat and near water or humid and low lying' medium 'hilly or more arid than good' pasture 'cultivated pasture or tree crops' / tm 'months' / jan, feb, mar, apr, may, jun, jul, aug, sep, oct, nov, dec / sc(s) 'crop lands' / good, medium / r 'livestock feeding alternatives' / rec-1*rec-3 / ty 'year' / 1960*1969 / dr 'family consumption bundle alternatives' / one, two, three / km 'technology characteristics' / equipment, fertilizer, seeds, sprouts, itech / ps(p,s) 'process-land possibilities'; Alias (s,sp); Parameter landc(s) 'land data (ha)' / good 8.775 medium 11.64 pasture 21.92 / rations(r) 'livestock rations feeding alternative (cr per head)' / rec-1 5.141 rec-2 21.646 rec-3 49.845 / xcropl(p,s) 'limits on cropping activities'; xcropl("crop-19","good") = 0.036; xcropl("crop-19","medium") = 0.298; Table ldp(s,s) 'land downgrading possibilities' good medium good 1 medium -1 1 pasture -1; * land requirements for livestock seems high but ok - pg 65 para 3 Table lio(s,r) 'land requirements for livestock feed alternatives (ha per head)' rec-1 rec-2 rec-3 medium 1.407 .611 .631 pasture .209 2.03 .9 ; Table labor(p,tm) 'labor requirements for cropping (man-days per ha)' jan feb mar apr may jun jul aug sep oct crop-02 4.79 10.89 18.70 9.83 8.03 20.95 15.67 15.48 11.35 8.38 crop-05 8.24 0.89 5.43 3.31 11.13 10.33 3.27 2.65 5.47 3.67 crop-10 5.78 3.37 4.03 7.09 4.64 5.91 7.67 9.23 5.93 9.05 crop-15 2.00 2.36 4.13 2.13 7.18 5.88 3.21 9.20 6.89 3.30 crop-16 5.71 7.60 7.28 8.15 8.48 10.71 9.34 12.76 8.93 10.22 crop-17 9.19 14.42 10.59 12.01 3.47 10.75 5.88 7.30 4.14 4.25 crop-19 1.22 1.11 0.56 0.78 1.19 0.44 1.89 3.04 2.93 4.99 crop-25 12.46 11.35 24.38 22.03 16.91 9.47 10.97 9.70 4.93 6.41 crop-29 5.54 10.30 9.24 8.97 15.82 13.00 14.74 10.64 5.64 4.90 crop-30 9.18 3.94 16.15 23.69 28.12 20.58 17.73 15.06 4.58 9.76 crop-33 6.87 10.19 10.61 9.14 18.38 11.50 9.22 13.36 3.85 3.87 crop-36 7.44 10.21 9.63 16.18 20.11 16.86 14.86 14.00 8.04 6.69 + nov dec crop-02 8.23 4.54 crop-05 3.18 1.44 crop-10 7.59 6.37 crop-15 9.70 8.87 crop-16 6.18 8.34 crop-17 3.49 2.11 crop-19 7.73 9.44 crop-25 0.53 0.89 crop-29 4.73 4.92 crop-30 7.39 2.67 crop-33 2.65 1.09 crop-36 5.49 5.26; Table llab(tm,r) 'labor requirement for livestock feed (man-days per head)' rec-1 rec-2 rec-3 jan 4.261 1.873 1.933 feb 2.854 1.262 1.302 mar .040 .040 .040 apr .040 .040 .040 may .040 .040 .040 jun .040 .040 .040 jul .040 .040 .040 aug .040 .040 .040 sep .040 .040 .040 oct .040 .040 .040 nov 7.075 3.095 3.195 dec 7.075 3.095 3.195; Table cbndl(c,dr) 'consumption bundles (tons per bundle)' one two three beans-arr .225 .152 .15 manioc .965 2.64 .935 corn .235 .232 .581; Table crev(c,ty) 'crop revenue time series (cr per ha)' 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 banana 6399 8193 9215 8581 7988 7228 5923 6738 7221 7842 sugar-cane 1667 1899 1898 2230 2265 2067 1499 1903 1901 1929 beans-cor 546 585 1091 651 470 621 605 518 519 772 manioc 986 1543 2658 1639 1146 1380 1357 1702 1560 1580 corn 267 378 544 329 320 351 310 322 294 349; Parameter price(c) 'crop reference prices (cr per kg)' / cotton-h 1.9 , banana 4 , sugar-cane 35 beans-arr 2.5 , beans-cor 1.5 , oranges 10 manioc .17, corn .15, sisal 1 / ravg(c) 'average crop revenues (cr per ha)' prdev(c,ty) 'price deviations for crops (cr per ton)'; * wage data: pg 159 * working capital: is this correct: = 6.4 * 1113 * family labor available: correct? Scalar fwage 'family reservation wage rate (cr per man-month)' / 75 / twage 'temporary labor wage rate (cr per man-month)' / 250 / pwage 'permanent labor wage rate (cr per man-year)' / 2054 / vsc 'value of self-consumption (cr per bundle)' / 934 / wcbar 'working capital (cr)' / 7123.2 / famlab 'family labor (man equivalent wrks)' / 70.5 / lprice 'livestock price (cr per head)' / 211 / vetpr 'cost of veterinary service (cr per head)' / 1 / dpm 'man-days per man month' / 25 / phi 'risk factor'; * some of these yields look odd: medium land has higher land than good Table yield(p,c,s) 'crop yields (kg per ha)' good medium crop-02.cotton-h 848 569 crop-05.banana 221 174 crop-10.sugar-cane 45 30 crop-15.oranges 92 crop-16.manioc 4456 3964 crop-17.corn 725 563 crop-19.sisal 2244 1666 crop-25.beans-cor 251 211 crop-25.corn 373 264 crop-29.cotton-h 269 149 crop-29.beans-arr 285 221 crop-29.corn 536 544 crop-30.cotton-h 403 133 crop-30.beans-cor 115 352 crop-30.corn 361 212 crop-33.beans-arr 274 260 crop-33.corn 594 442 crop-36.beans-arr 288 287 crop-36.manioc 3408 1031 crop-36.corn 503 328; ps(p,s) = yes$sum(c, yield(p,c,s)); ravg(c) = sum(ty, crev(c,ty))/card(ty); prdev(c,ty)$ravg(c) = 1000*price(c)*(crev(c,ty)/ravg(c) - 1); phi = 1; display ravg, prdev; Table techc(p,km) 'cropping technology requirements (cr per ha)' equipment fertilizer seeds sprouts crop-02 31 91 crop-05 45 crop-10 36 crop-15 106 1 184 crop-16 20 crop-17 42 55 crop-29 4 22 19 crop-30 27 crop-33 11 42 crop-36 98 6 1; Parameter pcost(p) 'cropping technology costs (cr per ha)' a(p) 'cropping constants'; pcost(p) = sum(km, techc(p,km)); display pcost; a(p) = 1; a(p)$sum(s, yield(p,"cotton-h",s)) = 0; display pcost, a; $sTitle Model Definition Variable xcrop(p,s) 'cropping activities (ha)' xliver(r) 'livestock activity defined on feed techniques (head)' xlive 'livestock production (head)' lswitch(s) 'land downgrading (ha)' xprod(c) 'crop production (ton)' cons(dr) 'on-farm consumption (ton)' sales(c) 'crop sales (ton)' flab(tm) 'family labor (man-days)' tlab(tm) 'temporary labor (man-days)' plab 'permanent labor (workers)' rationr 'livestock ration requirements (cr)' pdev(ty) 'positive price deviations (cr)' ndev(ty) 'negative price deviations (cr)' yfarm 'farm income (cr)' revenue 'from crop and livestock sales (cr)' cropcost 'accounting: cropping activities cost (cr)' labcost 'accounting: labor costs - including family (cr)' vetcost 'accounting: veterinary services cost (cr)'; Positive Variable xcrop, xliver, lswitch, sales, cons, flab, tlab, plab, pdev, ndev; Equation landb(s) 'land balance' lbal 'livestock balance ( )' rliv 'livestock ration requirements definition ( )' mbalc(c) 'material balance: crops ( )' dprod(c) 'crop production definition ( )' cond 'on farm consumption definition ( )' labc(tm) 'labor supply-demand relation ( )' ddev(ty) 'crop price deviation definition ( )' income 'farm income definition ( )' arev 'accounting: revenue definition ( )' acrop 'accounting: cropping cost definition ( )' alab 'accounting: labor cost definition ( )' awcc 'accounting: working capital requirements ( )' avet 'accounting: veterinary costs (cr)'; landb(s).. sum(p$ps(p,s), a(p)*xcrop(p,s))$sc(s) + sum(sp, ldp(s,sp)*lswitch(sp)) + sum(r, lio(s,r)*xliver(r)) =l= landc(s); lbal.. xlive =e= sum(r, xliver(r)); rliv.. rationr =e= sum(r, rations(r)*xliver(r)); mbalc(c).. sum((s,p), yield(p,c,s)*xcrop(p,s))/1000 =g= sales(c) + sum(dr, cbndl(c,dr)*cons(dr)); dprod(c).. xprod(c) =e= sum((p,s), yield(p,c,s)*xcrop(p,s))/1000; labc(tm).. sum((p,s)$ps(p,s), labor(p,tm)*xcrop(p,s)) + sum(r, llab(tm,r)*xliver(r)) =l= flab(tm) + tlab(tm) + dpm*plab; cond.. sum(dr, cons(dr)) =e= 1; ddev(ty).. sum(c, prdev(c,ty)*sales(c)) =e= pdev(ty) - ndev(ty); arev.. revenue =e= lprice*xlive + 1000*sum(c, price(c)*sales(c)); acrop.. cropcost =e= sum((p,s)$ps(p,s), pcost(p)*xcrop(p,s)); alab.. labcost =e= (fwage*sum(tm, flab(tm)) + twage*sum(tm, tlab(tm)))/dpm + pwage*plab; awcc.. cropcost + rationr + vetcost + twage/dpm*sum(tm, tlab(tm)) + pwage*plab =l= wcbar; avet.. vetcost =e= vetpr*xlive; income.. yfarm =e= revenue + vsc*sum(dr, cons(dr)) - labcost - rationr - vetcost - cropcost - phi*sum(ty, pdev(ty) + ndev(ty))/card(ty); Model agreste 'farm level model' / all /; xcrop.up(p,s)$xcropl(p,s) = xcropl(p,s); flab.up(tm) = famlab; solve agreste maximizing yfarm using lp; phi = 0; solve agreste maximizing yfarm using lp;