VIEW THIS AS

Auto mode follows the Route Engine until you choose a viewpoint.

YOU ARE HERE

ROUTE CHECK

CONNECTED TO

WHAT NEXT

Use the canonical route for this room, or HELP if you are unsure.

The Gold Standard of Signomial Programming

Signomial programming optimises models built from sums of power-law terms whose coefficients may be positive or negative. Allowing subtraction makes the models more expressive than standard geometric programs, but generally removes their convexity guarantee. The gold standard is to distinguish a feasible candidate, a locally optimal decision and a globally certified answer, and to check every reported result against the original equations.

This guide develops that distinction through a complete one-variable problem with two separated feasible regions, a reproducible sequence of geometric approximations, and practical tests for approximation direction, starting points and numerical residuals. All numerical examples are invented teaching models with continuous positive variables. They are not measurements or performance promises about an actual engineering system.

Start with the Geometric Programming root if monomials, posynomials and logarithmic coordinates are unfamiliar. The Gold Standard master, Education parent and How X Works hub provide wider routes through dependable reasoning, transferable learning and mechanisms.

CHAPTER 1 OF 14 · Define and separate the model

1. Define the function before choosing the method

Back to contents

Using positive variables x₁,…,xₙ, a signomial is a finite sum of terms cₖx₁^a₁ₖ…xₙ^aₙ with fixed real exponents and real coefficients. Terms with zero coefficients can be removed. When all remaining coefficients are positive, the expression is a posynomial. A single positive term is a GP monomial. The important extension is the permission to subtract terms.

For example, 2x²+3/y−5√x is a signomial on x>0,y>0. Its negative term does not make it undefined, although the complete expression may become negative. Ordinary polynomial examples are included when their variables are restricted to be positive, but signomials also allow fractional and negative exponents.

There is another common convention. After writing xᵢ=exp uᵢ, the same function becomes a sum cₖexp(aₖ·u). Some technical literature uses the word signomial directly for this exponential form in unrestricted real variables u. Always identify which coordinates an author uses. A positive physical setting and its possibly negative logarithm are different numbers.

Keep units and domain visible

If x is a physical quantity, first divide it by a fixed reference quantity before taking its logarithm. A dimensionless ratio can legitimately appear inside a logarithm. Changing the reference scale changes coefficients and coordinates, but should not change the physical decision after conversion back.

Consider x²−4x+3. It is a signomial, but that label alone does not describe its sign or convexity. At x=2 it equals −1; at x=4 it equals 3. In original coordinates it is convex because its second derivative is 2. A signomial need not be nonconvex as a function, even though general signomial optimisation problems can be nonconvex.

The problem also depends on how the function is used. A convex function bounded above by zero gives a convex sublevel constraint. The same function bounded below by zero can produce a nonconvex set. We will use precisely this distinction in the main worked example, rather than treating “nonlinear” as a complete diagnosis.

Contents · Next chapter

CHAPTER 2 OF 14 · Define and separate the model

2. Separate positive and negative terms correctly

Back to contents

Write a signomial constraint s(x)≤0 by collecting its positive terms into f(x) and the magnitudes of its negative terms into g(x). When both groups are nonempty, the condition is f(x)≤g(x), with f and g posynomials. Constants belong to whichever side their signs require. This rearrangement exposes the competition between two positive sums.

As an example, 4x−x²−3≤0 becomes 4x≤x²+3. All terms on both sides are positive for x>0. Dividing by x²+3 is algebraically allowed, but the ratio 4x/(x²+3) is not automatically a posynomial. A denominator that is a sum needs different treatment from a monomial denominator.

The Stanford geometric-programming tutorial discusses signomial inequalities and local approximations beyond standard GP. The central modelling discipline is to retain exact equivalence before introducing any approximation. Rearranging a constraint and approximating a constraint are separate operations.

Subtraction is a clue, not a verdict

