Troubleshooting
How to Check if My Configuration Is Valid for a cuOpt Variant (Constraints, Inputs) When Using the cuOpt Service?
The cuOpt service will validate the data passed in a set or update operation for the following general data categories:
Cost matrix
Waypoint graph
Fleet data
Includes time windows, breaks, capacities, and so on.
Task data
Includes time windows, service times, priorities, and so on.
Solver configuration
If the data passed is not valid, the HTTP status code of the response will be >= 400, and the response will contain a detailed error message. If the data passed is valid, the HTTP status code of the response will be 200. See the Server API documentation for more detail on the HTTP response.
Other configuration errors may be caught by the solver when get_routes is called.
Common Misconfigurations Reported by the cuOpt Service, and How to Fix Them (Missing Data, Incompatible Constraints)
The error messages listed below are up to date for the cuOpt server.
If the authentication is failing
Make sure Client ID and secret are set properly
Check if the secret is expired, and if expired, generate a new one
Delete cache for a token if nothing works
If you are failing to connect to the endpoint
Maybe you have a local cache that is pointing to the wrong function; please delete the cache to unblock
Or maybe the NVIDIA cloud service infrastructure is down
If a request starts polling for a result and stops after a while without a result
Please wait for some time and try to hit the endpoint that was provided at the end to retrieve the result
If the time taken is excessive for a simple problem, then engage cuOpt support
If you are getting HTTP errors 500 or 409, these are from cuOpt
Please capture any output from the program and send it to us via a bug or incident report. Also, the dataset used would be good too, but please ensure it does not contain proprietary details
If you are getting any other HTTP errors, they are from NVIDIA cloud service infrastructure
Please submit a bug report.
"Environment variable 'CUOPT_CLIENT_ID' not found"
ID is not set in the environment variable
For Linux:
export CUOPT_CLIENT_ID=”SSA_CLIENT_ID”
Else, set it in the cli or pass it in the function call
"Environment variable 'CUOPT_CLIENT_SECRET' not found"
SECRET is not set in the environment variable
For Linux:
export CUOPT_CLIENT_SECRET=”SSA_SECRET”
Else, set it in the cli or pass it in the function call
Authentication Error: Invalid Client ID or Client Secret
Invalid Client ID or Secret has been provided; please ensure they match.
Bugs should be formally submitted using the NGC cuOpt Service landing page
cuOpt Error: Conflict - 409: Infeasible Solve
The problem set provided is not feasible; constraints need to relax or enable the drop_infeasible option, which will drop infeasible jobs/tasks
404 Client Error: Not Found for URL: *********
Trying to hit the wrong endpoint
Maybe a version cache mismatch; the cache needs to be clear
rm -rf version_cache.json
cuOpt Error: Bad Request - 400: All values in cost_matrix must be >= 0
If the cost/time matrix has a negative value, which is not accepted
cuOpt Error: Bad Request - 400: All rows in the cost matrix must be of the same length
If the cost/time matrix is not a square matrix
cuOpt Error: Bad Request - 400: task_locations represent index locations and must be greater than or equal to 0
If the task locations provided are a negative value or invalid
cuOpt Error: Unprocessable Entity - 422: [{'loc': ……
Malformed JSON data, maybe the name or structure of JSON data is mismatched
Details would be in the error message
cuOpt Error: Bad Request - 400: task_time_windows must be greater than or equal to 0
Task time window contains the non-negative value
cuOpt Error: Bad Request - 400: service_times must be greater than or equal to 0
Service time should be a non-negative value
cuOpt Error: Bad Request - 400: priorities must be within the range of [0, 255]
Task/Job Priorities should lie within [0, 255]
cuOpt Error: Bad Request - 400: Fleet locations represent index locations and must be greater than or equal to 0
Vehicle location should be non-negative
cuOpt Error: Internal Server Error - 500: cuOpt unhandled exception, please include this message in any error report: Return location must be between min 0 and max num_locations!
Vehicle location should lie within [0, max_num_locations], determined by cost matrix/waypoint graph size.
cuOpt Error: Bad Request - 400: Vehicle priorities must be within the range of [0, 255]
Vehicle Priorities should lie within [0, 255]
cuOpt Error: Bad Request - 400: All capacity dimensions values must be 0 or greater
Vehicle capacity should be non-negative
cuOpt Error: Bad Request - 400: vehicle_time_windows: All vehicle time window values must be greater than or equal to 0
Vehicle time windows should be non-negative