当前位置:文档之家› 运筹学课程设计报告书---运输问题的表上作业法

运筹学课程设计报告书---运输问题的表上作业法

运输问题的一般提法:
某种物资有m个产地Ai,产量是ai(i=1,2,…,m),有m个销售地Bi,销量(需求量)是bj(j=1,2,…,m)。若从Ai运到Bi单位运价为dij(i=1,2,…,m;j=1,2,…,m),又假设产销平衡,即
问如何安排运输可使总运费最小?
若用xij(i=1,2,…,m;j=1,2,…,n)表示由Ai运到Bj的运输量,则平衡运输问题可写出以下线性规划模型:
参考文献:《运筹学》《C++程序基础教程》
附件:程序的主函数:
int main()
{ int M, N, i, j;
double* C; // 存储运价, 产量及销量
double* X; // 存储运量分配方案
double z;
double sum;
int psum,csum
cout<<"请输入产地/销地数量: ";
约束条件
表上作业法原理同于单纯形法,首先给出一个初始的调运方案(实际上是初始基本可行解),求出各非基变量的检验数去判定当前解是否为最优解,若不是则进行方案调整(即从一个基本可行解转换成另一个基本可行解),再判定是否为最优解,重复以上步骤,直到获得最优解为止。这些步骤在表上进行十分方便。
操作过程在表上进行
运筹学课程设计报告书
专业
班级
学号
姓名LMZZ
日期2011.09.01
设计题目:运输问题的表上作业法
设计方案:运输问题是一种应用广泛的网络最优化模型,该问题的主要目的是为物资调运、车辆高度选择最经济的运输路线。有些问题,如m台机床加工零件问题、工厂合理布局问题,虽要求与提法不同,经适当变化也可以使用本模型求得最佳方案。
经历了这次课程设计,不仅对我的学习提供了帮助,而且在意志力方面也得到了锻炼。没有足够的耐力和信心就很难坚持对课程设计每一步的。实践是捡验真理的唯一标准。通过实践,使我们加强了对理论知道的理解。
致谢:首先感谢老师给了我们这次锻炼的机会,让我们能够学会怎么去运用运筹学的方法解决实际的问题,其次是感谢我的队友——,正是他和我的一起努力才使我们能按时完成这次课程设计,这使我明白了团队合作的重要性。还有就是感谢我的学长在C++教育方面的帮助。
方案实施:通过运输问题在C++程序中的运用,从而实现方案的最优。程序主要分两部:(1)求解,(2)最优解判断
结果与结论:程序运行过程中,依次输入所需要的运价,产量,销量等数据,单击回车可以再次现实所需数据,按任意键可以运行至求出初始可行解并显示,再次按任意键程序进行最优解的判断,并求出最优解,显示在程序页面上,从而可以得到该运输问题的最优方案。
return 0;
}
// 记录闭回路点结构
struct PATH
{ int i,j,f;
};
指导教师评语:
课程设计报告成绩:,占总成绩比例:20%
答辩成绩:,占总成绩比例:30%
课程设计作品,占总成绩比例:50%
总成绩:。
else
{ cout<<setw(10)<<x(i,j);
sum+=(x(i,j)*c(i,j));
}
cout<<endl;
}
cout<<"\n\n\t最优方案:"<<setw(10)<<sum<<endl; //我们现在是在求max,max=-min
free(X);
free(C);
system("pause");
cin>>psum>>csum
M=psum+1;
N=csum+1;
X=new double[sizeof(double)*(M-1)*(N-1)];
C=new double[sizeof(double)*M*N];
// 把运价, 供应量和需求量的数据读入到数组 c( i, j )
cout<<"输入所需要的相关数据(按顺序):"<<endl;
cout<<endl;
}
TP(M,N,C,X)#34;\n============= 最优解 ===================\n";
sum=0;
for(i=0;i<M-1;++i)
{for(j=0;j<N-1;++j)
if(x(i,j)>=BIG_NUM)
cout<<setw(10)<<"******";
for(i=0;i<M;i++)
{for(j=0;j<N;j++)
{ cin>>z;
c(i,j)=z;
}
}
cout<<"\n============= 显示数据 ================\n";
for(i=0;i<M;++i)
{ for(j=0;j<N;++j)
cout<<setw(10)<<c(i,j);
收获与致谢:收获:通过对《运筹学》运输问题的课程设计对《运筹学》的书本知识得到了进一步的巩固,具体化就是加深了我对运输问题深层理解,使我们能成熟的理解和应用运筹学模型,使我们认识运筹学在生产与技术管理和经营管理决策中的作用,领会其基本思想和分析与解决问题的思路。为我们以后毕业参加工作单位的策略策划打下坚实的基础。还又我了解并发现了很多调试程序的方法,而且懂得了如何处理错误的方法。对C语言以及C++的使用得到了进一步的提高。
相关主题