Kestrel Pro

Constrained and multi-objective optimization. Handle inequality constraints, equality constraints, and multiple competing objectives with 99.99% accuracy on standard benchmarks.

99.99%
Accuracy on G06
20+
Pareto points (ZDT1)
0.98
Hypervolume achieved
Both
Equality & inequality
import thalosforge as tf

# G06 constrained benchmark
def objective(x):
    return (x[0]-10)**3 + (x[1]-20)**3

# Inequality constraints: g(x) <= 0
def g1(x):
    return -(x[0]-5)**2 - (x[1]-5)**2 + 100

def g2(x):
    return (x[0]-6)**2 + (x[1]-5)**2 - 82.81

result = tf.optimize(
    objective,
    bounds=[(13,100), (0,100)],
    method='kestrel',
    constraints=[
        {'type': 'ineq', 'fun': g1},
        {'type': 'ineq', 'fun': g2},
    ]
)
# Result: -6961.82 (optimal: -6961.81)

Product Preview

Experience the dashboard interface

Why Kestrel Pro

Real-world problems have constraints. Kestrel handles them.

Inequality Constraints

Handle g(x) ≤ 0 constraints using penalty methods or feasibility rules. Active constraint identification ensures solutions lie exactly on constraint boundaries.

Equality Constraints

Support for h(x) = 0 constraints through augmented Lagrangian methods. Satisfy exact requirements like budget totals or conservation laws.

Multi-Objective

Generate Pareto-optimal fronts for problems with competing objectives. Return a set of trade-off solutions, not just a single point.

Penalty Methods

Adaptive penalty factors that increase as optimization progresses. Start with soft constraints, end with strict feasibility enforcement.

Feasibility Rules

Constrained tournament selection that prioritizes feasible solutions. Never return an infeasible solution even during early iterations.

SciPy Compatible

Constraint specification matches SciPy's interface. Drop-in replacement for constrained minimize—just change the method name.

Benchmark Results

Validated on standard constrained optimization test problems

G06 Constrained

−6961.82
Known optimal: −6961.81
99.99% accuracy

Minimize (x₁-10)³ + (x₂-20)³ subject to two nonlinear inequality constraints. Kestrel finds the global optimum at the constraint boundary.

ZDT1 Multi-Objective

20+ Pareto points
Hypervolume: 0.98
Well-distributed front

30-dimensional bi-objective problem. Kestrel generates a diverse Pareto front covering the full trade-off surface between objectives.

Use Cases

Where constraints define the problem

Portfolio Optimization

Maximize returns subject to risk constraints, position limits, and budget requirements. Handle inequality bounds on individual holdings and equality constraints on total allocation.

Engineering Design

Optimize structural weight while satisfying stress limits, deflection bounds, and manufacturing constraints. Find feasible designs that meet all specifications.

Resource Allocation

Distribute limited resources across projects with capacity constraints, minimum commitments, and budget ceilings. Satisfy all requirements while maximizing value.

Supply Chain

Minimize logistics costs subject to demand fulfillment, warehouse capacity, and transportation limits. Find optimal flows through constrained networks.

Have constrained problems?

Request a trial to test Kestrel Pro on your specific constrained optimization challenges. Our team can help you formulate constraints and validate solutions.