The constraint x−y≥2 can be written y+2≤x, and then y/x+2/x≤1. That is a valid standard GP inequality. A negative term in the original display did not force a genuinely signomial treatment. Simplification can reveal a stronger structure.

Conversely, the requirement x+y≥2 remains a lower bound on a sum. Taking logarithms gives log(exp u+exp v)≥log2. A lower bound on a convex expression is not generally a convex constraint. Positivity has made the logarithm valid but has not made the feasible set convex.

Before using an iterative signomial method, ask whether an equivalent GP, convex program or elementary calculation already solves the model. This is particularly important for small problems, where a factorisation can supply a global answer more transparently than a sequence of solver calls.

A useful audit records the original expression, the rearranged positive sides, and one feasible and one infeasible test point. If the test points change classification, repair the algebra before discussing convergence, tolerances or starting points.

Previous chapter · Contents · Next chapter

CHAPTER 3 OF 14 · Define and separate the model

3. Solve a model with two separated feasible regions

Back to contents

Our main problem is to minimise x subject to 4x≤x²+3 and 0.5≤x≤4. The variable is a positive dimensionless setting, and cost equals its value. The bounds are part of the problem, not numerical conveniences added later. Everything is continuous.

Move all terms to one side and factor: x²−4x+3=(x−1)(x−3). The constraint requires this product to be nonnegative. Both factors are nonpositive when x≤1, and both are nonnegative when x≥3. Between 1 and 3 their signs differ, so the product is negative.

Intersecting with the bounds gives two feasible intervals: [0.5,1] and [3,4]. Since the objective increases with x, the global optimum is x=0.5 with cost 0.5. The smallest point in the right-hand interval is x=3 with cost 3. It is a local minimum relative to the feasible set, but it is not the global minimum.

Explain the local claim precisely

Choose a sufficiently small neighbourhood of x=3, for example all points less than 0.5 away. Its feasible points lie on or to the right of 3, and none has lower cost. That establishes local optimality. It says nothing about the distant feasible interval ending at 1.

The midpoint of two feasible points need not be feasible. Both x=1 and x=3 satisfy the constraint, but their midpoint x=2 does not: 8≤7 is false. In logarithmic coordinates their midpoint corresponds to x=√3, also inside the forbidden gap. Neither coordinate system connects these two branches through a feasible midpoint.

This example gives us an answer key for algorithm testing. A method returning 3 may be doing its local job correctly. A method claiming that 3 is globally optimal is making an unsupported statement. A method returning 2 has failed feasibility. These are three distinct outcomes, and a useful report must distinguish them.

The global certificate is unusually simple here: every feasible point obeys x≥0.5, and x=0.5 is feasible. A general multidimensional model may need much more work to obtain a comparable lower bound.

Previous chapter · Contents · Next chapter

CHAPTER 4 OF 14 · Build and test local steps

4. Build a conservative monomial approximation

Back to contents

Suppose g(x) is a sum of positive monomial terms mₖ(x). At a positive reference point z, define weights αₖ=mₖ(z)/g(z). They are positive and sum to one. The weighted arithmetic–geometric mean inequality gives g(x)≥∏[mₖ(x)/αₖ]^αₖ. Call the product on the right ĝ(x).

Because a product of fixed powers of monomials is a monomial, ĝ is a GP monomial. At x=z, every ratio mₖ(z)/αₖ equals g(z), so ĝ(z)=g(z). The approximation touches the true positive sum at the reference point and stays below it everywhere on the positive domain.

For g(x)=x²+3 and z=3, the two terms are 9 and 3. Their weights are 3/4 and 1/4. The approximation is therefore (x²/(3/4))^(3/4)×(3/(1/4))^(1/4), which simplifies to 12(x/3)^(3/2).

Check the bound away from the touching point

At x=3, both g and ĝ equal 12. At x=1, the true value is 4 while the approximation is 12/(3√3), approximately 2.3094. At x=4, the true value is 19 and the approximation is about 18.4752. These checks agree with the lower-bound direction proved by the inequality.

