计算机科学与探索
主办单位:中国电子科技集团公司
国际刊号:1673-9418
国内刊号:11-5602/TP
学术数据库优秀期刊 《中文科技期刊数据库》来源期刊
       首 页   |   期刊介绍   |   新闻公告   |   征稿要求   |   期刊订阅   |   留言板   |   联系我们   
  本站业务
  在线期刊
      最新录用
      期刊简明目录
      本刊论文精选
      过刊浏览
      论文下载排行
      论文点击排行
      
 

访问统计

访问总数:24216 人次
 
    本刊论文
基于贪心算法的学生宿舍分配系统设计与实现

  摘 要:随着数字化校园进程的快速推进,科研和教学都进入了数字信息化管理时代,研究如何利用数字信息化的优势来高效管理高校后勤具有重要意义。本文设计了基于改进的贪心算法的智能宿舍分配系统,把选定的分配条件如作息时间、爱好、专业、个性等作为特征项,为每个特征项根据其在匹配中的重要程度赋予一定的权重,通过计算匹配度为学生进行宿舍分配,实现一个人性化的宿舍分配系统。在减少后勤人员的工作量、提高宿舍分配效率的同时,也有助于营造和谐的宿舍氛围。实现了学生管理的信息化、自动化,对于数字化校园的建设有一定的理论和现实意义。


  关键词:贪心算法;宿舍分配;数字化校园


  中图分类号:TP311


  随着高校招生规模的不断扩大,学生人数的急剧增加,住宿资源也愈发紧张,学生对宿舍分配与管理的要求也在不断地提高。同时,随着社会信息化发展步伐的加快,学校的管理和服务工作也需要越来越周到、全面、先进和高效。在校生的学历层次、文化水平、思想状态呈多样化、复杂化的趋势,学生对宿舍分配和管理的要求也在不断地提高。这使得管理工作变得越来越繁重复杂和琐碎。采用传统的手工模式进行管理,其效率低,易出错,利用现代信息技术来实现高校宿舍分配的智能化,不仅可以有效的降低分配的人力和时间成本,而且可以提高分配宿舍的质量和效率,更有益于加快数字化校园建设的步伐。也使得管理工作更加人性化,充分体现以人为本的管理理念和服务思想,不断提高服务质量,营造和谐的宿舍氛围为学生提供优质的学习生活环境。


  1 宿舍分配系统的需求分析


  宿舍分配系统的主要目的是使用先进的信息技术来实现学生宿舍分配相关基础数据的处理,宿舍的分配以及宿舍资源的查询等功能。学生宿舍分配系统主要包括如下的需求:


  (1)能够对全校的宿舍资源及宿舍分配情况进行统一管理,并保证宿舍分配的高效性与准确性。


  (2)能够收集学生的相关信息,进行数据处理,根据学生的特点为其分配宿舍。


  (3)能实时查看住宿的情况,便于分析和统计等。


  (4)能够为学生收费系统提供相应的住宿费收费依据。


  2 系统设计


  2.1 宿舍分配系统的分配原则


  (1)学院、专业、班级实行相对集中的原则:尽量将同一学院、专业、班级的学生安排在一起(同一楼层或相近的楼层),为便于进行日常管理,尽量安排同一个专业或班级的学生住满若干间宿舍。[1]


  (2)年级集中原则:以便于做好迎新接待,日常活动,毕业设计及就业工作,尽量减小不同的年级之间的互相影响。[1]


  (3)对同一楼层的安排,安排宿舍到头后再后退折回,对于不同的楼层的安排,宿舍安排到头后上楼后退折回,不再从头开始,以便使同一个专业或班级的宿舍尽可能地靠在一起。[1]


  (4)尽量将作息时间相近,兴趣爱好互补的同学安排在同一宿舍。


  2.2 宿舍分配系统的分配流程


  根据实际调研的结果,得出影响宿舍氛围的因素及其权重,以确定宿舍分配时所依据的条件及权重。分配前,准备可用的宿舍资源,即增加新宿舍和回收毕业生的宿舍;将学生的基本信息录入互联网服务器的数据库系统后开放该系统,再由学生通过登录该系统填入一些个性化的信息如性格、爱好、作息时间等,到设定的截止日期系统会自动关闭。分配时,系统依据学生的学院、年级、专业、班级、性别、兴趣爱好、作息时间等条件进行加权计算,完成学生与宿舍资源的比对和匹配,在辅以必要的人工干预的同时,实现学生宿舍的智能分配。分配完毕后在网站上公示各宿舍人员名单,若有需要调整的可在公示期内联系宿舍管理员进行适当调整,最后公布各宿舍人员的正式名单。


  2.3 算法分析


  贪心算法是一种简化解题复杂度的算法,不追求最优解,不用回溯,只希望得到较为满意的解。它的基本思想是:从问题的某一个初始解出发,采用逐步构造当前状态下最优解,以尽可能快的速度逐步逼近给定的目标的搜索方法。贪心算法不在整体上考虑最优,而是把整个问题分成多个阶段,保证在每个阶段求出当前看来的最优解,并且一旦求出解就不再更改,使用贪心算法省去了为找到整体最优解穷尽所有可能而耗费的大量时间,并且可以快速得到较为满意的解。虽然贪心算法不是对所有问题都能得到整体最优解,但对于范围相当广泛的求最优解的问题来说,它是一种最直接的算法设计技术,通过一系列局部最优的解的选择,贪心算法可以产生整体的最优解。[2][3][4][5]


  (1)贪心算法的求解步骤。从问题的某一个初始状态出发,根据当前的局部最优策略,以满足约束方程为条件,以使目标函数增长最快(或最慢)为准则,在候选集合中进行一系列的选择,以便尽快构成问题的可行解。[6]


  (2)基于贪心法的宿舍分配算法设计。①首先进行宿舍分配的预处理:将所有学生的学号按性别、学院、年级、专业、班级由高到低的优先级顺序依次排列好。②取出排在最前面的学生,以该学生为对象,计算出其所在班级待分配的同性别学生与他在作息时间、兴趣爱好等特征项的匹配度以及该班级待分配的人数m,根据计算出的匹配度的值将该班级同性别学生重新排序。③根据贪心算法的思想:若m不小于n-1(n为一个宿舍的人员容量),将该学生及与其匹配度高的前n-1个学生分配到一个宿舍,并将m的值减小(n-1)。④当m小于n-1时,保存m个学生的信息,跳过这些学生,继续进行本专业下一个班级学生宿舍的分配。⑤重复步骤②③④,直至本专业所有班级可以分配宿舍的学生分配宿舍完毕。⑥将本专业还未分配到宿舍的学生(之前跳过的学生)按学号排好,取出排在最前面的学生,以该学生为对象,计算出其所在专业待分配的同性别学生与他在作息时间、兴趣爱好等特征项的匹配度以及该专业待分配的人数p,根据计算出的匹配度的值将该班级同性别学生重新排序。⑦根据贪心算法的思想:若p不小于n-1(n为一个宿舍的人员容量),将该学生及与其匹配度高的前n-1个学生分配到一个宿舍,并将p的值减小(n-1)。⑧当p小于n-1时,保存p个学生的信息,跳过这些学生,继续进行本年级下一个专业学生宿舍的分配。⑨依此类推直到该校所有学生分配完宿舍(不同性别不可分配在同一个宿舍)。


  3 系统实现与开发工具


  根据系统的需求,采用B/S模式进行系统设计,应用C#语言进行程序设计,其数据库设计按照Oracle数据库的标准进行。[7]运用B/S模式,不需要安装客户端的软件,可以支持跨平台访问,支持多校区的联网运行,宿舍管理人员可在多地区、任意时间段登录进行学生宿舍的分配和管理,学生也可在多地点进行信息录入、修改及查询,系统适应性强。


  4 结束语


  宿舍分配是大学宿舍管理系统中一个非常重要同时也是非常复杂的一个工作,良好的宿舍分配系统对宿舍资源的统一管理有十分重要的意义,可以在很大程度上提高管理效率和资源利用率,能够有效缓解高校宿舍资源的紧张局面,提高学校管理的科学化和人性化。本文采用贪心算法作为学生宿舍分配系统的核心算法,对宿舍分配问题做出了一些有益的尝试,也希望能够为宿舍智能分配系统的研究做出自己微薄的贡献。


  参考文献:


  [1]舒攀,陈金刚。数字化校园建设中宿舍管理系统的设计与实现[J].武汉工程大学学报,2008,30(4):108-111.


  [2]王伟,余利华。基于贪心法和禁忌搜索的实用高校排课系统[J].计算机应用,2007,27(11):2873-2876.


  [3]邓曦辉。浅谈贪心算法在排课系统中的应用[J].电脑与电信,2011,7.


  [4]江朝勇,陈子庆,谢赞福。基于优先级贪婪算法的排课系统的研究与实现[J].信息技术,2008.


  [5]聂小东。基于贪婪算法的排课系统的研究与实现[D].广州:广东工业大学,2006.


  [6]王红梅。算法设计与分析[M].北京:清华大学出版社,2006,7.


  [7]谢红标,徐争前。基于Web的智能化宿舍管理系统的设计与实现[J].计算机时代,2007.


特别说明:本站仅协助已授权的杂志社进行在线杂志订阅,非《计算机科学与探索》杂志官网,直投的朋友请联系杂志社。
版权所有 © 2009-2024《计算机科学与探索》编辑部  (权威发表网)   苏ICP备20026650号-8