Transition Guide for Change In Features
In addition to the quality improvements, some new features were added, and some features were deprecated to improve user experience. For any questions, please reach out to the cuOpt team through NGC.
Parameter/option statuses are listed below, they express how each of these options are affected:
New - A new feature has been added.
Update - A change in definition of feature.
Deprecated - These are “no operation” options, they will be accepted by the server, but they will not be used anywhere. And the solver will also return a warning about them being deprecated.
Limited - These options are limited with respect to the number of dimensions that can be provided. For example, cuOpt-23.08 solver supports only one break for each vehicle (like lunch break).
Removed - These features were deprecated in previous release and completely removed in this one.
- Status:
New
- Former behavior:
If there is no feasible solution or cuOpt could not find a feasible solution, the return status would be 1, implying infeasible. No solution would be returned.
To find a feasible partial solution, drop_infeasible_tasks option had to be enabled.
- Current behavior:
With cuOpt-23.08, if the problem is infeasible, then the solver will return a solution which has been generated by violating constraints. The returned status will be 1 to indicate infeasibility.
It also returns what constraints are being violated as warnings. The user can analyze the data on what caused infeasibility
drop_infeasible_tasks is still available and can be used to get a partial feasible solution.
- Feasible solution response:
- Infeasible solution response:
{‘response’: {solver_response: {‘status’: 0…….
{‘response’: {‘solver_infeasible_response’: {‘status’: 1…..
- number_of_iterations
-
- Status:
Removed
- number_of_climbers
-
- Status:
Removed
- solution_scope
-
- Status:
Removed
- initial_solution_strategy
-
- Status:
Removed
- solution_strategy
-
- Status:
Removed
- objectives
-
- travel_time
-
- status:
Update
- Former:
Just drive time was considered
- Current
Now drive, service and wait times are considered
- vehicle
-
- Status:
Removed
- cumul_package_time
-
- Status:
Removed
- cumul_earliest_diff
-
- Status:
Removed
- capacities
-
- Status:
Limited
- Former:
Lists of capacities of each vehicle
- Suggestion:
The number of dimensions for capacity is limited to 3, meaning each vehicle can have at max 3 different sets of capacities (For example: weight, volume, fuel).
- vehicle_break_time_windows
-
- Status:
Limited
- Former:
Lists of tuples of earliest and latest break time for each vehicle.
There can be multiple such lists for different breaks (lunch break, tea break and etc.)
- Suggestion:
With cuOpt-23.08 the number of dimensions for break is limited to 1.
- vehicle_break_durations
-
- Status:
Limited
- Former:
Lists of break duration time for each vehicle.
There can be multiple such lists for different breaks (lunch break, tea break and etc.)
- Suggestion:
With cuOpt-23.08 the number of dimensions for break duration is limited to 1.
- max_slack
-
- Status:
Removed
- max_lateness_per_vehicle
-
- Status:
Removed
- demand
-
- Status:
Limited
- Former:
Lists of demands of each task.
- Suggestion:
With cuOpt-23.08 the number of dimensions for demand is limited to 3, meaning each task can have at max 3 different sets of demand (For example: weight, volume, fuel).
- prizes
-
- Status:
New
- Current:
Each task/order has a prize and this can be used in cases where all tasks are not feasible and the user requires tasks/orders with the highest prize to be considered before trying other tasks/orders.
If the cost of serving a customer is too high compared to the prize of serving a customer, the solver will drop that customer to improve overall cost. If the primary goal is to serve as many customers as possible, it is advisable to set very high prizes.
- priorities
-
- Status:
Deprecated
- Former:
Tasks with higher priority would be considered more compared to other lower priority ones.
- Suggestion:
Use Prize collection to accomplish this
- penalties
-
- Status:
Removed
- precedences
-
- Status:
Removed