Now replace f(x)≤g(x) by the stronger condition f(x)≤ĝ(x). Any point satisfying the replacement also satisfies the original condition, because ĝ≤g. This is an inner approximation of the feasible set. It may exclude feasible points, but it does not admit an originally infeasible point in exact arithmetic.

That last qualification matters. An approximate solver or rounded output can still violate a constraint slightly. The analytical implication describes the mathematical subproblem; a numerical implementation must check that it actually solved that subproblem adequately.

Do not reverse this logic. Replacing g with an upper bound makes the inequality easier to satisfy and can admit invalid decisions. The usefulness of the approximation comes from its direction as well as its closeness near z.

Previous chapter · Contents · Next chapter

CHAPTER 5 OF 14 · Build and test local steps

5. Watch the local iteration become trapped on one branch

Back to contents

At z=3, replace the original constraint 4x≤x²+3 with 4x≤12(x/3)^(3/2). Since x>0, divide by 4x to obtain 1≤√(x/3). Thus the approximate constraint is simply x≥3. With the bounds 0.5≤x≤4, minimising x returns x=3 again.

The iteration has reached a fixed point. The result is feasible for the original model and locally optimal. Yet the entire interval [0.5,1], including the global answer 0.5, has been excluded by this conservative approximation. Re-solving the same local subproblem more accurately cannot reveal the omitted branch.

Start instead at z=4. The weights are 16/19 and 3/19, so ĝ(x)=19(x/4)^(32/19). Solving 4x≤ĝ(x) gives a lower bound on x. The smallest permitted value is approximately 3.111573669, which is an improvement over 4 and remains in the right-hand feasible interval.

A reproducible numerical sequence

For a current z on this branch, set a=2z²/(z²+3). The touching monomial is (z²+3)(x/z)^a. Since a>1 for z≥3, the next smallest feasible x is [4z^a/(z²+3)]^(1/(a−1)), provided it remains within the explicit bounds.

Starting with 4, this formula gives approximately 3.111573669, 3.002778700, 3.000001925, and 3.000000000001. The original residual x²−4x+3 decreases from 3 to about 0.235596, 0.00556512, 0.00000384929, and then nearly zero.

Both the objective trace and feasibility trace look excellent. Neither is a global optimality certificate. The true global cost is still 0.5. This is why a polished convergence plot can be misleading if the report does not say what kind of guarantee the algorithm provides.

Starting at the globally optimal point 0.5 gives a different local approximation containing that point. Because the explicit lower bound already excludes every smaller decision, minimising over that subproblem returns 0.5. Initialisation determines which part of the feasible set the local process explores.

Previous chapter · Contents · Next chapter

CHAPTER 6 OF 14 · Build and test local steps

6. Understand what monotonic improvement actually proves

Back to contents

Assume the current point is feasible for the original constraints. Build touching lower monomials for every right-hand posynomial and solve the resulting inner approximation exactly, using the same objective. The current point is feasible for the new subproblem because every approximation is exact there. Therefore the subproblem optimum cannot have a worse objective value than the current point.

Every new subproblem-feasible point is also original-feasible because the approximation is conservative. Under these stated assumptions, the procedure preserves feasibility and makes the objective nonincreasing. This is a useful property, but it is much weaker than finding the global optimum.

If the objective is bounded below, its monotonically decreasing values converge to some limit. That statement concerns the sequence of numbers, not necessarily convergence of the decision vectors, stationarity of every accumulation point, or global optimality. Stronger conclusions require additional assumptions about the model and algorithm.

Identify which assumption an implementation changes

A solver may return an approximate subproblem solution. A penalty formulation may permit temporary violations. A trust region may restrict movement. A stopping test may terminate before a stationary point is reached. Any of these can change the simple argument above, so describe the actual procedure rather than borrowing a guarantee from a different one.

