[rules-users] [Drools Planner] Multi depot CVRP / CVRPTW

Geoffrey De Smet ge0ffrey.spam at gmail.com
Tue Nov 20 05:06:53 EST 2012


Op 19-11-12 19:33, Mats Norén schreef:
> Interesting. You mean that I could add another rule in the vrp example
> that checks the vehicle TimeWindow of the customer against
> CustomerVisitArrivalTime?
>
> In that case is the CustomerVisitArrivalTime a planning variable and
> in which domain class does it belong?
> I'm still trying to wrap my head around the concepts. :-)
It's not another planning variable,
instead,
do something like

when
  ...
then
   insertLogical(new CustomerVisitArrivalTime(...));
end

when
    CustomerVisitArrivalTime($c : customer, $a : arrival)
    not CustomerTimeWindow(customer == $c, $a > start, $a < end)
then
    insertLogical(new IntConstraintOccurrence(...))
end

See nurseRosteringScoreRules.drl for an example of use of 
insertLogical's like that
>
> /M
>
> On Mon, Nov 19, 2012 at 5:39 PM, Geoffrey De Smet
> <ge0ffrey.spam at gmail.com> wrote:
>> Op 19-11-12 17:17, Mats Norén schreef:
>>
>> Hi,
>> I've been looking at the VRP example in Drools and I'm thinking about using
>> it for multi depot cvrp and / or capacitated vrp with time windows.
>> Has anyone else tried planner for these use cases and can maybe shed some
>> light on their implementation?
>>
>> The VRP example is already capacitated.
>>
>> Multi-depot is pretty easy: just assign different a different starting
>> Location for every Vehicle.
>> Unless you want Vehicles to change Depot sometimes, then it's a bit more
>> complex.
>>
>> Time windows is more difficult if you don't want to break incremental score
>> calculation.
>> Doing an insertLogical() for the arrival time of every CustomerVisit should
>> work.
>> Then it's just a matter of checking if that logically inserted fact
>> CustomerVisitArrivalTime falls within the TimeWindow of the customer.
>>
>>
>> Regards,
>> Mats
>>
>>
>>
>>
>> _______________________________________________
>> rules-users mailing list
>> rules-users at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/rules-users
>>
>>
>>
>> _______________________________________________
>> rules-users mailing list
>> rules-users at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/rules-users
>>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>



More information about the rules-users mailing list