我正在开发一款用于自动生成大学课程表的应用程序,并使用遗传算法来实现。但目前我面临一些实现上的问题。
一开始,我假设每个课程只占用一个时间段(时间段为1小时),可以将其放入一个数组中(该数组表示课程表网格:具有numberOfRooms * numberOfDays * numberOfTimeSlots容量的一维数组),并且可以进行变异和交叉等操作,没有问题。
但是,现在我想改进这个应用程序,并允许课程占用多个时间段。这里涉及到很多问题:
我们如何将一个课程对象放入数组中,并填充所有课程必须占用的时间段(即一个对象 - 多个单元格)? 根据我们如何将其放入数组中的规定,变异和交叉操作如何执行? 提前感谢您的帮助!我非常感激!