QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 1381|回复: 1
打印 上一主题 下一主题

請問在lingo8.0程式語法可以跑 但轉換到lingo12卻無法跑 請問哪裡要修正

[复制链接]
字体大小: 正常 放大
tommy0507        

1

主题

12

听众

5

积分

升级  0%

  • TA的每日心情
    开心
    2015-3-1 18:04
  • 签到天数: 1 天

    [LV.1]初来乍到

    自我介绍
    你好我是TOmmy
    跳转到指定楼层
    1#
    发表于 2015-3-1 15:31 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    本帖最后由 tommy0507 于 2015-3-1 16:22 编辑

    程式語法如下    不知道lingo8升級到lingo12怎麼會跑不出來
    在lingo8可以跑出結果    但lingo12一直顯示錯誤
    因為已經使用win8如果灌lingo8  所以只能使用lingo12
    請各位大神們    幫忙一下



    !================================================;
    Model:
    Sets:                                                           !設定巨集開始;
    people/1..28/:i;                                            !輪班人員(i=1~28);
    job/1..3/:j;                                                  !勤務模式(j=1~3);
    timezone/1..3/:k;                                          !出勤時段(k=1~3);
    day/1..7/:d;                                                 !每周有7天(d=1~7);
    PP(Job,Timezone):p;                                    !勤務需求人力pjk;
    XX(People,Job,Day,Timezone):x;                    !決策變數x(i,j,d,k);
    YY(People,Day):y;                                        !決策變數y(i,d);                        
    Endsets
    !================================================;
    Data:
                     !設定常數;
    p=@OLE('d:\Excel.xlsx','pjk');   
                     !引入需求人數;
        @OLE('d:\Excel.xlsx','xijdk')=x;
                     !引出執行結果;   
                                          
    W1=1;         !k=1 早班加權*1;
    W2=2;         !k=2 晚班加權*2;
    W3=3;         !k=3 大夜班加權*3;

    Enddata            
                !設定資料結束;      
    !================================================;
    Min=Z-W;
                !每位輪班人員出勤次數之最大平均數(3-1);     
    @for(people(i):                                                                                               <===這裡一直顯示錯誤
      @sum(XX(i,j,d,k)|k#eq#1:x(i,j,d,k))*W1+
        @sum(XX(i,j,d,k)|k#eq#2:x(i,j,d,k))*W2+                                                      
          @sum(XX(i,j,d,k)|k#eq#3:x(i,j,d,k))*W3<=Z);
                   !最大排班次數小於等於Z(3-2);

    @for(people(i):                                                                                                <===如果忽略前面  這裡也會
      @sum(XX(i,j,d,k)|k#eq#1:x(i,j,d,k))*W1+                                                                 基本上以下都會
        @sum(XX(i,j,d,k)|k#eq#2:x(i,j,d,k))*W2+                                                              但lingo8卻可以出來
          @sum(XX(i,j,d,k)|k#eq#3:x(i,j,d,k))*W3>=W);
                   !最大排班次數小於等於Z(3-2);

    @for (people(i):
      @for(day(d):
         @sum(XX(i,j,d,k):x(i,j,d,k))<=1));  
                  !每天每人僅能一種勤務模式(3-3);
      
    @for(people(i):
        @for(day(d)|d#le#6:
           @sum(Job(j):x(i,j,d,3)+x(i,j,d+1,1))<=1));  
                  !每日大夜班之次日不得排列早班(3-4);

    @for(people(i):
        @sum(Job(j):x(i,j,7,3)+x(i,j,1,1))<=1);
                  !每周最後一日大夜班次日不得排列早班(3-5);

    @for(people(i)|i#le#14:
        @for(day(d):                          
            @sum(Timezone(k):x(i,3,d,k))=0));
                  !正職人員可任職之限制(3-6);
    @for(people(i)|i#ge#15:
        @for(day(d):                          
            @sum(Timezone(k):x(i,1,d,k))=0));
                   !約僱人員可任職之限制(3-7);

    @for(job(j):
    @for(day(d):
      @for(Timezone(k):
       @sum(XX(i,j,d,k):x(i,j,d,k))>=p(j,k))));
                 !各時段人力需求限制(3-8);

    @for(people(i):
        @sum(XX(i,j,d,k):x(i,j,d,k))<=5);                                                            
                 !每人排程內不超過五天班 (3-9);  

    !================================================;
    !決策變數Xijdk,屬於0或1的限制;
    @for(people(i):
        @for(job(j):
            @for(Timezone(k):
                @for(day(d):
                    @bin(x(i,j,d,k))))));   

    @for(people(i):
        @for(day(d):
            @bin(y(i,d))));   
    !================================================;
    END


    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    liwenhui        

    70

    主题

    65

    听众

    5194

    积分

    独孤求败

  • TA的每日心情
    擦汗
    2018-4-26 23:29
  • 签到天数: 1502 天

    [LV.Master]伴坛终老

    自我介绍
    紫薇软剑,三十岁前所用,误伤义士不祥,乃弃之深谷。 重剑无锋,大巧不工。四十岁前恃之横行天下。 四十岁后,不滞于物,草木竹石均可为剑。自此精修,渐进至无剑胜有剑之境。

    社区QQ达人 邮箱绑定达人 发帖功臣 元老勋章 新人进步奖 风雨历程奖 最具活力勋章

    群组计量经济学之性

    群组LINGO

    没有发现明显的问题。你的@OLE中读入的excel文件如果能提供的话,我可以尝试帮你运行一下。
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2024-5-2 04:08 , Processed in 0.404021 second(s), 59 queries .

    回顶部