< >有一场由四个项目(高低杠、平衡木、跳马、自由体操)组成的女子体操团体赛,赛程规定:每个队至多允许 10 名运动员参赛,每一个项目可以有 6 名选手参加。每个选手参赛的成绩评分从高到低依次为: 10 ; 9.9 ; 9.8 ; … ; 0.1 ; 0 。每个代表队的总分是参赛选手所得总分之和,总分最多的代表队为优胜者。此外,还规定每个运动员只能参加全能比赛(四项全参加)与单项比赛这两类中的一类,参加单项比赛的每个运动员至多只能参加三项单项。每个队应有 4 人参加全能比赛,其余运动员参加单项比赛。 <BR> 现某代表队的教练已经对其所带领的 10 名运动员参加各个项目的成绩进行了大量测试,教练发现每个运动员在每个单项上的成绩稳定在 4 个得分上(见下表),她们得到这些成绩的相应概率也由统计得出(见表中第二个数据。例如: 8.4 ~ 0.15 表示取得 8.4 分的概率为 0.15 )。试解答以下问题: <BR> 1 、每个选手的各单项得分按最悲观估算,在此前提下,请为该队排出一个出场阵容,使该队团体总分尽可能高;每个选手的各单项得分按均值估算,在此前提下,请为该队排出一个出场阵容,使该队团体总分尽可能高。<BR>这道我用lingo解,加了有四人参加全能的条件后就无法求了,请各位高手帮忙看看这个四人参加全能的约束如何表达,还想请教一下,如何看lingo解规划的过程,拜托了.<BR>下面是我的lingo程序:</P>
< >model:<BR>sets:<BR> object/1..4/;<BR> athlete/1..10/;<BR> result(athlete,object):x,p;<BR> all/1..10/:y<BR>endsets<BR>data:<BR> <BR> p=8.4 8.4 9.1 8.7<BR> 9.3 8.4 8.4 8.9<BR> 8.4 8.1 8.4 9.5<BR> 8.1 8.7 9.0 8.4<BR> 8.4 9.0 8.3 9.4<BR> 9.4 8.7 8.5 8.4<BR> 9.5 8.4 8.3 8.4<BR> 8.4 8.8 8.7 8.2<BR> 8.4 8.4 8.4 9.3<BR> 9.0 8.1 8.2 9.1;<BR>enddata<BR>@for(athlete(i):<BR> c=@sum(object(j): x(i,j));<BR> y(i)=@if(c #eq# 4,1,0);<BR>);<BR>a=@sum(all:y);<BR><FONT color=red>a=4;/就是这里,不加能求,加了就求不出了/</FONT><BR>@for(object(j):<BR> b=@sum(athlete(i): x(i,j));<BR> b<=6;<BR>);<BR>@for(result: @bin(x));<BR>max=@sum(result: p*x);<BR>end<BR></P> |