Skip to main content

Troubleshooting Solve Errors

A
Written by Alex Salb
Updated over 5 months ago

"Scenario does not exist in database!"

  1. Does Base Scenario data exist for CustomerLanes, CustomerDemand, SiteProducts, SiteProcesses, BOMs

    1. Customer Lanes: Check Origin, Dest, and Rate columns in sol.DvTable_arcFlows to see if this is the case.

    2. Customer Demand: Check sol.constraintTable_demand to see if this is the case.

    3. Site Products: Check Origin, Dest, and Product columns in sol.DvTable_arcFlows.

    4. Site Processes: Check Dest and Process columns in sol.DvTable_arcFlows.

    5. BOMs: Check sol.constraintTable_BOMs to see if this is the case.

  2. Are all required elements turned on?

    1. Solver Include may be set to "Null" for records on required tables.

      1. Required tables for NEO/COG: Sites, Customers, Products, CustomerDemand, SiteProducts, Modes, IntersiteLanes (this is only required if there are shipments between Sites), CustomerLanes, Processes, BOMs, and SiteProcesses

  3. Are there actions turning things off and not back on?

    1. For example, you can turn off all records in a table using actions. Then you can create an action to turn specific records back on, although the latter action might have been created incorrectly.

  4. Check the hierarchies - data missing or data being turned off in sub-hierarchy.

    1. Check Main Tables:

      1. CustomerLanes

      2. CustomerDemand

      3. SiteProducts

      4. SiteProcesses

      5. BOMs

      6. IntersiteLanes

    2. For each Main Table record, verify ALL referenced Key Table records

Main Table

References these Key Tables

CustomerLanes

Sites, Customers, Products, Modes

CustomerDemand

Customers, Products

SiteProducts

Sites, Products

SiteProcesses

Sites, Processes, BOMs

BOMs

Products

IntersiteLanes

Sites (origin & destination), Products, Modes

"Model is unbounded."

  1. Is this model a Profit Maximization? If the answer is yes, does every CustomerDemand record have a non-zero Quantity?

    1. Once a price has been set for any record in the Customer Demand table, it will trigger a Profit Maximization Optimization for ALL records. Quantities (for Customer Demand) must be set to greater than 0 at this point because they will serve as an upper bound (Maximum Quantity) for the Profit Maximization Optimization.

  2. Are there any negative costs in the model? Likely culprits may be:

    1. Negative Usage Cost on the Resources table.

    2. No data entered for Max Usage on the Resources table.

    3. Negative inventory cost on the Site Products table.

"Model is infeasible."

  • Solve as a profit max

    • If the model is infeasible as Cost Minimization (the default way of NEO solving), but it is feasible when Profit Maximization is used (this can be done by entering a price for any records on the CustomerDemand table), then the issue is that some demand can't be fulfilled:

      • Check Intersite Lanes - verify products can flow between sites

      • Check Customer Lanes - verify products can flow between sites and customers

      • Check BOMs - verify all input products can be sourced or produced

      • Check Production - verify SiteProcesses exist for required outputs

      • Check Capacity - verify capacity contraints are sufficient (in the SiteProcesses and SiteProducts tables) to meet quantity demanded (in the CustomerDemand table)

      • Look at the Rpt.DemandSummary to identify which demand records aren't being served.

  • Otherwise, if model is infeasible as both Cost Minimization and Profit Maximization:

    • There are conflicting constraints

      • There may be a maximum flow and a minimum production.

      • There may be a proportion constraint that can't be met based on demand profile.

      • The Conflict Refiner Setting can be useful.

        • If the Scenario runs (executes) in a reasonable time, use that to debug.

        • If the scenario takes too long to run:

          • Turn off constraints one at a time to isolate the conflict.

          • Run combinations of constraints to see which are compatible.

      • If you know of a feasible answer:

        • Set it as a “Baseline” model via settings. (force the outcome)

        • Check whether the model becomes feasible.

        • Use Conflict Refiner again to confirm.

Did this answer your question?