The GPkit signomial-programming documentation explicitly uses a local-solve interface and exposes starting-point and relative-improvement controls. Its terminology is an important reminder that solving a sequence of geometric programs does not turn the original signomial problem into a globally solved GP.

For the main example, a relative cost change below one millionth could occur near 3. The remaining global improvement is still 2.5 cost units. A small step or small objective change tells us that the current process is moving little, not that no better feasible decision exists elsewhere.

In a practical report, write “feasible candidate found by local iteration” until stronger evidence supports a stronger statement. If a stationarity check is also available, report it separately with its tolerance and coordinate convention. Precision of language helps a later reviewer decide whether further search is worthwhile.

Previous chapter · Contents · Next chapter

CHAPTER 7 OF 14 · Initialise and bound

7. Recognise the connection with convex–concave procedures

Back to contents

For positive f and g, the condition f(x)≤g(x) is equivalent to log f(exp u)−log g(exp u)≤0 in logarithmic variables. When f and g are posynomials, each logarithmic expression is convex. The difference of two convex functions need not be convex.

A convex function lies above each of its tangent affine functions. Replace log g(exp u) by its affine tangent at the current point. Subtracting that tangent produces a convex upper approximation to the constraint expression. Requiring this upper approximation to be nonpositive is conservative. Exponentiating the tangent recovers the touching monomial used earlier.

The Lipp and Boyd paper on the convex–concave procedure studies this local approach and extensions, including methods for initialisation without an already feasible point. It provides a broader algorithmic setting; it does not remove the distinction between local search and global certification.

Derive the tangent for our example

Let G(u)=log(exp(2u)+3). Its derivative is 2exp(2u)/(exp(2u)+3). At u=log3, this equals 18/12=3/2. The tangent is log12+(3/2)(u−log3). Exponentiating gives 12(x/3)^(3/2), exactly the monomial obtained by weighted arithmetic–geometric means.

This second derivation verifies the exponent and constant independently. It also explains why the approximation matches the logarithmic derivative, not merely the function value. A constant lower bound could touch at an isolated point without giving the same first-order behaviour.

The decomposition is not always unique. Algebraically equivalent differences can generate different local approximations. Adding the same convex function to both sides preserves the original difference but changes both tangents and subproblem curvature. Therefore the representation can affect the numerical path even when the exact feasible set is unchanged.

Treat that dependence as a modelling decision to investigate. Compare representations on small cases with known answers, record the chosen decomposition, and assess original residuals. A different iteration count alone does not establish that one representation is more faithful to the intended physical model.

Previous chapter · Contents · Next chapter

CHAPTER 8 OF 14 · Initialise and bound

8. Find feasible starting points without hiding violations

Back to contents

The clean feasibility-preservation argument begins with a feasible point. In our example, x=4 and x=0.5 are valid starts. The midpoint x=2 is not. A numerical initial guess is not automatically an admissible design, even when it lies inside all simple variable bounds.

Suppose a feasibility-restoration method introduces a slack s≥0 and temporarily uses 4x≤x²+3+s. At x=2, the smallest slack is 1. Reporting x=2 as a valid solution while omitting s would conceal the exact amount of unmet performance in this normalisation.

A penalty on s can encourage smaller violations, but a finite penalty does not generally prove that the final slack is zero. If the original model is infeasible, some positive violation may be unavoidable. If the model is feasible, a local penalty method can still stop at an unsatisfactory point. Always return to the unrelaxed constraints.

Scale the restoration problem deliberately

If one constraint is expressed in thousands of units and another in fractions, adding their raw violations may let the larger numerical scale dominate. Choose dimensionless normalisations or justified weights. Record them because changing them can change which violation the algorithm repairs first.

In the main problem, evaluating a few structured starts reveals both branches. This is more informative than repeatedly perturbing x=4 by tiny amounts. Every such perturbation remains near the same region. A wider search should be based on the bounds and the mechanisms, not only on random jitter around one design.

