欢迎来到天天文库
浏览记录
ID:48018581
大小:254.00 KB
页数:11页
时间:2020-01-18
《数学规划课程设计报告书.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、......数学规划课程设计题目最小元素法求初始基本可行解姓名学号成绩.专业word可编辑.......摘要:最小元素法的基本思想就是就近供应,即从单位运价表中最小的运价(称为最小元素)开始确定产销关系。用最小元素法得到的()是一个基本可行解,画*号的数对应的变量都是基变量。关键字:最小元素法就近供应基本可行解基变量.专业word可编辑.......一、平衡问题题目数学形式及本课程设计题目分析1.1平衡问题平衡运输问题的一般提法是:设某种货物有m个产地,,…,,每个产地的产量分别是,,…,;另有n个销地,,…,,每个销地的销量分别是,,…,。假定产销平衡,即=。此外,已知由
2、产地向销地运一单位货物的运价为,问怎样调运货物,才能使总运费最少。设由产地向销地运送的货物量是,问题的数学模型是:求X=(,,…,,,,…,,,…,),使其满足:minS=s.t.由条件,,,是上式的一个可行解。由基本定理知上式一定有基本可行解.专业word可编辑.......1.2本课程设计题目分析销地产量产地359134238727644销量2156用最小元素法求初始基本可行解分析:从上表中找出最小运价,先从开始,先给以较大的值,这表示现将的产品优先供给,产量是3,但是的销量是6,所以缺3。画好一张表格,把相继求出的变量的值填在表上。我们已求出,在6的右上方写3,故在表
3、格上打上叉表示无运输量,在没有打叉的位置找到最小运价同上得,则则产量优先供给,则产量还余2,重复以上步骤可以求出,,,,,,得表如下所示销地产量.专业word可编辑.......产地×43×105×1393*137×241*25*31*8732*2×97×762*44销量2156求得第一个基本可行解:X=(0,0,0,3,0,1,5,1,2,0,0,2)一、利用C语言完成此运算过程2.1编程思想:利用for循环计算找出比较数组中的一个最小元素直到这些最小元素只和为产量或者销量则终止程序,输出这些最小元素组成的矩阵则是我们需要的结果。2.2程序实现代码:#include4、dio.h>#includefloatx;intr,s;floatff(floatd[100][100],intb[100][100],int*m,int*n);voidmain().专业word可编辑.......{printf("*************最小元素法求初始基本可行解*******");FILE*fp;inti,j;floata[100][100],c[100][100];intg[3][4]={0,0,0,3,0,1,5,1,2,0,0,2};intb[100][100];fp=fopen("stdin.txt","r");f5、scanf(fp,"%d%d",&r,&s);for(i=0;i6、,l=0,flag=1,p;for(p=0;p<2;p++){ff(a,b,&k,&l);if(a[k][s-1]0&&a[r-1][l]>0){c[k+1][l+1]=a[k][s-1];a[r-1][l]=a[r-1][l]-a[k][s-1];for(j=0;j=a[r-1][l]&&a[k][s-1]>0&&a[r-1][l]>7、0){c[k+1][l+1]=a[r-1][l];a[k][s-1]=a[k][s-1]-a[r-1][l];for(i=0;i
4、dio.h>#includefloatx;intr,s;floatff(floatd[100][100],intb[100][100],int*m,int*n);voidmain().专业word可编辑.......{printf("*************最小元素法求初始基本可行解*******");FILE*fp;inti,j;floata[100][100],c[100][100];intg[3][4]={0,0,0,3,0,1,5,1,2,0,0,2};intb[100][100];fp=fopen("stdin.txt","r");f
5、scanf(fp,"%d%d",&r,&s);for(i=0;i6、,l=0,flag=1,p;for(p=0;p<2;p++){ff(a,b,&k,&l);if(a[k][s-1]0&&a[r-1][l]>0){c[k+1][l+1]=a[k][s-1];a[r-1][l]=a[r-1][l]-a[k][s-1];for(j=0;j=a[r-1][l]&&a[k][s-1]>0&&a[r-1][l]>7、0){c[k+1][l+1]=a[r-1][l];a[k][s-1]=a[k][s-1]-a[r-1][l];for(i=0;i
6、,l=0,flag=1,p;for(p=0;p<2;p++){ff(a,b,&k,&l);if(a[k][s-1]0&&a[r-1][l]>0){c[k+1][l+1]=a[k][s-1];a[r-1][l]=a[r-1][l]-a[k][s-1];for(j=0;j=a[r-1][l]&&a[k][s-1]>0&&a[r-1][l]>
7、0){c[k+1][l+1]=a[r-1][l];a[k][s-1]=a[k][s-1]-a[r-1][l];for(i=0;i
此文档下载收益归作者所有