《运筹学》 运输问题课程设计报告.docx
- 文档编号:1175442
- 上传时间:2022-10-18
- 格式:DOCX
- 页数:21
- 大小:70.39KB
《运筹学》 运输问题课程设计报告.docx
《《运筹学》 运输问题课程设计报告.docx》由会员分享,可在线阅读,更多相关《《运筹学》 运输问题课程设计报告.docx(21页珍藏版)》请在冰豆网上搜索。
《运筹学》运输问题课程设计报告
工厂原料运输问题课程设计报告
一、课程设计的目的
《运筹与最优化方法》是信息与计算科学专业的一门重要的专业课程,是一门综合应用课程。
主要内容包括:
线性规划、整数规划、动态规划、非线性规划、库存论、排队论、博奕论、图与网络分析的基本概念、方法和模型等,以及有广泛应用前景的运筹学问题的启发式算法。
《运筹学与最优化方法》中的运输问题是一种应用广泛的网络最优化模型,该模型的主要目的是为物资调运,车辆调度选择最经济的运输路线。
《运筹学与最优化方法》运输问题课程设计的目的是为了适应信息管理与信息系统培养目标的要求,使我们学习掌握如何应用运筹学中的数量方法与模型来分析通过计算机来实现研究现代企业生产与技术管理以及经营管理决策问题。
课程设计使我们能成熟的理解和应用运筹学模型,使我们认识运筹学在生产与技术管理和经营管理决策中的作用,领会其基本思想和分析与解决问题的思路。
为我们以后毕业参加工作单位的策略策划打下坚实的基础。
二、课程设计地点:
第三实验楼4楼, 运筹学实验室
三、课程设计时间:
第十八周,第十九周
四、课程设计原理与过程
(一)运输问题的内容及其解决方法
运输问题是一种应用广泛的网络最优化模型,该模型的主要目的是为物资调运、车辆高度选择最经济的运输路线。
有些问题,如m台机床加工零件问题、工厂合理布局问题,虽要求与提法不同,经适当变化也可以使用本模型求得最付佳方案。
运输问题的一般提法:
某种物资有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的运输量,则平衡运输问题可写出以下线性规划模型:
约束条件
具体问题如下:
三个工厂B1,B2,B3,它们需要同一种原料,数量分别是72吨、102吨、41吨,另外有三座仓库A1、A2、A3可以供应上述原料56吨、82吨、77吨,由于工厂和仓库位置不同,单位运价不同,具体数据如表1。
应如何安排运输方案,才能使总运费最小?
表1
B1
B2
B3
产量
A1
4
8
8
56
A2
16
24
16
82
A3
8
16
24
77
销量
72
102
41
215
解决方法用表上作业法,具体原理和方法如下:
观察运输问题的线性规划模型可知:
它有m*n具变量,(m+n)个约束方程,其系数矩阵为0-1矩阵,且有大量的零,通常称为稀疏矩阵,形如:
x11x12…x1nx21x22…x2n…xm1xm2…xmn
易知此矩阵的任何一个m+n阶子方阵对应的行列式等于零,所以系数矩阵的秩≤m+n-1,并可证明运输问题的约束方程组系数矩阵的秩为m+n-1.
由此可知运输问题只有m+n-1个独立的约束方程,即其基本可行解中基变量个数为m+n-1,其余均为非基变量。
由于运输问题的以上特征,可用更简便的方法进行计算,即表上作业法。
表上作业法原理同于单纯形法,首先给出一个初始的调运方案(实际上是初始基本可行解),求出各非基变量的检验数去判定当前解是否为最优解,若不是则进行方案调整(即从一个基本可行解转换成另一个基本可行解),再判定是否为最优解,重复以上步骤,直到获得最优解为止。
这些步骤在表上进行十分方便。
操作过程在表上进行,具体的表如下:
表2
B1
B2
B3
产量
A1
4
x11
8
x12
8
x13
56
A2
16
x21
24
x22
16
x23
82
A3
8
x31
16
x32
24
x33
77
销量
72
102
41
215
初始调运方案如下表:
表3
B1
B2
B3
产量
A1
4
56
8
×
8
×
56
A2
16
×
24
41
16
41
82
A3
8
16
16
61
24
×
77
销量
72
102
41
215
上表中“×”表示非基变量。
最优解的判定如下表
B1
B2
B3
产量
ui
A1
4
56
8
8
56
0
A2
16
24
41
16
41
82
12
A3
8
16
16
61
24
77
4
销量
72
102
41
215
vj
4
12
4
上表中带圈的数字所表示的是非基变量。
若令λij=dij-(ui+vj)(dij为非基变量所在的空格处的运费),称λij为空格检验数。
可以证明λij就是单纯形法中的检验数。
所以用判定最优解的原则也同于单纯形法中的判定定理。
当λij>0时,即可得到最优解,若λij≯0,则返回上一级操作。
直到得到最优解。
(二)运输问题课程设计源程序代码
//#include"stdafx.h"
#include
#include
#include
#include
usingnamespacestd;
#definea(j)(*(C+(M-1)*N+j))//销量数组
#defineb(i)(*(C+i*N+N-1))//产量数组
#definec(i,j)(*(C+i*N+j))//运价数组
#definex(i,j)(*(X+i*(N-1)+j))//运量数组
constdoubleBIG_NUM=1.0E15;//任意大数
//( 基本解,>=BIG_NUM: 运量为0) #defines(i,j)(*(S+i*(N-1)+j))//检验数数组Sij*/ #defineu(i)(*(U+i))//位势数组Ui #definev(i)(*(V+i))//位势数组Vi #definecpi(k)((CP+k)->i)//闭回路点i标 #definecpj(k)((CP+k)->j)//闭回路点j标 #definecpf(k)((CP+k)->f)//闭回路点f标 /* f=0: j++; f=1: i--; f=2: j--; f=3: i++; */ voidTP(intM,intN,double*C,double*X); intmain() { intM,N,i,j; double*C;//存储运价,产量及销量 double*X;//存储运量分配方案 doublez; ifstreaminfile; charfn[80]; doublesum; cout.setf(ios_base: : left,ios_base: : adjustfield); cout.setf(ios_base: : fixed,ios_base: : floatfield); cout.precision(3); cout<<"请输入数据文件名: "; cin>>fn; infile.open(fn); if(! infile) { cout<<"文件打开失败! \n"; system("pause"); exit(0); } infile>>M>>N; M++; N++; X=newdouble[sizeof(double)*(M-1)*(N-1)]; C=newdouble[sizeof(double)*M*N]; //把运价,供应量和需求量的数据读入到数组c(i,j) for(i=0;i for(j=0;j { infile>>z; c(i,j)=z; } infile.close(); cout<<"\n=============数据文件================\n"; for(i=0;i { for(j=0;j cout< cout< } system("pause"); TP(M,N,C,X); //输出产销分配方案 cout<<"\n=============最优解===================\n"; sum=0; for(i=0;i { for(j=0;j if(x(i,j)>=BIG_NUM) cout< else { cout< sum+=(x(i,j)*c(i,j)); } cout< } //cout<<"\n\n\tTheminCostis: %-10.4f\n",sum); cout<<"\n\n\t最高产量: "< free(X); free(C); system("pause"); return0; } //记录闭回路点结构 structPATH { inti,j,f; }; voidTP(intM,intN,double*C,double*X) { double*U,*V,*S; intMN1,m,n; structPATH*CP; intk,i,j,l,k1,l1,ip; doubleCmin,sum; intI0,J0,Imin,Jmin; intfi,fj,fc,f; MN1=(M-1)+(N-1)-1; m=M-1; n=N-1; S=newdouble[sizeof(double)*(M-1)*(N-1)]; U=newdouble[sizeof(double)*M]; V=newdouble[sizeof(double)*N]; CP=newPATH[sizeof(structPATH)*(MN1+1)]; //解初始化Xij=BIG_NUM for(i=0;i for(j=0;j x(i,j)=BIG_NUM; //最小元素法求初始可行解 for(k=0;k { Cmin=BIG_NUM; for(i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 运筹学 运筹学 运输问题课程设计报告 运输 问题 课程设计 报告