SIAM REVIEW ⃝c 1999 Society for Industrial and Applied Mathematics Vol. 41, No. 4, pp. 795–805
Pseudolinear Programming∗
Serge Kruk† Henry Wolkowicz†
Abstract. This short note revisits an algorithm previously sketched by Mathis and Mathis [SIAM Rev.,37(1995),pp.230–234]andusedtosolveanonlinearhospitalfeeoptimization problem.AnanalysisoftheproblemstructurerevealshowtheSimplexalgorithm,viewed under the correct light, can be the driving force behind a successful algorithm for an almost linearproblem.Thispresentationisintendedforstudentswhohavebeenexposedtothe Simplex method for linear programming and are progressing, via the Karush–Kuhn–Tucker conditions, toward nonlinear optimization.
Key words. nonlinear programming, Simplex method, pseudoconvexity, fractional programming AMS subject classifications. 90C08, 90C30, 49M37
PII. S0036144598335259
- A Seemingly Nonlinear Program. In a past Classroom Notes column [6], Mathis and Mathis introduced an interesting optimization problem. Their model was practical, in this era of tightening budget constraints: it described a facet of hospital revenue used by managers in Texas to help set fees for procedures. Even more interesting, for the theoretically minded, is the fact that a trivial algorithm apparently solved, albeit without a convergence proof, a nonlinear, arguably difficult problem.
We revisit this problem to give a strong mathematical foundation to a slightly modified algorithm and to explain, along the way, why the problem is much simpler than expected at first glance. To do so, we introduce the concept of pseudolinear functions and view the Simplex method as an active set algorithm. The historically inclined will notice that the results used for this analysis are all 30 years old.
Mathis and Mathis gave a complete description of the problem, to which we refer the reader [6]. We just repeat the more important points of the model formulation.
• There are d departments in the hospital.
• Department i performs pi procedures.
• Charges are assigned to procedure j in department i by:
—mij ≥ 0 represents Medicare/Medicaid charges; —oij ≥ 0 represents other charges;
— cij > 0 represents total charges (cij = mij + oij ).
• The government-fixed outpatient cost is Ci > 0 for department i.
• The decision variable rij represents the fraction of increase in the charge for
procedure j, department i.
• The charge increase is upper and lower bounded by lij ≤ rij ≤ uij .
∗Received by the editors March 6, 1998; accepted for publication (in revised form) May 1, 1999; published electronically October 20, 1999.
http://www.siam.org/journals/sirev/41-4/33525.html
†University of Waterloo, Department of Combinatorics and Optimization, Waterloo, ON N2L
3G1, Canada (sgkruk@acm.org, henry@orion.uwaterloo.ca).
795
Downloaded 05/31/20 to 61.148.243.125. Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.php
796 SERGE KRUK AND HENRY WOLKOWICZ
• The overall charge increase is a constant q × 100 percent.
Their model then produces the following maximization problem:
d pi
maxF® :=
i=1 j=1
pi
j=1 mij(1+rij)
subject to cijrij = q cij, i=1 j=1 i=1 j=1
oij(1 + rij) + Ci d pi
pi cij(1 + rij) j=1
d pi
lij ≤ rij ≤ uij. This results in Algorithm 1 for solving the maximization.
Algorithm 1 (Mathis and Mathis [6]).
Set all rij to q and sort the procedure in ascending order of Qij := ( ∂F )( 1 ).
∂ rij cij
while the sort produces a different ordering do
Set all rij to uij.
Beginning with the smallest Qij, assign lij to rij until the solution is nearly feasible. Then adjust the last rij to make it so.
Compute the new Qij and sort.
end while
The algorithm is unexpectedly simple, especially when contrasted to the problem it pretends to solve. But it begs a convergence proof. The authors checked the results against a well-known nonlinear solver to gain confidence in the procedure but stopped short of a proof. Moreover, one characteristic of the algorithm is nagging: looking at the feasible region as the polytope that it is, we see that iterates proceed from vertex to vertex. i=d
To observe this behavior, let n be the number of variables (n := i=1 pi) and notice that the program has 1 equality constraint and 2n inequalities. Recall that a vertex is a basic feasible solution and that the algorithm, forcing all variables except one to either their upper or lower bound, will satisfy with equality exactly n − 1 of the inequalities. Adding the single equality constraint, we obtain n constraints in n-space, a vertex.
It should have struck the reader as odd that a continuous nonlinear program would attain its optimal solution at a vertex. Moreover, the algorithm seems never to remain stuck at a local optimum; it finds, according to the authors, the global optimum. “Curiouser and curiouser,” said Alice. Because of these surprises, we will reformulate the problem to highlight the characteristics that explain the algorithm’s behavior.
2. A Somewhat Less Nonlinear Program. How should one attack a problem like the one above? The objective function is nonlinear, which eliminates a blind ap- plication of the well-known Simplex method for linear programming (see [1]). Interior- point methods (see [8]) usually assume convex functions, which does not appear to be the case here. Yet a full-featured nonlinear solver, possibly based on sequential quadratic programming (see [9]), seems to be overkill. In the hope of recognizing spe- cial characteristics of the problem and of simplifying the analysis, we now reformulate and get rid of the noise, a valuable step in any modeling problem. First we let the solution space be Rn := Rp1 ⊕ · · · ⊕ Rpd , where the pi, we recall, indicate the number of procedures per department, to obtain
x∈Rpi, x := [1+rt ,1+rt ,…,1+rt ]t, i i i1 i2 ipi
ntttt
x ∈ R , x := [x , x , . . . , x ] . 12d
Downloaded 05/31/20 to 61.148.243.125. Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.php
PSEUDOLINEAR PROGRAMMING 797
Note that the decision variable is now nonnegative. We will use x to refer to the whole vector, x to refer to the subvector corresponding to department i, and x to
ii
refer to a component of x, according to the property of the solution that we wish to highlight. We make corresponding substitu