当前位置: 首页 > 知识库问答 >
问题:

OptaPlanner中VRP的最小最大游览

夏炎彬
2023-03-14

我是OptaPlanner的新手,尝试根据自己的需要修改现有VRP示例。

我的问题是:我想要无容量限制的VRP,如示例tutorial/test/tutorial-01-uncapacitated中所示。vrp。在实际实现中,优化器大多只使用一辆车,因为它只考虑最小化总数据量。我想改变软约束,使最大行程最小化。我的目标是平等利用车辆。

以下是实现的drools软约束:

//###########################################################################
// Soft constraints
// ############################################################################
rule "distanceToPreviousStandstill"
when
    $customer : Customer(previousStandstill != null,$distanceFromPreviousStandstill : distanceFromPreviousStandstill)
then
    scoreHolder.addSoftConstraintMatch(kcontext, - $distanceFromPreviousStandstill);
end

rule "distanceFromLastCustomerToDepot"
when
    $customer : Customer(previousStandstill != null)
    not Customer(previousStandstill == $customer)
then
    Vehicle vehicle = $customer.getVehicle();
    scoreHolder.addSoftConstraintMatch(kcontext, - $customer.getDistanceTo(vehicle));
end

我试图计算每辆车的距离,并为距离最高的车返回软约束。

共有1个答案

鲍理
2023-03-14

在最小化最大行程后,您还希望它最小化第二个最大行程,以此类推。

参见留档中的“公平”和“负载平衡”。网球例子。

 类似资料:
  • 问题内容: 所以基本上我正在生成随机的10000个IP地址,我想存储在HashSet中找到的所有那些IP地址,但是根据我的计算,发现了大约6000个IP地址,但是在HashSet中仅存储了700个IP地址?HashSet在存储String方面是否有任何限制。任何建议将不胜感激。 问题答案: 就您而言,没有限制(限制是数组的最大大小,即2 ** 31)。 但是,仅存储 唯一 值,因此我的猜测是您仅生

  • 问题内容: 为什么会限制其大小? 我浏览了一些链接:http : //www.coderanch.com/t/540346/java/java/maximum-size-hold- String-buffer 。 是因为count成员变量是int吗? 假设我们有2 ^ 31-1个字符,并在其中追加了一些字符。Count成员变量将增加附加的字符数,如果Count变量已经达到最大值(2 ^ 31-1)

  • 问题内容: 我知道Java中一个方法的最大大小为64k。如果超过该限制,我们将收到一个编译器警告,例如“代码太大而无法编译”。所以我们可以称这为Java的缺点吗? 我们可以增加这个大小限制,还是真的有可能增加? 关于此方法大小还有其他想法吗? 问题答案: 以我的经验,64KB的限制只是生成代码的问题。尤其是 初始化大型数组时(通过代码完成) 在结构良好的代码中,每种方法的长度都是可管理的,并且比此

  • 问题内容: 上下文:我正在构建一个读取rss feed并在后台更新/检查feed的小站点。我有一个数组来存储要显示的数据,另一个数组来存储已显示的记录的ID。 问题:在事情变慢或变慢之前,数组可以在Javascript中容纳多少个项目。我没有对数组进行排序,但是正在使用jQuery的inArray函数进行比较。 该网站将保持运行状态,并进行更新,并且不太可能经常重启/刷新浏览器。 如果我想从数组中

  • 问题内容: 我正在使用一个简单的Web实用程序,该实用程序使用HTML5的IndexedDB(类似于键值数据库)功能。 我一直在寻找,但我不知道:一件物品可以存储的最大尺寸是多少? 问题答案: 我认为单个项目的大小没有具体限制,只有全局限制。 自最初编写此答案以来,有关全局限制的规则已更改。所述向上的最新文档是关于MDN-取决于可用的磁盘空间,“基团”极限(对于给定的结构域,包括其所有的子域) 的

  • 我正在使用PyCharm社区版2016,我注意到我无法打开大型数据输入文件或日志(20MB)。编辑简单地说“文件XXX太大(大小)”。 不仅如此,似乎没有办法改变限制。官方文档提到了一种增加使用intellisense的最大大小的方法,但根本没有增加可以打开的文件的最大大小。这是真的吗?这真的是一个完全无法打开大型日志的IDE吗?