Overview
ProDex’s planning module is an Advanced Planning and Scheduling (APS) optimizer. Given your demand, inventory, bill of materials, and resource constraints, it calculates an optimal production plan — what to make, when, and in what quantities. Planning operates over a configurable time horizon broken into intervals (days, weeks, etc.) and balances three competing objectives: fulfilling demand on time, managing inventory costs, and staying within resource capacity.Setting Up Your Planning Model
A Planning Model is the configuration template for your planning runs. It defines the structure of your planning problem — the horizon, resources, BOMs, and cost weights. You create it once and reuse it across multiple planning runs.Planning Horizon
Set the number of intervals (n_intervals) and the interval unit (e.g., day, week). A 30-day horizon with daily intervals means the optimizer plans 30 days out, day by day.
Resources
Define the resource types available for production — lines, machines, labor pools, etc. Each resource has a capacity per interval. Resources connect to BOMs via bill of resources (BOR) requirements, which specify how much of each resource a given BOM consumes per unit produced.Bill of Materials
Specify which BOMs to include in the planning model. ProDex classifies materials automatically:- RAW — leaf materials with no components (inputs only, supplied externally)
- INTERMEDIATE — materials consumed by other BOMs in production
- SKU — saleable finished goods (not consumed by any other BOM)
Cost Weights
Three parameters control how the optimizer balances trade-offs:- Alpha (α) — weight on demand backlog (unfulfilled orders). Higher alpha penalizes late or unmet demand more heavily.
- Beta (β) — weight on inventory holding costs. Higher beta discourages building excess stock.
- Gamma (γ) — weight on resource usage. Higher gamma pushes the optimizer toward more even resource utilization.
Order Tags and Inventory Tags
Tags classify demand orders and inventory goals into categories with their own weights and penalty curves. This lets you express that some orders are more critical than others, or that some inventory targets carry more risk.Custom Constraints
Optionally define additional constraints using ProDex’s expression language — for example, minimum production quantities, maximum daily output for a specific SKU, or production sequence rules.Running a Plan
A Planning Run is one execution of the optimizer against your planning model. Each run takes a point-in-time snapshot of your demand and supply inputs.Demand Orders
What you need to produce. Each demand order specifies:- Order ID
- Due date
- SKUs with quantities
Supply Orders
Raw materials you expect to receive. Each supply order specifies:- Arrival date
- Materials and quantities
On-Hand Inventory
Current stock levels at the time of planning (entity, variant, quantity).Inventory Goals
Target inventory levels you want to maintain. Specify date, entity, variant, target quantity, acceptable margin, and tag. The optimizer treats these as soft constraints weighted by the tag configuration.Resource Replenishments
Changes to resource availability over the planning horizon — e.g., a line going offline for maintenance, or temporary capacity increases. Once your inputs are ready, click Optimize. The optimizer runs and returns a production plan.Interpreting the Output
Production Plan
A day-by-day (or interval-by-interval) schedule of what to produce: entity, variant, date, and quantity. This is the primary output.Order Fulfillments
Shows which demand orders are satisfied, partially satisfied, or unfulfilled — and on which dates production covers each order.Feasibility
If the optimizer cannot find a valid plan within your constraints, it will report infeasible with a reason. This usually means demand exceeds capacity in some period — you may need to adjust the horizon, relax constraints, or add resources.KPIs
- Solver status — optimal, feasible, or infeasible
- Objective value — the weighted cost the optimizer minimized
- Optimality gap — how close the solution is to the theoretical best (lower is better)
- Computation time — how long the solver ran
- Makespan — total production duration in seconds
Adjusting and Re-Running
Planning is iterative. After reviewing results:- Adjust cost weights if the balance between demand, inventory, and resource utilization doesn’t match your priorities
- Add or modify custom constraints
- Update demand or supply inputs as new information arrives
- Run again and compare against the previous plan

