数学建模社区-数学中国

标题: 新人求教,谁能告诉我这个怎么做??? [打印本页]

作者: 我可以叫什么    时间: 2016-6-8 18:03
标题: 新人求教,谁能告诉我这个怎么做???
考虑校园内电缆铺设问题.设中心配电房位于某幢建筑内.有一些主干用户,位于不同的建筑内.为避免相互干扰,中心配电房与每个主干用户有一条专门的电缆相连.电缆均是铺设在地下管道内.为此需要铺设管道.中心配电房与不同主干用户间的电缆可以共用地下管道.假设已知中心配电房与哪些用户、以及哪些用户间可以铺设地下管道.电缆铺设的费用包括购买电缆线的费用,和铺设管道的费用, 它们均与长度成正比.希望寻找一种方案,使总费用尽可能少.( F0 q' z3 y& b- l7 R
现考虑以下问题:
: _" s- |% h: _6 Q8 B(1)设有6个用户,下表给出了中心配电房与哪些用户、以及哪些用户间可以铺设地下管道,以及它们间的距离.试建立数学模型和求解算法.问该模型和算法能否推广到用户数任意的一般情形.8 C. `1 y3 Y8 @
数据* U1 }+ K+ R: n% W* Z" \% W

- D9 m' F, ^3 \" @% v. E' O4 o9 b7 M) c; X4 f9 L. h* D

5 i8 M. k7 X9 o7 b4 A2 N4 @4 m
# Q# N0 W+ K# p# V
% R' X$ S5 a% j) A& t9 Q
7 C" P' q- C  j' j4 g1 s2 a1 z

5 w: V$ f  Z# |
' G, W  S; z  q
作者: 百年孤独    时间: 2016-6-8 18:05
以下是我的想法,可能有些不完善的地方,希望路过的大神可以加以指正。其实,这是典型的0-1整数规划问题,我们先定义自变量Xij=1(表示普pi和j之间建有管道)否则为0(即没有管道),这个变量X不能取0或1以外的任何数,根据你的表格(i,j)=(0,1)(0,2)(0,6)(1,3)(2,3)(2,4)(2,5)(2,6)(3,4)(4,5)(5,6);然后是这个规划的目标函数:因为费用与管道长度Pij成正比,所以可以直接设为:min Z=sum(Pij*Xij);最后是约束条件,这是最麻烦的地方,首先,不能多建,只能是6条,因为6条管道刚好可以将7个地点全部连通,所以:sum(Xij)=6,这样还远远不够,还要保证每一个地点都至少有一条管道通过,所以有以下七个不等式约束: X01+X02+X06>=1,X10+X13>=1,X20+X23+X24+X25+X26>=1,X31+X32+X34>=1,X42+X43+X45>=1,X52+X54+X56>=1,X60+X62+X65>=1(上面式子中,Xij=Xji,即X01与X10是一样的)。这样就构成了一个整数规划,求解方法可以用matlab或lingo软件。我的表达能力有限,不一定能让你明白,你也可以参考规划方面的书籍资料。( \" E7 A( h+ w6 c. F3 x

作者: 百年孤独    时间: 2016-6-8 18:05
以下是我的想法,可能有些不完善的地方,希望路过的大神可以加以指正。其实,这是典型的0-1整数规划问题,我们先定义自变量Xij=1(表示普pi和j之间建有管道)否则为0(即没有管道),这个变量X不能取0或1以外的任何数,根据你的表格(i,j)=(0,1)(0,2)(0,6)(1,3)(2,3)(2,4)(2,5)(2,6)(3,4)(4,5)(5,6);然后是这个规划的目标函数:因为费用与管道长度Pij成正比,所以可以直接设为:min Z=sum(Pij*Xij);最后是约束条件,这是最麻烦的地方,首先,不能多建,只能是6条,因为6条管道刚好可以将7个地点全部连通,所以:sum(Xij)=6,这样还远远不够,还要保证每一个地点都至少有一条管道通过,所以有以下七个不等式约束: X01+X02+X06>=1,X10+X13>=1,X20+X23+X24+X25+X26>=1,X31+X32+X34>=1,X42+X43+X45>=1,X52+X54+X56>=1,X60+X62+X65>=1(上面式子中,Xij=Xji,即X01与X10是一样的)。这样就构成了一个整数规划,求解方法可以用matlab或lingo软件。我的表达能力有限,不一定能让你明白,你也可以参考规划方面的书籍资料。+ B3 |* V* a2 d9 R* F

作者: madio    时间: 2016-6-11 20:07
百度的图片,看不到了,需要下载图片,再按照附件上传到论坛上6 h- i* J1 {& s% s





欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5