黑白球三维排列游戏

上传人:仙*** 文档编号:30494872 上传时间:2021-10-10 格式:DOC 页数:16 大小:167.50KB
返回 下载 相关 举报
黑白球三维排列游戏_第1页
第1页 / 共16页
黑白球三维排列游戏_第2页
第2页 / 共16页
黑白球三维排列游戏_第3页
第3页 / 共16页
点击查看更多>>
资源描述
黑白球三维排列游戏一、问题提出(略).二、问题假设1将黑白球视作没有大小的点,将每个小方盒也视作一个点。三、符号说明: 0表示第i个盒子放白球,1表示第i个盒子放黑球;:0表示第j条直线上所有的球为相同颜色,1表示第j条直线上的球为不同颜色,j=1,2,27.四、问题分析与建模这虽然是一个排列游戏,但是其中蕴含有相当丰富的整数规划特性,因此在此讨论它。将14个黑球和13个白球放入333的三维阵中,其排列方式非常多,要想采用穷举法求解的原问题非常困难的。首先,我们对小方盒编号为1到27,具体的编号规则为参见图1。于是,对于每个小方盒,我们可以引入一个0-1变量:表示第i个盒子中装有白球,表示第i个盒子中装有黑球,如此引入的01变量共有27个。并且由于黑球的个数为14,因此。1. 可能的直线对于此问题,首先需要知道:在这个333的三维阵中,哪些小方盒连接起来可以构成一条直线?这样的直线共有多少条?为了确定这些直线,我们首先考虑此333的三维阵的行、列和纵三个方向上的9个截面上的直线有哪些,然后考虑不全在任何一个截面上直线有哪些。与水平面平行的截面有三个,见图2。对应于每一个截面上的三点共线的情况共有8种,分别记为:S3=19,20,21,22,23,24,25,26,27,19,22,25,20,23,26,21,24,27,19,23,27,21,23,25;S2=10,11,12,13,14,15,16,17,18,10,13,16,11,14,17,12,15,18,10,14,18,12,14,16;S1=1,2,3,4,5,6,7,8,9,1,4,7,2,5,8,3,6,9,1,5,9,3,5,7。与水平面相垂直的截面共有6个,见图3和图4。与图3对应的每一个截面上共线的三点情况也有8种,由于它们与图1中的情况会出现重叠,去掉重叠的三种情况,新增加的三点共线情况各有5种,分别记为:S4=1,10,19,2,11,20,3,12,21,1,11,21,3,11,19;S5=4,13,22,5,14,23,6,15,24,4,14,24,6,14,22;S6=7,16,25,8,17,26,9,18,27,7,17,27,9,17,25。与图4对应的每一个截面上共线的三点情况也有8种,由于它们与图1和图2中的情况会出现重叠,去掉重叠的6种情况,新增加的三点共线情况各有2种,分别记为:S7=1,13,25,7,13,19;S8=2,14,26,8,14,20;S9=3,15,27,9,15,21。三个点不同在上面所介绍的任何一个或者两个截面的情况参见图5。新增加的三点共线的情况有4种,记为:S10=1,14,27,3,14,25,9,14,19,7,14,21。综合前面的分析,在此333的三维阵中,所有能够共线的三点共有49种情况,它们组成49条不同的直线,用S表示,则.2. 成为直线的条件根据前面分析的可能的直线的结果,我们来确定当放入黑白球之后,三个相同颜色的球在同一直线上满足的条件。设第j条直线上的三个盒子的编号分别为:j1,j2,j3,记为 ,在直线j上三个盒子中放入的球的颜色情况为:。引入0-1变量:表示第j条直线上的三个球的颜色不完全相同,表示第j条直线上的三个球的颜色完全相同。这样原问题转化为求一种黑白球的方法,使得取得最小值。并且有约束: (1) (2)此即放入黑白球之后,每条直线上的所有球体颜色相同的条件为(1),每条直线上的所有球体颜色不相同的条件为(2)。此时如何将引入到(1)或者(2)中右边的表达式中,成为我们考虑的重点。为了将引入表达式(1)中,变成 (3)或者将引入表达式(2)中,变成 (4) 注1:此处(3)和(1)并不等价,但是考虑到我们的目标为,这样做也是可以的;注2:此处(4)和(2)是等价的,但是与(3)相比增加了98个约束条件;注3:在建立模型时,(3)和(4)这两组约束条件只需要一组即可。3. 数学模型根据前面的分析,我们可以建立如下的01规划的数学模型:该模型是一个含有76个01变量,99个约束条件的01整数规划问题。五、模型求解1.求解方法理论上,对于01整数规划问题可以采用基于线性规划的分枝定界法求解。详细算法参见1。2.计算结果利用数学软件Lingo中已有的关于分枝定界法的实现,可以方便地求出原问题的解,程序及程序输出见附录1。根据我们计算出来的结果可知,相同颜色的最少的直线数为4条,并且有许多的备择解,下面给出其中一种解的图形表示(图6),图中灰色的盒子表示放黑球,白色的盒子放置白球。黑白球按照图6所示的放置方法,所形成的四条直线为:4,13,22,10,13,16全由白球相连构成;6,15,24,12,15,18全由黑球相连构成。六、模型推广及讨论(略).七、参考文献1 八、附录1. 程序model:Sets:LineCols/1.3/:;LineRows/1.49/: r;Links(LineRows,LineCols):Lines;Balls/1.27/:delta;endsetsmin=sum(LineRows(i):r(i);sum(Balls(i):delta(i)=14;for(LineRows(i):sum(LineCols(j):delta(Lines(i,j)+r(i)=1);for(LineRows(i):sum(LineCols(j):delta(Lines(i,j)-r(i)=2);for(LineRows(i):bin(r(i);for(Balls(i):bin(delta(i);data:Lines=1 2 3 4 5 6 7 8 9 1 4 7 2 5 8 3 6 9 1 5 9 3 5 7 10 11 12 13 14 15 16 17 18 10 13 16 11 14 17 12 15 18 10 14 18 12 14 16 19 20 21 22 23 24 25 26 27 19 22 25 20 23 26 21 24 27 19 23 27 21 23 25 1 10 19 2 11 20 3 12 21 1 11 21 3 11 19 4 13 22 5 14 23 6 15 24 4 14 24 6 14 22 7 16 25 8 17 26 9 18 27 7 17 27 9 17 25 1 13 25 7 13 19 2 14 26 8 14 20 3 15 27 9 15 21 1 14 27 3 14 25 7 14 21 9 14 19;enddataend2. 输出结果 Global optimal solution found at iteration: 103652 Objective value: 4.000000 Variable Value Reduced Cost R( 1) 0.000000 1.000000 R( 2) 0.000000 1.000000 R( 3) 0.000000 1.000000 R( 4) 0.000000 1.000000 R( 5) 0.000000 1.000000 R( 6) 0.000000 1.000000 R( 7) 0.000000 1.000000 R( 8) 0.000000 1.000000 R( 9) 0.000000 1.000000 R( 10) 0.000000 1.000000 R( 11) 0.000000 1.000000 R( 12) 1.000000 1.000000 R( 13) 0.000000 1.000000 R( 14) 1.000000 1.000000 R( 15) 0.000000 1.000000 R( 16) 0.000000 1.000000 R( 17) 0.000000 1.000000 R( 18) 0.000000 1.000000 R( 19) 0.000000 1.000000 R( 20) 0.000000 1.000000 R( 21) 0.000000 1.000000 R( 22) 0.000000 1.000000 R( 23) 0.000000 1.000000 R( 24) 0.000000 1.000000 R( 25) 0.000000 1.000000 R( 26) 0.000000 1.000000 R( 27) 0.000000 1.000000 R( 28) 0.000000 1.000000 R( 29) 0.000000 1.000000 R( 30) 1.000000 1.000000 R( 31) 0.000000 1.000000 R( 32) 1.000000 1.000000 R( 33) 0.000000 1.000000 R( 34) 0.000000 1.000000 R( 35) 0.000000 1.000000 R( 36) 0.000000 1.000000 R( 37) 0.000000 1.000000 R( 38) 0.000000 1.000000 R( 39) 0.000000 1.000000 R( 40) 0.000000 1.000000 R( 41) 0.000000 1.000000 R( 42) 0.000000 1.000000 R( 43) 0.000000 1.000000 R( 44) 0.000000 1.000000 R( 45) 0.000000 1.000000 R( 46) 0.000000 1.000000 R( 47) 0.000000 1.000000 R( 48) 0.000000 1.000000 R( 49) 0.000000 1.000000 LINES( 1, 1) 1.000000 0.000000 LINES( 1, 2) 2.000000 0.000000 LINES( 1, 3) 3.000000 0.000000 LINES( 2, 1) 4.000000 0.000000 LINES( 2, 2) 5.000000 0.000000 LINES( 2, 3) 6.000000 0.000000 LINES( 3, 1) 7.000000 0.000000 LINES( 3, 2) 8.000000 0.000000 LINES( 3, 3) 9.000000 0.000000 LINES( 4, 1) 1.000000 0.000000 LINES( 4, 2) 4.000000 0.000000 LINES( 4, 3) 7.000000 0.000000 LINES( 5, 1) 2.000000 0.000000 LINES( 5, 2) 5.000000 0.000000 LINES( 5, 3) 8.000000 0.000000 LINES( 6, 1) 3.000000 0.000000 LINES( 6, 2) 6.000000 0.000000 LINES( 6, 3) 9.000000 0.000000 LINES( 7, 1) 1.000000 0.000000 LINES( 7, 2) 5.000000 0.000000 LINES( 7, 3) 9.000000 0.000000 LINES( 8, 1) 3.000000 0.000000 LINES( 8, 2) 5.000000 0.000000 LINES( 8, 3) 7.000000 0.000000 LINES( 9, 1) 10.00000 0.000000 LINES( 9, 2) 11.00000 0.000000 LINES( 9, 3) 12.00000 0.000000 LINES( 10, 1) 13.00000 0.000000 LINES( 10, 2) 14.00000 0.000000 LINES( 10, 3) 15.00000 0.000000 LINES( 11, 1) 16.00000 0.000000 LINES( 11, 2) 17.00000 0.000000 LINES( 11, 3) 18.00000 0.000000 LINES( 12, 1) 10.00000 0.000000 LINES( 12, 2) 13.00000 0.000000 LINES( 12, 3) 16.00000 0.000000 LINES( 13, 1) 11.00000 0.000000 LINES( 13, 2) 14.00000 0.000000 LINES( 13, 3) 17.00000 0.000000 LINES( 14, 1) 12.00000 0.000000 LINES( 14, 2) 15.00000 0.000000 LINES( 14, 3) 18.00000 0.000000 LINES( 15, 1) 10.00000 0.000000 LINES( 15, 2) 14.00000 0.000000 LINES( 15, 3) 18.00000 0.000000 LINES( 16, 1) 12.00000 0.000000 LINES( 16, 2) 14.00000 0.000000 LINES( 16, 3) 16.00000 0.000000 LINES( 17, 1) 19.00000 0.000000 LINES( 17, 2) 20.00000 0.000000 LINES( 17, 3) 21.00000 0.000000 LINES( 18, 1) 22.00000 0.000000 LINES( 18, 2) 23.00000 0.000000 LINES( 18, 3) 24.00000 0.000000 LINES( 19, 1) 25.00000 0.000000 LINES( 19, 2) 26.00000 0.000000 LINES( 19, 3) 27.00000 0.000000 LINES( 20, 1) 19.00000 0.000000 LINES( 20, 2) 22.00000 0.000000 LINES( 20, 3) 25.00000 0.000000 LINES( 21, 1) 20.00000 0.000000 LINES( 21, 2) 23.00000 0.000000 LINES( 21, 3) 26.00000 0.000000 LINES( 22, 1) 21.00000 0.000000 LINES( 22, 2) 24.00000 0.000000 LINES( 22, 3) 27.00000 0.000000 LINES( 23, 1) 19.00000 0.000000 LINES( 23, 2) 23.00000 0.000000 LINES( 23, 3) 27.00000 0.000000 LINES( 24, 1) 21.00000 0.000000 LINES( 24, 2) 23.00000 0.000000 LINES( 24, 3) 25.00000 0.000000 LINES( 25, 1) 1.000000 0.000000 LINES( 25, 2) 10.00000 0.000000 LINES( 25, 3) 19.00000 0.000000 LINES( 26, 1) 2.000000 0.000000 LINES( 26, 2) 11.00000 0.000000 LINES( 26, 3) 20.00000 0.000000 LINES( 27, 1) 3.000000 0.000000 LINES( 27, 2) 12.00000 0.000000 LINES( 27, 3) 21.00000 0.000000 LINES( 28, 1) 1.000000 0.000000 LINES( 28, 2) 11.00000 0.000000 LINES( 28, 3) 21.00000 0.000000 LINES( 29, 1) 3.000000 0.000000 LINES( 29, 2) 11.00000 0.000000 LINES( 29, 3) 19.00000 0.000000 LINES( 30, 1) 4.000000 0.000000 LINES( 30, 2) 13.00000 0.000000 LINES( 30, 3) 22.00000 0.000000 LINES( 31, 1) 5.000000 0.000000 LINES( 31, 2) 14.00000 0.000000 LINES( 31, 3) 23.00000 0.000000 LINES( 32, 1) 6.000000 0.000000 LINES( 32, 2) 15.00000 0.000000 LINES( 32, 3) 24.00000 0.000000 LINES( 33, 1) 4.000000 0.000000 LINES( 33, 2) 14.00000 0.000000 LINES( 33, 3) 24.00000 0.000000 LINES( 34, 1) 6.000000 0.000000 LINES( 34, 2) 14.00000 0.000000 LINES( 34, 3) 22.00000 0.000000 LINES( 35, 1) 7.000000 0.000000 LINES( 35, 2) 16.00000 0.000000 LINES( 35, 3) 25.00000 0.000000 LINES( 36, 1) 8.000000 0.000000 LINES( 36, 2) 17.00000 0.000000 LINES( 36, 3) 26.00000 0.000000 LINES( 37, 1) 9.000000 0.000000 LINES( 37, 2) 18.00000 0.000000 LINES( 37, 3) 27.00000 0.000000 LINES( 38, 1) 7.000000 0.000000 LINES( 38, 2) 17.00000 0.000000 LINES( 38, 3) 27.00000 0.000000 LINES( 39, 1) 9.000000 0.000000 LINES( 39, 2) 17.00000 0.000000 LINES( 39, 3) 25.00000 0.000000 LINES( 40, 1) 1.000000 0.000000 LINES( 40, 2) 13.00000 0.000000 LINES( 40, 3) 25.00000 0.000000 LINES( 41, 1) 7.000000 0.000000 LINES( 41, 2) 13.00000 0.000000 LINES( 41, 3) 19.00000 0.000000 LINES( 42, 1) 2.000000 0.000000 LINES( 42, 2) 14.00000 0.000000 LINES( 42, 3) 26.00000 0.000000 LINES( 43, 1) 8.000000 0.000000 LINES( 43, 2) 14.00000 0.000000 LINES( 43, 3) 20.00000 0.000000 LINES( 44, 1) 3.000000 0.000000 LINES( 44, 2) 15.00000 0.000000 LINES( 44, 3) 27.00000 0.000000 LINES( 45, 1) 9.000000 0.000000 LINES( 45, 2) 15.00000 0.000000 LINES( 45, 3) 21.00000 0.000000 LINES( 46, 1) 1.000000 0.000000 LINES( 46, 2) 14.00000 0.000000 LINES( 46, 3) 27.00000 0.000000 LINES( 47, 1) 3.000000 0.000000 LINES( 47, 2) 14.00000 0.000000 LINES( 47, 3) 25.00000 0.000000 LINES( 48, 1) 7.000000 0.000000 LINES( 48, 2) 14.00000 0.000000 LINES( 48, 3) 21.00000 0.000000 LINES( 49, 1) 9.000000 0.000000 LINES( 49, 2) 14.00000 0.000000 LINES( 49, 3) 19.00000 0.000000 DELTA( 1) 1.000000 0.000000 DELTA( 2) 1.000000 0.000000 DELTA( 3) 0.000000 0.000000 DELTA( 4) 0.000000 0.000000 DELTA( 5) 0.000000 0.000000 DELTA( 6) 1.000000 0.000000 DELTA( 7) 1.000000 0.000000 DELTA( 8) 0.000000 0.000000 DELTA( 9) 0.000000 0.000000 DELTA( 10) 0.000000 0.000000 DELTA( 11) 0.000000 0.000000 DELTA( 12) 1.000000 0.000000 DELTA( 13) 0.000000 0.000000 DELTA( 14) 1.000000 0.000000 DELTA( 15) 1.000000 0.000000 DELTA( 16) 0.000000 0.000000 DELTA( 17) 1.000000 0.000000 DELTA( 18) 1.000000 0.000000 DELTA( 19) 1.000000 0.000000 DELTA( 20) 1.000000 0.000000 DELTA( 21) 0.000000 0.000000 DELTA( 22) 0.000000 0.000000 DELTA( 23) 1.000000 0.000000 DELTA( 24) 1.000000 0.000000 DELTA( 25) 1.000000 0.000000 DELTA( 26) 0.000000 0.000000 DELTA( 27) 0.000000 0.000000 Row Slack or Surplus Dual Price 1 4.000000 -1.000000 2 0.000000 0.000000 3 1.000000 0.000000 4 0.000000 0.000000 5 0.000000 0.000000 6 1.000000 0.000000 7 0.000000 0.000000 8 0.000000 0.000000 9 0.000000 0.000000 10 0.000000 0.000000 11 0.000000 0.000000 12 1.000000 0.000000
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!