为学生分配座位的适当 ML 算法

数据挖掘 机器学习
2021-10-13 16:21:26

我是机器学习的新手,我正在尝试用它来解决与教室里的学生座位相关的特定问题。我想列出学生名单并将他们每个人分配到一个座位上,以使某个输出值最大化。

一个例子:

学生(每个学生包含可以计算兼容性分数的所有数据):A B C D E F

座位:1 2 3 4 5 6 7 8

每对学生都有一个预定义的“兼容性分数”,每对座位之间都有一个几何距离。在将学生分类到座位后,我会计算这两个值之间的比率,其平均值将是我要优化的结果。

一个 25 名学生和 25 个座位​​的班级有大约 15,000,000,000,000,000,000,000,000 种可能的排列方式,因此蛮力方法是相当不可行的。我的理想结果是机器学习可以开发出一种优化算法来对它们进行排序。

关于我想要哪种 ML 算法的任何想法?

2个回答

该问题是一个优化问题,从一组可用的备选方案中选择最佳元素(关于某些标准)。

它属于计算几何的一般类别。具体来说,一个装箱问题,不同价值的物品必须装入有限数量的容器中。

我认为您想更多地研究线性规划或运筹学领域。它归结为最大化/最小化一个函数,给定一些约束。

当然,在某些情况下,您可能无法找到最佳解决方案,但这些方法中的任何一种找到的解决方案通常都很接近。

在这里您可以找到一些不错的介绍以及 Python 库: https ://developers.google.com/optimization/introduction/python