The Stanford sequential-convex-programming slides discuss local methods, trust regions and sensitivity to starting points. A trust region controls the distance over which a local model is used; it is not a certificate that an unvisited region contains no improvement.

When no feasible start is found, report that outcome accurately. “No feasible point found by this procedure” is different from “the requirements are inconsistent”. The latter needs an infeasibility argument or certificate appropriate to the original problem, not merely a failed sequence of approximations.

Previous chapter · Contents · Next chapter

CHAPTER 9 OF 14 · Initialise and bound

9. Separate inner approximations from global lower bounds

Back to contents

For minimisation, restricting the feasible set can only raise the best achievable objective value. An inner approximation therefore produces an upper-bound candidate when its solution is feasible for the original problem. It does not generally produce a lower bound on the original global optimum.

In the worked example, the local subproblem x≥3 has optimal value 3. That tells us a feasible solution of cost 3 exists. It cannot prove that every original feasible solution costs at least 3, because the original set also contains 0.5. Confusing these bound directions turns local success into a false certificate.

A relaxation works in the other direction: it admits every original feasible point, possibly with additional points. Solving a suitable minimisation relaxation gives a lower bound, provided its objective is handled consistently. Combine a valid lower bound L with a feasible cost U to obtain L≤f*≤U.

Read the gap in the correct units

For our model, the explicit domain bound x≥0.5 gives L=0.5. The local candidate x=3 gives U=3, so the certified gap is 2.5. Once a feasible point x=0.5 is found, the bounds meet and global optimality follows. No further numerical search is needed.

The Convex Duality root develops feasible decisions and lower-bound certificates in more detail. The certificate must belong to the original problem or a justified relaxation, not merely to a restricted subproblem solved along the way.

For more difficult signomial problems, Chandrasekaran and Shah’s relative-entropy relaxations provide a research route to nonnegativity certificates and optimisation bounds. Such methods address a different question from finding a promising local design. A bound may be useful even when it does not exactly match the best feasible objective.

Do not describe an unsuccessful certificate search as proof that a proposed bound is false unless the method supports that conclusion. Sufficient certificate families can fail to certify true statements. Keep the logical direction of each result visible, just as you keep the direction of every original inequality visible.

Previous chapter · Contents · Next chapter

CHAPTER 10 OF 14 · Diagnose and validate

10. Control cancellation and evaluate original residuals

Back to contents

Signomial expressions subtract positive contributions. If two large contributions nearly cancel, their small difference can be sensitive to rounding. A mathematical value close to zero may be computed with little relative accuracy even when each large term is individually represented well.

For example, near x=3 the expression x²−4x+3 combines terms of approximate sizes 9, −12 and 3. The factored form (x−1)(x−3) gives a transparent sign check for this special polynomial. General signomials may not admit such a factorisation, so use scale-aware residuals and, where necessary, higher-precision evaluation.

For a constraint f≤g with positive sides, report both f−g and log f−log g. The raw difference has the units of the constraint; the logarithmic difference measures a multiplicative discrepancy. Neither should be interpreted without the normalisation used in forming f and g.

Check a slightly infeasible returned point

At x=2.999, the original nonnegative-side residual is (1.999)(−0.001)=−0.001999. The point lies inside the forbidden interval, so it is infeasible. Rounding it to three decimal places does not repair the violation. Rounding it to 3 changes the proposed decision and requires a new evaluation of all constraints.

Positive sums can be evaluated in log coordinates using log-sum-exp. The existing Mixture Density Networks specialist guide explains the maximum-shift calculation that avoids unnecessary exponential overflow or underflow. The same numerical mechanism is useful here, although the statistical model and optimisation problem are different.

Do not take the logarithm of the complete signed sum when it can be zero or negative. Instead evaluate the positive and negative groups separately and compare them. Logarithms are a tool for positive quantities, not a way to erase a sign change.

