资源

经济规划(mpex09)

/***************************************************************//*                                                             *//*S A S S A M P L E L I B R A R Y*//*                                                             *//*名称:mpex09*//*标题:经济规划(mpex09)*//*产品:或*//*系统:所有*//*程序:OPTMODEL*//*数据:*//*                                                             *//*支持:更新:*//*参考:*//*MISC:数学规划示例09*//*示例手册*//*                                                             *//***************************************************************/数据行业_数据;投入行业9美元。init_stocks init_producte_capacity需求;数据线;煤150 300 60钢80 350 60运输100 280 30;数据生产数据;输入输入$9。煤钢运输;数据线;煤0.1 0.5 0.4钢0.1 0.1 0.2运输0.2 0.1 0.2人力0.6 0.3 0.2;数据生产能力数据;输入输入$9。煤钢运输;数据线;煤炭0.0 0.7 0.9钢0.1 0.1 0.2运输0.2 0.1 0.2人力0.4 0.2 0.1;%设manpower_capacity=470;%设num_years=5;过程操作模型;num num_years=&num_years;设置YEARS=1..num_YEARS;设置YEARS0={0}联合YEARS;设置<str>INDUSTRIES;num init_stocks{工业};num init_productive_capacity{行业};num需求{工业};将数据industry_data读入INDUSTRIES=[industry]init_stocks init_productive_capacity需求;设置输入;num production_ceff{INPUTS,INDUSTRIES};将数据production_data读入INPUTS=[input]{工业中的j}<production_coeff[input,j]=col(j)>;num productive_capacity_coeff{INPUTS,INDUSTRIES};将数据productive_capacity_data读取到INPUTS=[input]{行业中的j}<productive_capacity_coeff[input,j]=col(j)>;var StaticProduction{INDUSTRIES}>=0;最小零=0;con Static_con{i in INDUSTRIES}行业:静态生产[i]=需求[i]+行业中的总和{j}生产_效率[i,j]*静态生产[j];解决;打印StaticProduction;num最终需求{工业};for{i in INDUSTRIES}final_demand[i]=静态生产[i].sol;var生产{工业,0..num_years+1}>=0;var股票{INDUSTRIES,0..num_years+1}>=0;var ExtraCapacity{INDUSTRIES,1.num_years+2}>=0;impvar ProductiveCapacity{i in INDUSTRIES,年份为1.num_years+1}=init_productive_capacity[i]+2年内的总和{y}额外容量[i,y];对于{i in INDUSTRIES}do;产量[i,0].ub=0;库存[i,0].lb=init_stocks[i];库存[i,0].ub=init_stocks[i];结束;最大总生产能力=工业中的总和{i}生产能力[i,num_years];最大总产量=工业中的总和{i,4..5}年产量[i,年];最大总人力=sum{i in INDUSTRIES,YEARS in YEARS}(工业,年份)(production_coeff['manpower',i]*生产[i,year+1]+productive_capacity_coeff['manpower',i]*额外容量[i,year+2]);con Continuity_con{i in INDUSTRIES,year in YEARS0}(工业中的con连续_con{i,年份中的年份):库存[i,年份]+生产[i,年度]=(如果年份为YEARS,则要求[i]其他0)+工业中的总和{j(生产_效率[i,j]*生产[j,年份+1]+productive_capacity_coeff[i,j]*额外容量[j,年份+2])+股票[i,年份+1];con Manpower_con{1年..num_years+1}:工业中的总和{j(production_coeff['manpower',j]*生产[j,year]+productive_capacity_coeff['manpower',j]*额外容量[j,year+1])<=&manpower_capacity;con Capacity_con{i in INDUSTRIES,year in 1..num_years+1}(工业中的con容量con{i,年份为1年):产量[i,year]<=生产能力[i,year];用于工业中的{i}产量[i,num_years+1].lb=最终需求[i];对于INDUSTRIES中的{i,年份以num_years+1…num_years+2}表示额外容量[i,year].ub=0;问题Problem1包括生产库存额外容量总生产能力连续性_人力_能力_控制;Problem1中的Problem2包括总产量;问题Problem3包括生产库存额外容量总人力Continuity_con电容_con;使用问题Problem1;解决;打印生产库存ExtraCapacity ProductiveCapacity Manpower_con.body;使用问题问题2;对于工业中的{i,年份}do;Continuity_con[i,year].lb=0;Continuity_con[i,year].ub=0;结束;解决;打印生产库存ExtraCapacity ProductiveCapacity Manpower_con.body;使用问题问题3;对于工业中的{i,年份}do;Continuity_con[i,year].lb=需求[i];Continuity_con[i,year].ub=需求[i];结束;解决;打印生产库存ExtraCapacity ProductiveCapacity Manpower_con.body;退出;