algorithm - 遗传算法时间表编码?

标签 algorithm artificial-intelligence mathematical-optimization genetic-algorithm

我正在尝试构建一种遗传算法来解决基本的学校时间表问题。

我正在尝试找出解决此问题的良好编码方式。我可以像这样将其作为二进制字符串来完成:

day  hour/time room
000  00000     000000

etc...

这是解决我的问题的最佳编码吗?

最佳答案

由于如今内存几乎不是问题,我会选择一种表示方式

  1. 从程序员的角度来看很容易使用(可读性)
  2. 支持你的算法

使用位数组会节省空间,但您最终会用大量的宏或函数调用来一遍又一遍地分隔信息。这很难读,很难写,而且速度很慢。 (至少我猜你的算法不会对你的数据进行位操作)

如果这是一个数据库问题,我会说您肯定至少需要第一范式。任何更高级别的规范化都会减少保持数据一致性的工作量。

关于algorithm - 遗传算法时间表编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23241108/

相关文章:

c++ - 如何检查 float 的依赖关系

r - R 中的 for 循环问题,复制 Gram-Schmidt 正交归一化算法

python - SciPy 中的差分进化

c++ - 矩形交点。为空路口打印消息

python - scipy.optimize.leastsq 有界约束

string - 如何检测字符串中的回文循环长度?

c++ - 图组件之间的路径算法

c++ - Intel NCS2 vpu不支持动态批处理

machine-learning - 本教程的神经网络隐藏层输入大小

c# - 遇到死胡同时如何以编程方式穿越迷宫