QQ登录

只需要一步,快速开始

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

【讨论】新手求助:关于lingo的wrap函数

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

1

主题

4

听众

29

积分

升级  25.26%

该用户从未签到

新人进步奖

跳转到指定楼层
1#
发表于 2009-4-22 11:37 |只看该作者 |正序浏览
|招呼Ta 关注Ta
本帖最后由 厚积薄发 于 2010-1-26 21:10 编辑 $ l( w6 _3 q; J' M- S

6 p1 i$ P7 X3 C& x看到一个题:3 n  e0 s4 O8 F
职员时序安排模型  ) E- f; O" u3 I  F" A. N0 E( k1 o4 M
一项工作一周 7 天都需要有人(比如**工作) ,每天(周一至周日)所需的最少职员数为 20、16、13、16、19、14 和 12,并要求每个职员一周连续工作 5 天,试求每周所需最少职员数,并给出安排。注意这里我们考虑稳定后的情况。 4 E0 c0 ]: R3 ^/ m8 x
model:
5 J4 @9 ?9 X* Y% g! |sets: ; Y  _! d$ E* L6 M
  days/mon..sun/: required,start; $ g% }$ R7 F% U# D3 p9 i. S) q
endsets $ u9 V0 i" ^5 q+ @
data: 2 D8 [. e2 F6 R6 {8 f
  !每天所需的最少职员数;
" f1 `! t( B3 w/ A$ T8 w3 S& Z- ^  required = 20 16 13 16 19 14 12;  2 i7 h& L6 _( N9 b/ i5 m: X7 A
enddata ; }2 t% m' Y5 ~) H% g
!最小化每周所需职员数; ' _6 F) `# T5 c- x# b3 ?& |
  min=@sum(days: start); & ]! C1 t- n% c9 |7 m" l( e
  @for(days(J): 7 ~8 R) H- ?* i% ?& r- S6 Y
    @sum(days(I) | I #le# 5:
: I' e. @0 }9 G" K3 l: c2 F+ p, J      start(@wrap(J+I+2,7))) >= required(J)); * t3 D$ P( @8 t  j; Z
end
1 z& x( o  ^' A! \/ i) d# c7 h3 R$ R
, M3 Y* ~; m# k- h4 \$ X' I) @: U其中@sum(days(I) | I #le# 5:
0 q1 z3 Q4 A5 q$ o      start(@wrap(J+I+2,7))) >= required(J)); 是什么意思啊?我知道比如周一要排的人要从上个周四算起,但是不知道wrap中J+I+2和7各代表什么意思啊?还有这个函数怎么用啊?$ x8 z$ B! |3 F6 h5 c* }3 t
请各位帮忙,谢谢了!
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
enqi999        

0

主题

12

听众

74

积分

