资源

露天采矿(mpex14)

/***************************************************************//*                                                             *//*S A S S A M P L E L I B R A R Y*//*                                                             *//*名称:mpex14*//*标题:露天采矿(mpex14)*//*产品:或*//*系统:所有*//*程序:OPTMODEL*//*数据:*//*                                                             *//*支持:更新:*//*参考编号:*//*MISC:数学编程中的示例14*//*示例手册*//*                                                             *//***************************************************************/数据块数据;输入级行列百分比;数据线;1 1 1  1.51 1 2  1.51 1 3  1.51 1 4  0.751 2 1  1.51 2 2  2.01 2 3  1.51 2 4  0.751 3 1 1.01 3 2  1.01 3 3  0.751 3 4  0.51 4 1  0.751 4 2  0.751 4 3  0.51 4 4  0.252 1 1  4.02 1 2  4.02 1 3  2.02 2 1  3.02 2 2  3.02 2 3  1.02 3 1  2.02 3 2  2.02 3 3  0.53 1 1 12.03 1 2  6.03 2 1  5.03 2 2  4.04 1 1  6.0;数据级数据;投入成本;数据线;30006000800010000;%设full_value=200000;过程操作模型;设置BLOCKS;num级别{BLOCKS};num行{BLOCKS};num列{BLOCKS};num收入{区块};将数据block_data读入BLOCKS=[_N_]级行列收入=%;对于{块中的块}收入[块]=&full_value*收入[块]/100;设置LEVELS;num成本{LEVELS};将数据level_data读入LEVELS=[_N_]cost;var提取{BLOCKS}二进制;num利润{区块}=收入[区块]-成本[级别[区块]];max TotalProfit=总和{区块}利润[block]*提取[block];con优先级_con{i在BLOCKS中,j在BLOCKS中:级别[j]=级别[i]-1和{行[i]中的行[j],行[i]+1}和{列[i]中的列[j],列[i]+1}}:提取[i]<=提取[j];解决;打印摘录利润;从创建数据sol_data[block]={BLOCKS中的块:提取[block].sol>0.5}水平行列收入成本[水平[区块]]利润;退出;