In
mathematical optimization
Mathematical optimization (alternatively spelled ''optimisation'') or mathematical programming is the selection of a best element, with regard to some criterion, from some set of available alternatives. It is generally divided into two subfi ...
, linear-fractional programming (LFP) is a generalization of
linear programming
Linear programming (LP), also called linear optimization, is a method to achieve the best outcome (such as maximum profit or lowest cost) in a mathematical model whose requirements are represented by linear function#As a polynomial function, li ...
(LP). Whereas the objective function in a linear program is a
linear function, the objective function in a linear-fractional program is a ratio of two linear functions. A linear program can be regarded as a special case of a linear-fractional program in which the denominator is the constant function one.
Relation to linear programming
Both linear programming and linear-fractional programming represent optimization problems using linear equations and linear inequalities, which for each problem-instance define a
feasible set. Fractional linear programs have a richer set of objective functions. Informally, linear programming computes a policy delivering the best outcome, such as maximum profit or lowest cost. In contrast, a linear-fractional programming is used to achieve the highest ''ratio'' of outcome to cost, the ratio representing the highest efficiency. For example, in the context of LP we maximize the objective function profit = income − cost and might obtain maximum profit of $100 (= $1100 of income − $1000 of cost). Thus, in LP we have an efficiency of $100/$1000 = 0.1. Using LFP we might obtain an efficiency of $10/$50 = 0.2 with a profit of only $10, but only requiring $50 of investment.
Definition
Formally, a linear-fractional program is defined as the problem of maximizing (or minimizing) a ratio of
affine function
In Euclidean geometry, an affine transformation or affinity (from the Latin, ''affinis'', "connected with") is a geometric transformation that preserves lines and parallelism, but not necessarily Euclidean distances and angles.
More generally, ...
s over a
polyhedron,
:
where
represents the vector of variables to be determined,
and
are vectors of (known) coefficients,
is a (known) matrix of coefficients and
are constants. The constraints have to restrict the
feasible region to
, i.e. the region on which the denominator is positive.
Alternatively, the denominator of the objective function has to be strictly negative in the entire feasible region.
Transformation to a linear program
Under the assumption that the feasible region is non-empty and bounded, the Charnes-Cooper transformation
:
translates the linear-fractional program above to the equivalent linear program:
:
Then the solution for
and
yields the solution of the original problem as
:
Duality
Let the
dual variables associated with the constraints
and
be denoted by
and
, respectively. Then the dual of the LFP above is
:
which is an LP and which coincides with the dual of the equivalent linear program resulting from the Charnes-Cooper transformation.
Properties and algorithms
The objective function in a linear-fractional problem is both quasiconcave and
quasiconvex (hence quasilinear) with a
monotone property,
pseudoconvexity, which is a stronger property than
quasiconvexity. A linear-fractional objective function is both pseudoconvex and pseudoconcave, hence
pseudolinear. Since an LFP can be transformed to an LP, it can be solved using any LP solution method, such as the
simplex algorithm (of
George B. Dantzig), the
criss-cross algorithm,
or
interior-point methods.
Notes
References
*
*
*
*
*
Further reading
*
*
*
*
*
Software
WinGULF– educational interactive linear and linear-fractional programming solver with a lot of special options (pivoting, pricing, branching variables, etc.)
*JOptimizer – Java convex optimization library (open source)
{{DEFAULTSORT:Linear-Fractional Programming
Optimization algorithms and methods
Linear programming
Generalized convexity