首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >算法匹配学生考试中心

算法匹配学生考试中心
EN

Stack Overflow用户
提问于 2012-09-20 06:50:46
回答 2查看 667关注 0票数 2

我有一个问题,把学生分组到最近的考试中心。以下是条件/制约因素:

  1. 有X名学生和Y级考试中心。每个中心将容纳不同数量的学生。
  2. 考试中心总数的最大容量可以大于学生人数,但不小于学生人数。
  3. 一个学生到一个以上的考试中心的距离最小。
  4. 所有考试中心将同时举行考试。

例如,有11500名学生和15个考试中心。5个中心(1至5个)将容纳1500名学生,3个中心将容纳600名学生(6至8名),其余7名(9至15名)将容纳350名学生。

我发展了以下几个方面:

  1. 一个数据库表,上面有每个考试中心的学生位置(注册地址)。如下所示 学生身份证区-EX1区-EX2.区-EX14区-EX15 1 10 70 20 50 2 25 43 5 105 11499 35 12 35 55 11500 5 23 5 5
  2. 我可以为每个学生添加一个存储最近的考试中心的列,并创建如下所示的表格: 最近的前科中心。学生1 2000 2 500 14 150 15 500

但我不知道该怎么做。我认为这是某种算法问题。如果有人能给我一些想法,我将不胜感激。

提前谢谢!

EN

回答 2

Stack Overflow用户

发布于 2012-09-20 07:08:09

我建议你看看这里的遗传算法。

以学生的数量和他们的作业为例,你的健身功能可以给那些重叠较少的学生带来更大的价值。

我在大学里用这种方式实现了学生/日程安排问题,效果很好。

所以我相信遗传算法是一种方法

祝好运!

票数 0
EN

Stack Overflow用户

发布于 2015-07-06 20:19:00

(我知道这是两年前提出的,但也许会对某人有所帮助)

通过匈牙利算法(算法)可以求解最优的二分图,具体如下:

  • 左边的节点表示学生
  • 右节点代表15个中心的席位
  • 从每个学生到每个座位插入一个边缘,重量=距离中心
  • 然后计算一个最小权重匹配

问题:您的矩阵大小为11500平方。

解决方案:在不将中心“扩展”到其座位上的情况下,可以使用以下算法对问题进行建模(我将不详细介绍):

问题

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12507361

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档