我正在尝试构建一种遗传算法来解决基本的学校时间表问题。
我正在尝试找出解决此问题的良好编码方式。我可以像这样将其作为二进制字符串来完成:
day hour/time room
000 00000 000000
etc...
这是解决我的问题的最佳编码吗?
最佳答案
由于如今内存几乎不是问题,我会选择一种表示方式
- 从程序员的角度来看很容易使用(可读性)
- 支持你的算法
使用位数组会节省空间,但您最终会用大量的宏或函数调用来一遍又一遍地分隔信息。这很难读,很难写,而且速度很慢。 (至少我猜你的算法不会对你的数据进行位操作)
如果这是一个数据库问题,我会说您肯定至少需要第一范式。任何更高级别的规范化都会减少保持数据一致性的工作量。
关于algorithm - 遗传算法时间表编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23241108/