You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Timefold列表模型配置Tabu Search报错,如何正确设置?

解决Timefold列表模型中Tabu Search的配置问题

报错原因

报错核心原因是:列表模型的ListAssignMove移动类型未实现getPlanningEntities()方法,无法支持Entity Tabu Search,这是列表模型移动的特性限制。

正确配置方案

针对Timefold列表模型,需改用以下兼容的Tabu Search类型:

  • Value Tabu Search:将列表中的值(如任务对象)纳入禁忌范围,避免重复分配相同值

    <localSearch>
      <unionMoveSelector>
        <listAssignMoveSelector/>
        <listSwapMoveSelector/>
      </unionMoveSelector>
      <acceptor>
        <!-- 调整禁忌大小适配业务场景 -->
        <valueTabuSize>7</valueTabuSize>
      </acceptor>
      <forager>
        <acceptedCountLimit>1</acceptedCountLimit>
      </forager>
    </localSearch>
    
  • Move Tabu Search:直接禁忌具体的移动操作(如某任务分配到特定位置的动作)

    <localSearch>
      <unionMoveSelector>
        <listAssignMoveSelector/>
        <listSwapMoveSelector/>
      </unionMoveSelector>
      <acceptor>
        <!-- 调整禁忌大小适配业务场景 -->
        <moveTabuSize>10</moveTabuSize>
      </acceptor>
      <forager>
        <acceptedCountLimit>1</acceptedCountLimit>
      </forager>
    </localSearch>
    

额外注意事项

  • 列表模型的所有内置移动类型(ListAssignMove、ListSwapMove等)均不支持Entity Tabu,请勿配置entityTabuSize参数
  • 调试时出现的“退出永不终止的选择器”警告,通常是值选择器未正确过滤无效候选值,需检查@PlanningListVariable的约束或值范围配置,确保只生成合法值

内容的提问来源于stack exchange,提问作者heyif

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 18:35:08