- 42
- 0
- 约6.18千字
- 约 12页
- 2018-07-07 发布于湖北
- 举报
分班问题的拉斯维加斯算法实现butrun
分班问题的拉斯维加斯算法实现第35卷第4期2007年12PJ江汉大学(自然科学版)JournalofJianghanUniversity(NaturalSciences)Vo1.35NO.4Dec一2007分班问题的拉斯维加斯算法实现朱殉(江汉大学数学与计算机科学学院,武汉430056)摘要:介绍了蒙特卡罗和拉斯维加斯两种随机算法的概念,特征,比较了两种算法在求解时的区别.利用分班问题实例,探讨了两种算法的解决方法,并重点介绍了拉斯维加斯算法的实现方案.关键词:分班问题;LasVegas算法;MonteCarlo算法中图分类号:TP301.6文献标识码:A文章编号:1673.0143(2007)0056.04O引言一般算法的每一计算步骤都是确定的,而概率算法允许算法在执行过程中随机选择下一个计算步骤.在许多情况下,当算法在执行过程中面临一个选择时,随机性地选择比最优选择省时.因此概率算法可在很大程度上降低算法的复杂度.概率算法的一个基本特征是对所求解问题的同一实例用同一概率算法求解两次可能得到完全不同的效果.而这两次求解所需的时间甚至所得到的结果可能会有相当大的差别.蒙特卡罗(MonteCarlo)算法和拉斯维加斯(LasVegas)算法就属于此类.蒙特卡罗算法在一般情况下可以保证对问题的所有实例都以高概率求出正确解,但求出的这个解未必是正确的.求得正确解的概率依赖于算法所用的时间.算法所用的时间越多,得到正确解的概率就越高.这也正是蒙特卡罗算法的主要缺点.通常情况下,无法有效地判定所得到的解是否肯定正确.而拉斯维加斯算法不会得到不正确的解.一旦用拉斯维加斯算法找到一个解,这个解就一定是正确解.拉斯维加斯算法的一个显着特征是它所作的随机性决策有可能导致算法找不到所需的解.因此常用一个bool型函数表示拉斯维加斯型算法.与蒙特卡罗算法类似,拉斯维加斯算法找到正确解的概率随着它所用的计算时间的增加而提高.对于所求解问题的任一实例,用同一拉斯维加斯算法反复对该实例求解足够多次,可使求解失败的概率任意小.蒙特卡罗算法的关键是提高解的正确率,拉斯维加斯算法关键是提高解的成功率.根据问题自身的性质,可选择不同的算法解决.1分班问题描述在学校管理中常常要进行分班,具体做法通常是:新学期开学,学校招收了一批新生,学生人数未定(比如100人),男女生未定(如男生57人,女生43人),考试科目有语文,数学和总分,对这些学生进行分班(分班数未定).其中附加参考条件为:有部分学生要住校(比如32人),有部分不住校,有些学生是干部(12人).要求分班的结果满足以下几个条件:(1)分班后各个班级总分的平均分差值在0~2.0间;(2)分班后各班人数尽量相等,最多相差1人,男女生人数最多相差1人;(3)分班后各个班级的各科平均分差值在0~3.0间;(4)分班后各个班级的住校人数,班干部人数最多相差1人.其中,条件(1)和条件(2)必须要满足,条件(3)和条件(4)最好满足.根据上面列出的数据和条件进行分班,其方案之一如表1所示.收稿日期:2007—04—06作者简介:朱殉(1976一),女,湖北武汉人,讲师,主要从事软件理论研究.2007年第4期朱殉:分班问题的拉斯维加斯算法实现57表l一种满足条件的分班方案2蒙特卡罗算法解决方案若采用蒙特卡罗算法,算法可分4步:①随机产生一个分班的方案先符合条件(2);②检验是否符合第一个条件,若符合执行③,否则执行①;③计算条件(3),(4)的参数,作为两个参考的目标函数,可以构造两个系数做加权,以确定条件(3)和条件(4)的优先级别,从而得到一个总目标,以此目标作为最终的参考;④由上面得到一个目标,通过大量的模拟可以得到很多目标值,选择其中最好的目标函数值作为最终的方案.定义学生的数据结构如下,并事先给定数据:structStudent{intchinese;//语文intmath;//数学intin-residence;//住校intleader;//干部intsex;//性别}student[120];再建立一个分类表,处理性别问题.//{段设男102人,女98人intSex[2][60];Sex[O][O]…一Sex[0][59]男生Sex[1][O]….Sex[I][59]女生数组上存储学生的ID号.①满足条件(2)男女生人数最多相差1人.在这个二维数组中随机抽取学生,生成classl:在Sex[0][0]….Sex[0][56]中随机产生l3个id,作为l班男生;在Sex[1][0]一.Sex[I][42]中随机产生l2个id,作为1班女生;以此类推,4个班级就建立好了.数据可以存储在Class4[25】的数组中,存储的都是学生的id号.②考虑班级的总平均分条件.班级建立后,再计算出总平均分.根据计算结果判断
您可能关注的文档
最近下载
- 电缆、电线绝缘电阻测试表.xls VIP
- 九年级化学常用仪器资料.ppt VIP
- ISOTS22002-1-2009 食品安全前提方案 食品生产(中英对照)-20141027.pdf VIP
- 深度解析(2026)《JBT 14336-2021矿用自进式中空注浆锚杆》.pptx VIP
- 新人教版七年级下册语文【1--25课】全册 教学设计.doc VIP
- 引入境外战略投资者是否提升了公司价值.pdf VIP
- 富士(FUJI)G11SP11S系列变频器使用说明书.doc
- 《固体废物处理与资源化》全套教学课件.pptx
- 《JBT 14336-2021矿用自进式中空注浆锚杆》专题研究报告.pptx
- 实施指南(2025)《JBT 14336-2021 矿用自进式中空注浆锚杆》.pptx VIP
原创力文档

文档评论(0)