公平的席位分配

来源:互联网 发布:方维直播源码 下载 编辑:程序博客网 时间:2024/06/02 11:03

如果说数学有点用,估计大都表现在运筹学中吧。“公平”的席位分配首先本来就是不可能的,公平一般是无法达到的,我们只是尽量降低不公平度,那么我们怎么衡量不公平度呢。就像评价一个人,有不同的指标,不公平度也是一样,这里介绍一种相对合理易于接受,且好判断的方法。

问题表述

某学校三个系部学生共200名,(甲系100,乙系60,丙系40)代表会议共20席,按比例分配三个系分别为10、6、4席。老情况变为下列情况怎样分配才是最公平的,现因学生转系三系人数为103、63、34。
1. 问20席该如何分配 ?
2. 若增加21席又如何分配 ?

显然,因为无法整除无论如何分配都不公平。下面说一下几种策略。
1. 按班级人数比例乘以总人数,小数点大的分得多余的一个位子。

某校 甲系 乙系 丙系 共200人 103 63 34 人数比例 51.3 31.5 17 20席位 10.3 6.3 3.4 实际分配 10 6 4 21席位 10.82 6.62 3.57 实际分配 11 7 3

按照上述方法,会出现席位增多而丙系的席位却减少了一个的不合理现象,说明此方法并不合理。

模型建立

假设由A、B两个单位公平分配席位的情况,设两方人数p1,p2 ,分配到的席位为 n1,n2
1. p1n1=p2n2 公平,但是一般是不满足的。
2. p1n1>p2n2 对A不公平。
3. p1n1<p2n2 对B不公平。

绝对不公平度为

d=p1n1p2n2

但这样做还是有不足,例如
某两个单位的人数和席位为 n1=n2=10,p1=120,p2=100 算得 d=2.
另两个单位的人数和席位为 n1=n2=10,p1=1020,p2=1000 算得 d=2
但是显然,后一种方案,更公平。

因此,我们引入相对不公平度
1. 若 p1n1>p2n2

rA(n1,n2)=p1n1p2n2p2n2

2. 若 p1n1<p2n2
rB(n1,n2)=p2n2p1n1p1n1

我们的目标是让rA,rB(每种分配只会有一个)最小。

确定分配方案

假设当前 p1n1>p2n2 对A不公平。新增了一个席位。
1. 若 p1n1+1>p2n2 则A加1席
2. 若 p1n1+1<p2n2
若分配给A,则对B的不公平值(相对):

rB(n1+1,n2)=p2(n1+1)p1n21

若分配给B,则对A的不公平值(相对):
rA(n1,n2+1)=p1(n2+1)p2n11

rA(n1,n2+1)<rB(n1+1,n2)则席位分配给B,反之给A。
即令

Qi=p2ini(ni+1)

将席位分配给 Q 值较大者。

模型求解

先按照平均原则取整之后。分出了19席:n1=10,n2=6,n3=3
第20席:

Q1=103210×11=96.4,Q2=6326×7=94.5,Q3=3423×4=96.3

则分配:n1=11,n2=6,n3=3
第21席:Q1=80.4,Q2=94.5,Q3=96.3
则分配:n1=11,n2=6,n3=4.

本文参考文库1和文库2。修改了其中的错误,由于席位分配问题确实是一个经典问题,故在此记录。

欢迎访问http://dna049.com

0 0