- Home
- Blog
- Schedule Optimization
- How the Optimizer Ranks Goals in Strict Order
The optimizer ranks goals in strict order: each preset is an ordered list of measures, and one plan beats another on the first measure where the two differ by more than a small tolerance. The lower measures only break ties. This is called lexicographic ranking, and it is what lets EDGEBIC protect your top priority absolutely instead of averaging it into a blended score.
EDGEBIC by User Solutions gives every optimizer run a goal, and every goal is a ranked list, not a single number. Understanding how the ranking works explains why the optimizer defends the thing you asked for, why a "worse" row can appear on a plan you are told is better, and why presets never rely on magic weights. For the full optimizer picture, see the EDGEBIC optimizer guide.
What "strict order" means
Lexicographic ranking works the way a dictionary orders words. You compare the first letter first, and only if two words share it do you look at the second letter. The optimizer compares plans the same way, one measure at a time down the preset's list.
Take On-time first, whose ordered measures are weighted lateness, then late-job count, then stability, then overall span. To compare two plans, the optimizer looks at weighted lateness first. If one plan is clearly better there, it wins, full stop, whatever the lower measures say. Only if the two tie on weighted lateness does the optimizer move to late-job count, and only if they tie there too does it consider stability, and so on. The top measure is decisive whenever it can decide.
The tolerance: a tiny difference is a tie
"Differ by more than a small tolerance" is doing real work in that definition. Two plans that differ by a rounding sliver on the top measure are treated as equal there, so the comparison falls through to the next measure. Without a tolerance, a meaningless one-minute difference on lateness would settle every comparison and the lower measures would never get a say. The tolerance keeps ties honest, so the ranking uses genuine differences to decide and lets the tie-breakers work when the top measure is effectively level.
The four presets as ranked lists
Every shipped preset is an ordered list of measures. The order is the whole personality of the goal:
| Preset (UI label) | Measures, most important first |
|---|---|
| On-time first | Weighted lateness, late-job count, stability, overall span |
| Fastest overall finish | Overall span, weighted lateness, stability |
| Least setup time | Setup hours, weighted lateness, overall span |
| Fewest changes | Stability, weighted lateness, overall span |
Read across each row and the trade-off is plain. On-time first defends dates before anything else. Fastest overall finish, the MinMakespan preset, puts total span first and accepts a little lateness to shorten the plan. Least setup time, the MinSetup preset, leads with changeover hours. Fewest changes, the MostStable preset, leads with stability so a committed floor stays put. Same optimizer, four different orderings, four different personalities.
Why order beats weighting
The obvious alternative is to blend the measures into one score with weights: so many points per late job, so many per setup hour, add them up, minimize the total. It sounds reasonable and it is a trap.
Weighting forces you to invent an exchange rate between things that do not naturally convert. How many setup hours is one late shipment worth? Any number you pick is arbitrary, and if it is wrong, the optimizer will quietly trade away the thing you cared about to gain on the thing you did not. Worse, a single large outlier can swamp a weighted sum and pull the plan somewhere you never intended.
Strict ordering sidesteps all of it. There is no exchange rate to guess, because a higher-ranked measure is never sacrificed for a lower one. Your top priority is protected first, period, and the lower measures only shape the plan among options that already tie at the top. That is why the presets are ranked lists and never weighted blends.
How each engine applies the ranking
Both optimizer engines honor the same ranking, but they apply it differently. The multi-run search scores every complete schedule it tries with one shared calculator, then compares candidates down the preset's list to keep the best. The mathematical solver goes tier by tier: it optimizes the top measure, fixes that result as a constraint, then optimizes the next measure without ever spoiling the first, and so on down the list. This multi-pass approach is why the solver can prove its result on your exact goal rather than on a blended proxy, part of what makes the two optimizer layers behave consistently.
Why a "worse" row can still be an improvement
Strict ranking is also the reason a plan you are told is better can show a red row. A lower-ranked measure is allowed to get slightly worse when doing so buys a real gain on the measure you asked for. Under On-time first, the optimizer will accept a somewhat longer overall span to remove a late job, because span sits below lateness in that preset.
The comparison screen makes this visible. Every KPI row states its direction in words, better or worse or no change, so the trade is never hidden. Read the top rows to see your goal being served and the lower rows to see what it cost. How to read that whole grid is covered in reading the optimizer KPI comparison table.
The stability guard on a first schedule
One measure needs a reference to mean anything: stability, which counts how much a plan disturbs the committed floor. On a first schedule there is no committed plan to disturb, so measuring stability would be noise, and worse, it would deaden every measure ranked below it because there would be nothing to break its ties.
The optimizer handles this automatically. When no committed plan exists, it strips the stability measures out of the effective ranking for that run. If stripping stability would empty a preset, as it would for Fewest changes on a first schedule, the goal falls back to the on-time ranking so you still get a sensible objective. Once a committed plan exists mid-week, stability becomes meaningful again and the ranking works as written.
The bottom line
The optimizer ranks goals in strict order: a preset is an ordered list of measures, and the first measure where two plans genuinely differ decides the winner. Lower measures only break ties, and no higher-ranked measure is ever sacrificed for a lower one. That is why presets are ranked lists instead of weighted blends, why your top priority is truly protected, and why a small "worse" on a minor row can accompany a real win on the goal you chose. Pick the preset whose order matches this week's priority, and the ranking does the rest. Explore the platform at EDGEBIC.
Expert Q&A: Deep Dive
Q: I picked Fastest overall finish but a job is still a little late. Did the optimizer ignore my due dates?
A: No, it ranked them below span, exactly as that preset says. Fastest overall finish puts makespan first, weighted lateness second, and stability third. So the optimizer minimizes the total plan length first, and only among plans of equal length does it prefer the one with less lateness. If protecting that date matters more this week than a short plan, switch to On-time first, which reverses the top two measures and defends the date first.
Q: Two plans looked identical on lateness but the optimizer preferred one. What decided it?
A: A lower tier broke the tie. When two plans differ by less than the tolerance on the top measure, the optimizer treats them as equal there and moves to the next measure in the preset. Under On-time first that is late-job count, then stability, then makespan. So two plans with the same weighted lateness are separated by which one has fewer late jobs, and if that ties too, which one disturbs the floor less.
Frequently Asked Questions
Ready to Transform Your Production Scheduling?
User Solutions has been helping manufacturers optimize their production schedules for over 35 years. One-time license, 5-day implementation.

User Solutions Team
Manufacturing Software Experts
User Solutions has been developing production planning and scheduling software for manufacturers since 1991. Our team combines 35+ years of manufacturing software expertise with deep industry knowledge to help factories optimize their operations.
Share this article
Related Articles
The Nearest Challenger Line in an Optimizer Result
When the optimizer says your plan is still the best, it often names the runner-up and how far behind it was. That one line tells you how close the decision was and whether to look again.
What Happens When the CP-SAT Solver Is Not Installed
You selected the mathematical solver in Options but the badge still says best of N tried. That is a deliberate fallback, not a fault, and here is how to confirm it and what you keep.
What the Optimizer Needs Before Its First Run
Four prerequisites, only one of which is mandatory. Here is the short checklist before your first optimizer run, and the two messages that tell you a prerequisite is missing.
