- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
正如我从文档中了解到的那样,“MoveIteratorFactory”的目的是生成每一步都需要执行的 Action 。
“getSize”方法的移动子集有多大?
“createOriginalMoveIterator”和“createRandomMoveIterator”有什么区别?
“createOriginalMoveIterator”是否会在后面的步骤中再次生成移动的子集?
我猜在这两种情况下,移动都是在调用方法 next() 之后(在其创建之后)完成的?
如果需要生成很多 Action ,这是否是最佳解决方案,因为在我的情况下,首先需要生成很多 Action ,更不用说完成了?
是否有更智能的方法来根据解决方案的当前状态在每一步生成自定义组合 Action ?
最佳答案
MoveIteratorFactory
是 MoveListFactory
的更复杂替代方案这避免了创建 List<Move>
通过创建 Iterator<Move>
反而。在 Java 8 术语中,它与 Stream
有很多共同点。 .
假设您有 5 万个实体和 1 万个值。所有 changemoves 的列表将包含 500m 元素,导致内存问题和每次步骤开始时严重的延迟损失。为避免这种情况,它会在 Iterator.next()
处及时 生成一个 changemove。或 hasNext()
.
为了使其正常工作,如果迭代器需要随机选择移动(= 可能选择相同的移动两次,这不是随机的,它是随机的!)或原始顺序,它需要表现不同。
关于optaplanner - MoveIteratorFactory 目的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37579252/
正如我从文档中了解到的那样,“MoveIteratorFactory”的目的是生成每一步都需要执行的 Action 。 “getSize”方法的移动子集有多大? “createOriginalMove
我是一名优秀的程序员,十分优秀!