资源简介

运输问题的变量在网络流中是一条弧。据了解国外求几十万变量(弧)规模的最优解实属不易,这里介绍的运输问题算法,对百万弧的规模问题求解易如反掌(比单纯形法快成千上万倍)。 你可以体验算法的速度,观看模拟实际问题的最优解图形等等。

资源截图

代码片段和文件信息

#include “stdio.h“
#include “math.h“
#include “malloc.h“
#include “stdlib.h“
#include “stddef.h“
#include “time.h “
#include “string.h“     
#define NAME fpw“NAME         EX_%d.tmp           \n“
#define RHS  fpw“RHS  \n“  
#define ROWS  fpw“ROWS  \n  N OBJROW\n“ 
#define OBJSENSE  fpw“OBJSENSE  \n   MIN \n“   
#define OBJSENSEA  fpw“OBJSENSE  \n   MAX \n“            
#define COLUMNS  fpw“COLUMNS \n“          
#define BOUNDS  fpw“BOUNDS  \n“ 
#define ENDATA  fpw“ENDATA  \n“  
#define WAREHOUSE_POINT  fpw“WAREHOUSE_POINT\n“ 
#define CUSTOMER_POINT fpw“CUSTOMER_POINT\n“        
#define PRECI 2 
#define NAMEMAX fpw“SCALE    MAX  m= %d  n= %d    name File:%-12s\n“
#define NAMEMIN fpw“SCALE    MIN  m= %d  n= %d    name File:%-12s\n“
#define OBJ  fpw“OBJ \n“          
#define JIANGE 4                     
double sumtime ;
double myround(doubleint);
main()
{
    FILE*fpw ;
    int iiiimaxignisumibcmpcmp1 ;
    int jssjjkjsumlimmnn ;
    
    double*obj*val*x1*x2*x3*x4v1v2v3u1u2 ;
    char zuinb[20]na[20]nc[20];
    time_t tta1ttb1 ;
          printf(“\n\n    欢迎您!运输问题超级算法演示开始。\n\n“);
  printf(“    通过您的下面回答将自动生成您所需要的规模和数据。 \n“);
  printf(“    您是求运输问题的最小化吗?是-请按字母y并回车,不是-请按字母n并回车。 “); 
    scanf(“ %c“&zui);
    imax=0 ;

    if(zui==‘n‘)
    imax=1;
        printf(“\n   请输入您需要的工厂的总数,并回车“);     
        scanf(“%ld“&mm);
        printf(“\n   请输入您需要的商店的总数,并回车“);    
        scanf(“%ld“&nn);
        printf(“\n   为了产生同结构的不同数据,需要一个随机数的引子。 “);
        printf(“\n   请输入一个正整数参数,并回车“);  
          scanf(“%d“&li);
    ib=li ;
        printf(“\n   对于需要保存的生成数据您是选择mps格式吗? 是-请按字母y并回车,不是-请按字母n并回车“);
    scanf(“%s“na);
    cmp=strcmp(“n“na);
    cmp1=strcmp(“N“na);
    strcpy(nb“EX_“);
    itoa(linc10);
    strcat(nbnc);
    if(cmp!=0&&cmp1!=0)
    {
        strcpy(nc“.mps“);
        strcat(nbnc);
        if((fpw=fopen(nb“w“))==NULL)
        {
            printf(“ Don‘t open the output MPS-format file %s !“nb);
            exit(1);
        }
    }
    else 
    {
        strcpy(nc“.txt“);
        strcat(nbnc);
        if((fpw=fopen(nb“w“))==NULL)
        {
            printf(“ Don‘t open the output brief-format file %s !“nb);
            exit(1);
        }
    }
    
    isum=mm+nn ;
    jsum=mm*nn ;
    obj=calloc(jsum+1sizeof(double));
    val=calloc(isum+1sizeof(double));
    x1=calloc(mm+1sizeof(double));
    x2=calloc(mm+1sizeof(double));
    x3=calloc(nn+1sizeof(double));
    x4=calloc(nn+1sizeof(double));
    tta1=time(NULL);
    srand(li);
    ign=rand()%3 ;
    if(ign)
    {
        if(ign==1)
        {
            for(i=1;i<=jsum;i++)
            {
                u1=1+(double)exp(1+fabs(cos(li+5)+sin(8+li*i)))*(double)tan(li+fmod(i10+8*sin(i*li)));
                obj[i]=(double)floor(fabs(u1))+1 ;
            }
            for(jj=1;jj<=mm;jj++)
            {
                u1=0 ;
                

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     245813  2013-10-27 11:10  随机数据发生器.exe

     文件      53248  2013-10-28 09:28  图形展示软件.exe

     文件     274483  2013-10-27 08:39  运输问题求解.exe

     文件    2613004  2013-10-28 09:19  超级算法介绍.pdf

     文件       9103  2013-10-27 11:10  随机数据发生器.c

----------- ---------  ---------- -----  ----

              3195651                    5


评论

共有 条评论