Skip to content

Adjust Eval::operator< #914

@jcoupey

Description

@jcoupey

Internal evaluation is currently based on cost values, which are usually derived from duration via vehicles costs.per_hour factors.

But think of a situation where a user is providing custom costs matrices to model the cost of "reaching out to a given zone", typically when taking subcontracting costs into account. Then all costs for locations from zone A to zone B will be identical, and all intra-zone costs will be zero. In this situation comparing based on cost only means all intra-zone orderings in routes have the same cost so we can provide an arbitrary (bad duration-wise) ordering for zones.

So we should compare Eval instances based first on cost, then on durations in case of draw, which makes sense anyway.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions