Multi-objective Optimization and Soft Constraints
Many decisions have more than one legitimate measure of quality. A delivery plan may reduce operating cost by arriving later; a production plan may protect service quality while using more capacity. Multi-objective optimization makes that policy explicit instead of hiding it in an unexplained scalar score.
This page uses a delivery-delay and operating-cost example to distinguish hard constraints from soft violations, weighted sums from lexicographic priorities, and business tolerances from numerical solver tolerances. The equations are solver-neutral; they do not prescribe a particular OSPF or backend API.
1. Hard rules, soft rules, and objective dimensions
Let
A soft rule is measured rather than required. If
For a soft lower bound
respectively. The unit of
After the hard rules define
where each component has a direction, unit, and policy meaning. For minimization,
2. Weighted sums and lexicographic order
2.1 Weighted sum
For minimization criteria with non-negative weights,
where
using declared lower and upper reference values days + dollars without a conversion silently assigns an arbitrary exchange rate.
Weighted sums are useful when trade-offs are genuinely compensatory. They can also miss unsupported points of a non-convex Pareto frontier and can accept a large violation of one soft rule when another term has a sufficiently favorable weight.
2.2 Lexicographic objective
For two minimization criteria, lexicographic minimization of
- find the smallest attainable
; - among solutions attaining that value, find the smallest
.
The first criterion is not traded for an improvement in the second. This is appropriate when any one day of delay is more important than any permitted cost saving, or when a regulatory rule must be optimized before a secondary preference.
A single scalar can reproduce a lexicographic policy only when objective ranges and attainable resolution are known. If
and minimize
2.3 Tolerance around a priority level
Sometimes the first criterion may be relaxed slightly for a better second criterion. Let
for minimization. This is a policy tolerance, not a floating-point feasibility tolerance. State whether it is absolute or relative, and keep its unit in the result evidence.
3. Worked example: delivery delay versus route cost
3.1 Business statement
A single vehicle delivers orders
The deliberately small data set makes every candidate hand-checkable. It also illustrates why the choice between weighted and lexicographic policy is a business decision, not an algebraic afterthought.
3.2 Variables and hard constraints
Let
indicate the chosen route order. Let
The last two equations connect the route choice to the slot assignment. They are not soft: a plan that delivers twice in one slot or does not serve an order is infeasible.
3.3 Soft violations, intermediates, and cost
Let the due slots be
For the two-slot domains here this reduces exactly to
Thus
The two objective dimensions are
3.4 Enumerate and check every route
There are only two feasible route choices:
| route | ||||||||
|---|---|---|---|---|---|---|---|---|
Both rows satisfy every hard constraint. The second row saves 8 USD but delays order
3.5 Weighted policy
To make the units explicit, define the dimensionless scalar
The values are
With this exchange-rate policy, the cost saving wins and the selected route is
so
If several soft rules exist, the weighted form can include their violation measures, for example
Keep a hard rule as a constraint defining
3.6 Lexicographic policy
Under lexicographic minimization of
Only
For this finite example, lexicographic order can also be encoded with a single coefficient. Cost ranges from 2 USD to 10 USD, so its maximum difference is 8 USD. Since delay changes in whole days,
The two values are
3.7 Tolerance policy
Suppose the company accepts up to one day of total delay when that produces a cheaper route. First solve the primary level and obtain
Both rows are allowed, and the result is
The tolerance is not the same as a solver's numeric feasibility band. A report should say “accepted within one day of the best delay,” not merely “within tolerance.”
4. Organizing objective semantics in OSPF
An OSPF model can keep multi-objective policy explicit through conceptual roles:
- A domain context defines the delivery decisions and hard feasibility rules.
- A violation context derives non-negative, unit-bearing measures such as delay, rejected quantity, or overtime. These are semantic intermediates, not arbitrary residuals from an internal row.
- An objective context declares each objective's name, direction, unit, normalization reference, priority level, and business tolerance.
- A compilation boundary chooses a weighted objective, a staged lexicographic solve, or another supported representation while preserving the declared vector and policy.
- A result context records every objective component, each priority-level optimum or bound, the tolerances applied, and the final hard/soft status.
The compiler architecture page describes why objective policy should survive translation into a solver mechanism. Solving results explains why one scalar score is not enough evidence for a multi-objective result: users need the component values and the status of each level. Critical constraint analysis can then analyze a stated target for one objective while documenting whether other objective levels were fixed, preserved lexicographically, or allowed to trade off.
This organization is conceptual. It does not assume a particular current class, factory, or backend capability.
5. Common pitfalls
5.1 Adding quantities with incompatible units
The expression
5.2 Using weights as a substitute for a priority rule
A weight that works on today's data can fail after costs, capacities, or bounds change. If “never sacrifice service level” is the policy, use a lexicographic level or a proven dominance coefficient derived from bounds and resolution. Do not call a merely large coefficient lexicographic without that derivation.
5.3 Turning a hard rule into a penalty accidentally
An order that must be served, a safety limit, or a legal constraint belongs in
5.4 Leaving violation variables only lower-bounded
Rows such as
5.5 Ignoring finite ranges when emulating priorities
The coefficient
5.6 Mixing business tolerance with numerical tolerance
A one-day acceptance band and a
5.7 Reporting only the scalar score
Two plans can have the same weighted score but very different delay and cost. A result should include the objective vector, normalized components, weights or priority order, tolerances, and the hard-feasibility status. If a solve is not proven optimal at one level, say so instead of presenting the incumbent scalar as a certified policy optimum.