A dependable result record includes original variables, original objective, every original constraint residual, bound violations, solver status and stopping reason. Keep the unrounded values for checking and the rounded values for communication, and verify any rounded values that will actually be implemented.

Previous chapter · Contents · Next chapter

CHAPTER 11 OF 14 · Diagnose and validate

11. Use multiple starts as evidence, not proof

Back to contents

Running a local method from several starts can expose different solutions. In the main model, a start on the right branch approaches 3, while a suitable start on the left can return 0.5. That comparison immediately refutes a claim that 3 is globally best. It also shows that the algorithm has not explored a single connected convex landscape.

If one hundred starts all return the same candidate, the evidence is stronger than one run but still does not by itself certify global optimality. The starts may all lie in one attraction region, the initialisation may project them into the same region, or another feasible component may be small and difficult to locate.

Design a comparison that answers a real question

Record the starting points, their original feasibility, the returned points, objective values and residuals. Separate failure to initialise, numerical failure and convergence to an inferior feasible candidate. Reporting only the best value discards information needed to understand reliability.

For a small bounded scalar model, use analytic roots and interval signs whenever possible. For a larger model, consider structured starts representing different design regimes. If one variable represents a resource allocation ratio, test genuinely different ratios rather than only different absolute scales that preserve the same regime.

A grid can provide a sanity check, but its resolution matters. A narrow feasible interval can lie between grid points. A grid that finds no feasible point has not proved infeasibility. Likewise, a very good sampled objective is an upper-bound candidate only after exact constraint evaluation.

Compare local results with any available global bounds. If a feasible cost is 10.02 and a valid lower bound is 10, the unresolved improvement is at most 0.02 in objective units. That conclusion is much more actionable than “all starts agreed” because it quantifies what remains unknown.

The computational effort should match the decision. A preliminary design study may accept a well-checked local candidate. A claim of provable optimality requires a certificate. State the required evidence before selecting the stopping rule, so the label on the final result does not outrun the work actually performed.

Previous chapter · Contents · Next chapter

CHAPTER 12 OF 14 · Diagnose and validate

12. Test whether the fitted model deserves optimisation

Back to contents

A signomial may be fitted to observations because positive and negative terms capture competing effects. Optimising that fit can emphasise precisely the regions where its errors are largest. The solver searches for favourable predictions, not for places where the data are most trustworthy.

Suppose a fitted performance margin is q(x)=x²−4x+3 over a measured range from 3 to 4. The mathematical expression also predicts an acceptable branch below 1. That branch follows from the formula, but it is not empirically validated by observations confined to the upper range. A mathematically global optimum at 0.5 could therefore be an unsupported physical recommendation.

This is why the teaching problem declares the equation exact on the entire specified interval. In an applied model, distinguish the declared mathematical domain from the range supported by evidence. Add a validity domain when justified, or investigate the proposed design with additional measurements before relying on it.

Check the sensitivity of a boundary decision

At x=3, the margin q is zero. If the required margin increases by a small positive amount δ, that boundary point is no longer feasible. On the upper branch, solving x²−4x+3=δ gives x=2+√(1+δ). For δ=0.21, the new boundary is 3.1, since 1.1²=1.21.

The calculation shows how a requirement change moves the boundary, but it does not quantify uncertainty in the coefficients. If the coefficient −4 itself is uncertain, the roots move differently. Distinguish uncertainty in requirements, measurement error and model structure rather than combining them into an unexplained safety factor.

Do not remove a negative term merely because the remaining model is easier to solve. Whether removal is conservative depends on the term’s role and inequality direction. For q≥0, dropping the negative term −4x makes feasibility easier and can admit unacceptable settings. Simpler is not automatically safer.

The practical output should identify a candidate, its validation domain and the assumptions most likely to change the decision. An exact numerical optimum is only as useful as the relationship it optimises. This is a modelling obligation, not a defect that tighter solver tolerances can correct.

Previous chapter · Contents · Next chapter

