QQ登录

只需要一步,快速开始

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

球的平均分配问题-------求解!

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

2

主题

2

听众

12

积分

升级  7.37%

该用户从未签到

新人进步奖

跳转到指定楼层
1#
发表于 2009-2-4 22:39 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
一共有N个球。其中,每个球上都印有编号,编号为1,2,……,M中的一个。同一编号的球允许重复,且重复个数任意。现在有X个容器,每个容器的容量Y不等。现在要把这N个球尽可能均匀地分配到X个容器中,分配过程要求满足以下条件:[N为可趋于正无穷的整数,M,X,Y均为>0的整数]
& k& D& D6 j; R1、公平性。即分配完毕后,每个容器中的球的个数与总球数之比和该容器容量与总容器容量之比相同。
8 |4 R9 D' O( U- T2、排它性。印有同一编号的球不允许放置到同一容器中,即每个容器中不允许出现编号同为s的球。! p. r5 R" m8 k8 V) t# [0 q9 l, W
3、动态性。容器个数可以动态增加或减少。当增加新容器时,要求把旧容器中的球移到新添加的容器中。总的移动的球的个数要求最少,且也要满足条件1和条件2。当减少容器时,要求把该容器中的球全部取出再均匀地放置到剩余的容器中。总的移动的球的个数要求最少,且也要满足条件1和条件2。5 c) r$ [" J$ ?# K/ V
例:现有20个球,编号分别为1,1,1,2,2,3,3,4,4,4,5,5,6,6,7,7,7,8,8,8。要放到4个容器中,每个容器的容量为4。则分配过程如下(按照上述条件人为地分配):2 C$ S7 s. ^: X# u: u
容器A:1-2-4-6-7
8 Y/ u3 G) G3 {2 I容器B:1-3-4-6-8# j6 o% J8 K7 L  f
容器C:1-3-5-7-8
1 @  ]. Z9 c7 D3 J容器D:2-4-5-7-8
, u7 O7 c3 n( l* ~8 F9 Z若增加新容器E,则将容器A-D中的球取出一部分放置到容器E中,取的球为4个(最少)且满足条件1、2。
- l. O9 z" t, P% n, m5 p0 ?. \容器A:1-0-4-6-7, Y3 q  ]1 w' w% |# v
容器B:0-3-4-6-8& t4 P& w( C) s* T0 b) @/ m
容器C:1-0-5-7-8
* b0 F- Y+ u3 X' o7 v4 M' ^- b容器D:2-4-5-0-8& f4 F! u  K1 i2 h% o! Y$ d
容器E:2-1-3-7                                (0表示已取走)( F0 z; B1 l0 \3 e
若减少容器C,则将C中的球取出放置到A、B、D中,为满足条件1、2,必要时可能需要从容器A、B、D中进行球的置换,但总的移动个数一定要最少。可能的分配方案为:# ?/ t, {8 u$ f- b& H% H
容器A:1-2-4-6-7-3-8& w8 ]+ E4 {+ o( Y. C" h
容器B:1-3-4-6-8-5-7
! o& L8 L. U+ U) F  x容器C:1-3-5-7-8  M, u$ h' J" p  i& U7 y
容器D:2-4-5-7-8-1+ I. F- m5 z9 t9 x0 d. `& P+ l
寻求此分配问题的数学模型。为了描述方便,只要满足条件1、2、3,各位前辈可以自行引入其它的定义与约束。条件1也可以理解为统计意义上的平均。) R9 s, C! K: O% t' H: d. b; m
为简化问题,也可将此问题分解成几个小模型分别求解。1、可先考虑每个容器容量相等的情况,即分配完毕后,每个容器中的球数相等(趋于平均),然后再考虑每个容器容量不等的情况。2、可先考虑同一编号球的重复个数固定的情况,即所有球的重复个数相同,然后在考虑每个球重复数不固定的情况。3、可以把1与2混合起来考虑,然后在复杂化。
1 i/ }. X. P4 a( p6 e8 |4 z1 }我的解法(能力有限,只能想到这里,抛砖引玉了):
$ M: o4 X* I+ M! e( y3 @9 |7 k. y设球的最大副本个数为n(即某编号为s的球有n个,其它编号球的重复个数都不大于n);设容器个数为y,且n<y;设r为同编号球组中的相对编号,即有5个编号为s的球,则r为1,2,3,4,5。设m为球的编号,则二元组<m,r>就可以唯一的标识出一个球。二元组中,同编号球的m值相同,但r不相同。现把组编号为m的球随机地对应容器y的一个排列,这样就可以保证条件1和2满足。4 J. D( t) T, k$ j$ L( L
设z=hash_func(m,r,y),其中,z>0且z<y;hash_func(m,r,y)为一个随机函数。则z就是<m,r>将要放入的容器。1 p! Z3 h0 d# Q2 G4 {* w- L# g, A
    不知道各位前辈有没有什么想法?能给出证明过程,从理论上证明条件1,2,3的满足最好了。
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
许振鹏 实名认证       

15

主题

2

听众

829

积分

升级  57.25%

  • TA的每日心情
    开心
    2014-4-12 18:46
  • 签到天数: 13 天

    [LV.3]偶尔看看II

    自我介绍
    学生

    群组东北三省联盟

    群组吉林大学建模讨论组

    群组哈尔滨工业大学建模团

    群组计量经济学之性

    群组Matlab讨论组

    回复

    使用道具 举报

    wajm_011 实名认证       

    3

    主题

    6

    听众

    1163

    积分

    升级  16.3%

  • TA的每日心情
    郁闷
    2012-2-14 03:19
  • 签到天数: 13 天

    [LV.3]偶尔看看II

    自我介绍
    建模,加油加油!!!

    群组数学建摸协会

    群组哈尔滨工业大学建模团

    群组东北三省联盟

    群组Matlab讨论组

    群组数学建模保研联盟

    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-6-10 06:37 , Processed in 2.938027 second(s), 67 queries .

    回顶部