例析0-1整数规划及隐枚举法的应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例析0-1整数规划及隐枚举法的应用
自主招生近年来成为各大高校又一招纳人才的举措,面试在自主招生中扮演着越来越重要的角色,考生面试的成绩不容忽视。因此如何确定面试专家的分配方案,使录取工作真正公平合理的进行,是各大高校积极考虑的问题。本文通过采用0-1整数规划及隐枚举法建立相关模型,较好地解决了这一问题。
1 预备知识简介
1.1 线性规划[1]
在人们的生产实践中,经常会遇到如何利用现有资源来安排生产,以取得最大经济效益的问题。此类问题构成了运筹学的一个重要分支——数学规划,而线性规划则是数学规划的一个重要分支。若在线性规划模型中,变量限制为整数,则为整数线性规划。0-1整数规划是整数规划中的特殊情形,它的变量仅取0或1。合理地引用0-1规划能够容易且高效率地求解相关问题。
1.2 隐枚举法[2]
隐枚举法是Balas E在1965年提出的,是求解0-1规划问题的一种有效方法。它只检查一部分变量组合,在这过程中根据已有信息自动舍弃许多不可能成为最优解的组合,求得最优解,从而大大减少了工作量。隐枚举法只需比较目标函数在小部分组合点上的取值大小,就能求得最优解和最优值。
2 问题描述与建模
2.1 问题描述
某高校采用通过专家面试的方式进行自主招生,经过初选合格进入面试的考生有N人,拟聘请老师M人进行面试。每位学生要分别接收“面试组”每位老师的单独面试,每个面试组由4名老师组成。已知要求面试不同考生的“面试组”成员不能完全相同。试求在考生数N已知的条件下,聘请老师数M至少应为多大,才能做到任两位学生的“面试组”都没有两位面试老师相同。
2.2 数学建模
该问题是一个单目标规划问题,解决的是满足一定约束条件要求,计算在给出一定的学生人数下,所需要教师的最少人数。
根据实际情况分析,一般面试学生的个数要远大于教师的个数。因为教师人数较少,容易进行分组(即按照约束条件将教师每4人分成一组),满足约束条件的情况下,所能组合的最大组数目即可面试学生的最大人数[3~4]。因此,我们改变优化变量,当教师数目M一定的情况下最多可面试的学生个数,即求max N。
(1)设代表第j个老师面试第i个学生,表示第j个老师不面试第i个学生,表示第j个老师面试第i个学生,用数学语言表达即:
(为0-1变量)。
(2)每个学生只能接受四名老师面试,转化成数学表达式为:
。
(3)任意两位学生的“面试组”不能有两个老师相同的情形,转化为如下数学表达式:≤1;,其中k表示第k个老师,、是0-1变量[5]。
通过以上3步的模型准备,可建立如下单目标规划模型:
由于是未知数,所以没有办法使用常规的优化算法求出具体的值。这里采用近似求解法,即运用隐枚举法求得变量取值为0、1的最优组合,从而得到最优的分配方案[6~7]。即通过列举一定的值,求出相应的最优的值,然后通过曲线拟合的方法求出和的近似表达式,从而求出考生数为时,至少需要聘请的老师数。
列举值,求相应的最优的值的算法由以下步骤实现:
第一步:首先对M位教师每四人一组进行组合,求出所有组合项为,把所有项按递增方式排列成序列;
第二步:从第一项开始,逐次扫描后面所有项,如果后面项同第一项有两个或超过两个数字相同的就将其删除,这样形成了一个新的序列;
第三步:从的第二项开始,逐次扫描后面所有项,如果后面项同第二项有两个或超过两个数字相同的就将其删除,这样形成了一个新的序列,然后从的第三项开始,逐次扫描后面所有项,如果后面项同第三项有超过两个数字相同的就将其删除,这样形成了一个新的序列,依次类推,直到搜索完成。
最后,通过编程实现该算法,将得到的数据进行拟合,即可得到和的近似表达式。
3 结语
通过0-1规划、计算机搜索、隐枚举法的综合运用,不仅能很好地解答学生面试的问题,而且随着聘用面试老师M和参加面试学生N的值的增大,该方法能够得到较大范围的推广与应用。在实际操作中,需要充分考虑面试中其他因素来重新建模,并根据实际中的具体情况设计相应的面试流程,从而可以较好地实现面试工作的均衡性和公平性。
参考文献
[1] 赵静,但琦.数学建模与数学实验(第3版)[M].北京:高等教育出版社,2003,6.
[2] 陈理荣.数学建模导论[M].北京:北京邮电大学出版社,1999.
[3] 曹华林,邵常磊,连加俊.学生面试问题[J].科技信息,2007,34:27~28.
[4] 吴值明,邹贇波,康兴挡.学生面试问题[J].数学的实践与认识,2007,37(14):138~140.