升级  72.63%

  • TA的每日心情
    奋斗
    2015-1-5 18:43
  • 签到天数: 1 天

    [LV.1]初来乍到

    社区QQ达人

    回复

    使用道具 举报

    dirk190        

    4

    主题

    11

    听众

    41

    积分

    升级  37.89%

  • TA的每日心情
    奋斗
    2014-9-24 22:31
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    自我介绍
    在校学生
    追梦者 发表于 2009-8-13 10:27 $ }' R' j9 J$ h( b/ @' d
    小弟与上面这位仁兄的理解稍有不同,英美中星期表示与我们不同,我们将星期一看成第一天,而他们则是将星 ...
    5 J# Z9 S6 N" e* J5 z& o/ t/ g; b
    换成1到7 结果相同的
    回复

    使用道具 举报

    9

    主题

    7

    听众

    188

    积分

    升级  44%

  • TA的每日心情
    慵懒
    2013-8-23 15:15
  • 签到天数: 84 天

    [LV.6]常住居民II

    自我介绍
    我想参加明年的数模竞赛

    群组: 西安交大数学建模

    群组: 数学建摸协会

    群组: 英语科技论文写作实训

    追梦者 发表于 2009-8-13 10:27
    , ^4 Q+ j0 }, h* \/ I小弟与上面这位仁兄的理解稍有不同,英美中星期表示与我们不同,我们将星期一看成第一天,而他们则是将星 ...

    0 R, d" d$ s$ l/ X我也觉得不用+1啊,
    回复

    使用道具 举报

    5

    主题

    4

    听众

    127

    积分

    升级  13.5%

  • TA的每日心情
    擦汗
    2012-5-15 12:46
  • 签到天数: 34 天

    [LV.5]常住居民I

    自我介绍
    我想要参加数模竞赛,希望大家多多交流
    刘振 发表于 2011-8-12 20:01 4 `5 w' c2 b+ d6 w4 A( L0 V' L0 f
    model:
    # a, p, L  j3 z0 asets: : L8 r5 p. M- ~7 o$ ]' t' k
    days/mon..sun/: required,start;

    7 V1 r" e+ Y( d3 `! K2 @对一下做下调整,便于理解0 g0 o2 w5 _+ Y

    9 \$ L- w7 d2 L, Tmodel: . w8 k1 S' _( _  r
    sets: : q  L. A1 w6 `6 d! Z$ K( g0 Y) u0 h, F8 k4 x- G
    days/mon..sun/: required,start;
    % H7 f4 z0 p/ W$ W: X- m2 |endsets - h  W) ]$ D9 O5 I2 ~) H  K
    2 O' h- \1 B7 v5 g data:
    3 _, [* }, B: l; y) Z. o!每天所需的最少职员数; ( I# u! Z: S* O+ N% C" ?6 L3 Z* z
    required = 20 16 13 16 19 14 12; ; }: G' I5 C3 z! F( \' p" b0 `5 {# a( Q6 K1 r/ {
    enddata   ]- t4 R' b. j  e9 q% Z6 W5 E5 o% w& Z
    !最小化每周所需职员数; . z4 K' V6 u5 \9 I. X% C0 \& H
    4 g, n4 y9 O; z6 y) G' L min=@sum(days: start); ' I; Q1 W+ B, _8 @/ v5 }
    @for(days(J):
    ' j4 E/ U7 n3 K! ?+ ~4 n; n    @sum(
    ! X0 h' \2 j, O9 B             days(I) | I #le# 5:
    3 d! C5 t( R$ I- f' T9 d             start(@wrap(J+I+2,7))
    1 z' Z; V  Y+ q' w1 E( x6 O* O             ) >= required(J)); 3 X' k& |8 E; P; x& Q
    end: b7 Z5 u9 f# h# F  j4 ]# C3 P9 }! m

    3 c+ Q( S$ g% D( ~* f, t& \2 Q9 u
    回复

    使用道具 举报

    ehi28        

    0

    主题

    4

    听众

    140

    积分

    升级  20%

    该用户从未签到

    回复

    使用道具 举报

    0

    主题

    4

    听众

    65

    积分

    升级  63.16%

    该用户从未签到

    回复

    使用道具 举报

    成城        

    0

    主题

    2

    听众

    120

    积分

    升级  10%

  • TA的每日心情
    郁闷
    2011-9-11 00:41
  • 签到天数: 7 天

    [LV.3]偶尔看看II

    自我介绍
    没有最好只有更好
    回复

    使用道具 举报

    刘振        

    0

    主题

    2

    听众

    11

    积分

    升级  6.32%

  • TA的每日心情
    郁闷
    2011-9-9 20:51
  • 签到天数: 1 天

    [LV.1]初来乍到

    回复

    使用道具 举报

    刘振        

    0

    主题

    2

    听众

    11

    积分

    升级  6.32%

  • TA的每日心情
    郁闷
    2011-9-9 20:51
  • 签到天数: 1 天

    [LV.1]初来乍到

    model: . d4 |" U4 D' t
    sets: * a& |1 t/ I/ \4 O9 i6 Z  Z
    days/mon..sun/: required,start; 5 Z0 b1 e! C: A
    endsets . Z# K; k. z" F
    data:
    . h$ z% v' X9 X6 f! _# J& I7 Z!每天所需的最少职员数;
    ( @/ Z# f5 p* E+ s! B/ `% vrequired = 20 16 13 16 19 14 12;
    4 m' ?* A% I0 O7 @/ l* Menddata ' h' [' M4 q9 f* J4 h$ Z
    !最小化每周所需职员数;
    ( Q" B" m; }5 D# ~2 e3 Wmin=@sum(days: start); 3 j9 [$ T/ ~- [- _& u
    @for(days(J):   C- Y, x, i& @5 H) d
        @sum(days(I) | I #le# 5:
    ; @2 |! [0 W* R& n      start(@wrap(J+I+2,7))) >= required(J));   e- ]4 w, @- W
    end
    . A; b& R! k" P# i& W( @
    0 ]) F$ F' U4 G& o  z5 }( N$ z3 V7 ~, E解释下:% j" K8 I6 E9 v5 c" t; a
    @for(days(J):
    3 H) n9 N( J! \0 Z5 A5 {6 s    @sum(days(I) | I #le# 5: & @8 |  n5 e$ C' F; d0 \. g) o* S0 E
          start(@wrap(J+I+2,7))) >= required(J));
    ( e4 T+ C  F6 W3 i2 t; L4 w7 }" s. X, I; g1 [9 q% C
    当day(J)为1时,day(I)=1,2,3,4,5.由于7为循环周期,故@warp(J+I+2)返回的值是4,5,6,7,1的职员和.当day(J)为2时,@warp(J+I+2)返回的值是5,6,7,1,2的职员和,以此类推。
    # {# h" s/ ]5 E" P3 @) y" ^3 A
    2 N& k8 p' l* m% o2 A! p& `网上有一种说法是,英美中星期表示的不同,中国将星期一看成第一天,而国外则是将星期日看成第一天。在lingo中sun就表示第一天,用数字0标识。因此@wrap(index,limit)的用法就是index模limit再加1。将上面的程序中的集修改为$ A9 t( M: `; O$ c( E5 N! ~) @$ {
    9 d) |/ }( S* X* a) }$ ^1 E8 V2 q

    ! u' c: m4 S) Q( b' F# hsets:
    0 Z' x& J( X7 r! `; v8 Edays/1 2 3 4 5 6 0/: required,start;% C9 q; c. P$ q; W# `! l
    endsets
    " {% a! Z3 _" R8 L; i6 M
    $ i$ C2 e* N7 o& _7 S% g, f
    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-9-27 18:21 , Processed in 0.734024 second(s), 103 queries .

    回顶部