CHAPTER 13 OF 14 · Transfer and continue

13. Transfer the reasoning when the lower bound changes

Back to contents

Replace the bound x≥0.5 by x≥b, while keeping x≤4 and (x−1)(x−3)≥0. Assume b>0. The original feasible branches remain below or at 1 and above or at 3, but the new lower bound may remove part or all of the cheaper branch.

If 0<b≤1, the optimum is x=b because that point is feasible and no smaller point is allowed. If 1<b≤3, the entire lower branch is removed and the optimum jumps to x=3. If 3<b≤4, the optimum is x=b again. If b>4, the variable bounds alone are inconsistent.

A small input change can cause a large decision change

At b=1, the optimal cost is 1. At b=1.01, it is 3. The parameter changed by 0.01, but the optimal decision changed by 2. The discontinuity arises because a whole feasible component disappears, not because the arithmetic became inaccurate.

A local run on the upper branch might return 3 for both parameter values. At b=1.01, that answer is globally correct. At b=1, it misses a cheaper feasible point. The numerical output alone therefore does not tell us which global claim is justified; the domain analysis must accompany it.

Now reverse the inequality and require (x−1)(x−3)≤0, with 0.5≤x≤4. The feasible interval becomes [1,3], and minimising x gives x=1. This altered problem is convex in original coordinates. A familiar formula with a reversed sign can change both the answer and the appropriate solution method.

For an independent exercise, minimise x with 0.25≤x≤5 and x²−5x+4≥0. Factor the expression before using a local solver. The feasible intervals are [0.25,1] and [4,5], so the global answer is 0.25 and the upper-branch local minimum is 4. Raising the lower bound to 1.2 makes 4 globally optimal.

To demonstrate transfer, explain the interval signs, identify the global lower bound, verify the attaining point and describe what a local method might miss. Producing only the final number does not show that you can distinguish a changed feasible set from a changed algorithmic path.

Previous chapter · Contents · Next chapter

CHAPTER 14 OF 14 · Transfer and continue

14. Answer practical questions and choose the next step

Back to contents

Is every signomial problem nonconvex?

No. The function class is broad, and some instances simplify to convex problems or standard geometric programs. Check the actual objective, domain and constraint directions. The reversed-inequality exercise shows why the same expression can define very different optimisation problems.

Is a local solution useless?

No. A feasible local candidate can be valuable, particularly when it improves a baseline and the decision tolerates unresolved optimality. Its usefulness does not require relabelling it as globally optimal. Report what was checked and what remains unknown so another person can judge whether additional computation is justified.

Can a sequence of globally solved GPs still miss the global answer?

Yes. Each GP solves a restricted approximation. Global optimality within that subproblem does not imply global optimality over the original feasible set. Our sequence from 4 to 3 is an explicit calculation of this failure, with a known better original point at 0.5.

What should I check before trusting a software result?

Check the original-domain constraints, the coefficient signs, the objective direction, the starting point, all returned residuals and the stopping reason. Determine whether a reported bound belongs to the original problem, a relaxation or an inner approximation. Record package and solver versions when reproducing numerical work.

What is the best learning sequence?

Begin with sign classification and rearrangement. Next factor the main polynomial and identify its feasible intervals. Derive the touching monomial at z=3, calculate the iteration from z=4, and explain why it cannot certify the global answer. Finally change the lower bound and solve the transfer exercise without copying the old optimum.

For an applied project, use a small version of your model with an independently known answer before scaling up. Test a deliberately infeasible point, a boundary point and a different feasible regime. These cases reveal errors that a smooth objective trace can hide.

Continue with GPkit’s signomial documentation for its local modelling interface, Lipp and Boyd for convex–concave procedures, and relative-entropy relaxations for a route towards global bounds. Return to Geometric Programming when your constraints simplify to its stronger structure, or to Convex Duality when the next question is how to certify an optimisation result.

Previous chapter · Contents · Gold Standard master