Solving a class of generalized fractional programming problems using the feasibility of linear programs

This article presents a new approximation algorithm for globally solving a class of generalized fractional programming problems (P) whose objective functions are defined as an appropriate composition of ratios of affine functions. To solve this problem, the algorithm solves an equivalent optimization problem (Q) via an exploration of a suitably defined nonuniform grid. The main work of the algorithm involves checking the feasibility of linear programs associated with the interesting grid points. It is proved that the proposed algorithm is a fully polynomial time approximation scheme as the ratio terms are fixed in the objective function to problem (P), based on the computational complexity result. In contrast to existing results in literature, the algorithm does not require the assumptions on quasi-concavity or low-rank of the objective function to problem (P). Numerical results are given to illustrate the feasibility and effectiveness of the proposed algorithm.


Introduction
In a variety of applications, we encounter a class of nonconvex optimization problems as follows: (P) : where c i , d i ∈ R n , c i , d i ∈ R, A ∈ R m×n , b ∈ R m , c i x + c i > , d i x + d i >  over a nonempty, compact set for each i = , . . . , p, and G : R p + → R + is a continuous function. Problem (P) is worth studying because some important special optimization problems that have been studied in literature fall into the category of (P), such as multiplicative programs, sum-of-ratios optimization, fractional polynomial optimization, namely: , etc. However, most of these methods lack theoretical analysis of the running time of the algorithms, or performance guarantee of the solutions obtained. To our knowledge, little work has been done about the solution of ε-approximation problems of (P) without the quasi-concavity and low-rank assumptions; although Locatelli [] has developed an approximation algorithm for a general class of global optimization problems. Next, we immediately introduce the definition of the ε-approximation problem related to global optimization as follows.
Definition  Given ε > , letting f * = min x∈ f (x), a pointx ∈ is said to be an ε- This article focuses on presenting a fully polynomial time approximation scheme (FP-TAS) for solving problem (P). An FPTAS for a minimization problem is an approximation algorithm, that is, for any given ε > , it can find an ε-approximation solution for the problem, and its running time is polynomial in the input size of the problem and /ε. As shown by Mittal and Schulz [], the optimum value of problem (P) cannot be approximated to within any factor unless NP = P. Therefore, in order to obtain an FPTAS for solving problem (P), some extra assumptions of the function G will be required (see Section ) in this article.
For the special cases of problem (P), many solution algorithms have been developed about the solution of ε-approximation problems. Depetrini and Locatelli [] presented an approximation algorithm for linear fractional-multiplicative problems, and they pointed out that the algorithm is an FPTAS as the number p of ratio terms is fixed. This result has been extended to a wider class of optimization problems by Locatelli []. Also, Goyal and Ravi [] exploited the fact that the minimum of a quasi-concave function is attained at an extreme point of the polytope and proposed an FPTAS for minimizing a class of low-rank quasi-concave functions over a convex set. Mittal and Schulz [] developed an FPTAS for optimizing a class of low-rank nonconvex functions without quasi-concavity over a polytope. In addition, Depetrini et al. [] and Goyal et al. [] respectively gave an FPTAS for a class of optimization problems where the objective functions are products of two linear functions. Shen and Wang [] presented a linear decomposition approximation algorithm for a class of nonconvex programming problems by dividing the input space into polynomially many grids. Nevertheless, these solution methods [, , -] cannot be directly applied to the case (i.e., problem (P)) considered in this paper, where the objective function is a composition of some ratios of affine functions without quasi-concavity or low-rank.
The aim of this article is to present a solution approach for a class of fractional programming problems (P). By introducing some variables, the original problem (P) is first converted to a p-dimensional equivalent problem (Q). Through the establishment of a nonuniform grid, on the basis of problem (Q), the solving process of the original problem (P) is then transformed into checking the feasibility of a series of linear programming problems. Thus, a new approximation algorithm is presented for globally solving problem (P) based on the exploration technique of a nonuniform grid over a box. The algorithm does not require quasi-concavity or low-rank of the function G to problem (P), and it is proved that this is an FPTAS as the term p is fixed in G. We emphasize here that the exploration technique used in this article is different from the ones given in [, ]. The reason is that we utilize a different strategy from that given in [, ] to update the incumbent best value of the objective function g(t) to problem (Q), and that requires fewer interesting grid points restored and considered in our algorithm, compared with Refs. [, ]. Also, we notice that the main computational cost of the proposed algorithm is checking the feasibility of linear problems at the interesting grid points. This means that it requires less computational cost and so is more easily implementable. Finally, problem (P) generalizes the one investigated in [], and the proposed algorithm can be directly applied to solve the problem in [] by replacing the convex feasibility with the linear one. Numerical results show that the proposed algorithm requires much less computational time to obtain an approximation optimized solution of problem (P) with the same approximation error than the approaches (given by [, ]) do.
The paper is structured as follows. In Section , we discuss the reformulation of problem (P) as a p-dimensional one. Section  presents an approximation algorithm to obtain an εapproximation solution for problem (P) which is FPTAS by its computational complexity. Some numerical results are reported in Section . Finally, the conclusions are presented in Section .

Parametric reformulation of the problem
For solving problem (P), throughout this paper, we assume that G satisfies: • G(y) ≤ G(y ) for all y, y ∈ R p + with y i ≤ y i , i = , . . . , p, and • δ k G(y) ≤ G(δy) for all y ∈ R p + , ∀δ ∈ (, ), and some constant k. There are a number of functions G which satisfy the above conditions, such as the product of a constant number (say p) of linear functions (with k = p), the sum of linear ratio functions (with k = ), etc. This paper will present an approximation algorithm for solving problem (P) under the above assumptions. For this purpose, let us introduce p variables y i , i = , . . . , p, thus, problem (P) can be equivalent to the form: Proof Let (x * , y * ) be a global optimal solution for problem (P). We suppose that x * is not a global optimal solution for problem (P), then there existsx ∈ such that Then (x,ȳ) is a feasible solution of problem (P). We can have, from (.), that On the other hand, since (x * , y * ) is a feasible solution of problem (P), this implies that . . , p. Therefore, from the assumptions of G, it holds that Combining (.) with (.), we can obtain G(ȳ) < G(y * ). Since (x,ȳ) is a feasible solution of problem (P), this contradicts the optimality of (x * , y * ) for problem (P). Therefore, the supposition that x * is not a global optimal solution for problem (P) must be false. Next, we will show the converse case. Let x * be a global optimal solution of problem (P), and let y * i = Suppose that there exists some feasible solution (x,ȳ) for problem (P) such that Then, from . Sincex ∈ , this contradicts that x * is an optimal solution of problem (P). Hence, (x * , y * ) must be the optimal solution to (P). Based on the above result, obviously, from the assumptions of G, we have f (x * ) = G(y * ).
Based on the above theorem, for solving problem (P), we may solve problem (P) instead.
Additionally, it is known that each single ratio is both quasi-concave and quasiconvex, and its minimum and maximum must be attained respectively at some vertex of (see, e.g., []). To this end, let us denote And let Now, let us define a p-dimensional set for each t ∈ H as follows: and the corresponding function g(t) is given by Clearly, we can know whether S(t) is a null set or not by checking the feasibility of a linear program for given t ∈ H, which can be solved in polynomial time. Based on the above result, it turns out that problem (P) is equivalent to the following p-dimensional problem: According to the definition of g(t), we have the following conclusion.
Theorem  Given ε > , let δ = (  +ε ) /k , for eacht ∈ H, it holds that Proof From the definition of S(t) and When S(δt) = ∅ and S(t) = ∅, similarly, we have that When S(t) = ∅, it implies that S(t) = ∅ for any t ∈ [δt,t], and so the conclusion holds.

The algorithm and its convergence
In this subsection, by using Theorem  above, we present an approximation algorithm for solving problem (P), and prove that the algorithm can find an ε-approximation solution for problem (P).
The proposed algorithm adopts an exploration technique of a suitably defined nonuniform grid over H. In the algorithm, let T be the set of all restored interesting grid points which will be further analyzed. W is a set of the grid points already discarded, and X is a set of the remaining grid points at each iteration. Moreover, U represents the best value of the function g(t) obtained so far, and denote t * such that U = g(t * ). The algorithm starts with t * = (u  , . . . , u p ) and U = g(t * ). In each iteration, we select a pointt ∈ T and calculateā = min{a ∈ N : S(δ at ) = ∅}, where N represents the set of the natural numbers. Ifā = , we newly select a pointt from T . Otherwise, we have S(δā -t ) = ∅, and so By using the nondecreasing G, it holds that g(δā -t ) = min t∈[δā -t ,t] g(t). In addition, for any t ∈ {t : And so, it is reasonable to update U = min{U, g(δā -t )} and t * such that g(t * ) = U. Next, we consider  p new points (ξ t , . . . , ξ ptp ) with ξ i ∈ {δā, } for all i, discard all points which satisfy ξ i u i < l i for some i, and add the remaining points to X , then update T = (T ∪ X )\W. This process is repeated until T = ∅. At termination, each point x * ∈ S(t * ) is an approximation solution of problem (P). The detailed algorithm is summarized as Algorithm .
Theorem  The proposed algorithm can find an ε-approximation solution for problem (P).
Proof Note that the algorithm evaluates the function g(t) values at the following points: For any t ∈ H, there is an integer vector (s  , . . . , Thus, in view of Theorem  and the definition of δ, it holds that Therefore, the point x * is an ε-approximation solution of problem (P) by Definition .

The complexity of the algorithm
In this subsection, the computational complexity of the algorithm will be presented in order to show that the approximation algorithm is an FPTAS for fixed p. For this purpose, we need to use the following lemma from Ref []. Let = {x ∈ R n : Ax ≤ b, x ≥ } be a polyhedron with A ∈ R m×n , b ∈ R m , and denotē λ = max , |A ij |, |b i | : i = , . . . , m, j = , . . . , n .
Then we have the following lemma.

Lemma  ([]
) Let x  be a vertex of , then, for each j = , . . . , n, it holds that Lemma  Given ε > , let δ = (  +ε ) /k . The number of the points (δ s  u  , . . . , δ s p u p ) satisfying (.), at which the feasibility of the corresponding linear programs are checked by the proposed algorithm, is not more than Proof Note that δ = (  +ε ) /k ∈ (, ) is fixed if >  is given. Since the points (δ s  u  , . . . , δ s p u p ) belonging to the nonuniform grid over H satisfy (.), the number of these grid points is equal to p i= (s i + ). Moreover, by the proposed algorithm, the number of the points (δ s  u  , . . . , δ s p u p ) at which the feasibility of linear programs should be checked is not larger than p i= (s i + ). In view of the definition ofs i and δ, we can have that Since ln( + ε) ≈ ε for sufficiently small ε > , we see that the number of points where the feasibility of linear programs should be checked is not larger than By the proposed algorithm, to find an ε-approximation solution for problem (P), the computational cost includes the cost of the computation of the box H and the calculation ofā at Step (k) of the algorithm for each iteration. It is known that each l i and u i must be attained at some vertex of respectively (see, e.g., []), and that can be computed in polynomial time, thus H can be determined in polynomial time. On the other hand, we notice that the main work is the calculation ofā at each iteration in the algorithm (see Step (k)). This is because the calculation ofā at each iteration requires checking the feasibility of some linear problems with m + p constraints and n variables. In other words, the computational cost of the algorithm is to check the feasibility of linear problems at interesting grid points. Let us denote T(m + p, n) as the cost of checking the feasibility of a linear programming problem with m + p constraints and n variables.
In order to give the computational cost of the proposed algorithm, without loss of generality, we can assume that This is because for any x ∈ . Based on the above discussion, combining Lemmas  and  finally leads to the following theorem.
Since for each interesting grid point we require the solution of a linear feasibility problem with m + p constraints and n variables, by Lemma , for given p, we can claim that the number of operations required by the proposed algorithm is not larger than Remark  From Theorem , we can conclude that the proposed algorithm is an FPTAS for problem (P) for fixed p. On the other hand, we know that the computational time of the proposed algorithm is an exponential increase with p increasing. These conclusions can be observed also in the numerical results of the next section.
Remark  Notice that the detailed complexity analysis of the proposed algorithm can be used as an indicator of the difficulty of some optimization problems, such as multiplicative programs, sum-of-ratios optimization, etc. Thus, in order to solve efficiently these problems, we should expect to design a more sophisticated approach where its performance is at least as good.  Tests are run on a PC with dual processor CPU (. Hz), Intel(R), and Core(TM) i. Notice that these algorithms use different approaches for computing the lower bound l i and the upper bound u i of each ratio term in the objective functions. Hence, for comparison, each l i , u i in the three algorithms is given by taking the same way (i.e., using (.)) in our computation.

Numerical examples
Some notations in Tables , ,  have been used for column headers: Solution: the approximate optimal solution; Optimum: the approximate optimal value; Iter: the number of the algorithm iterations; CPU(s): the execution time in seconds; Nodes: the maximal number of the interesting grid points restored; Avg: average performance by the algorithm; Std: standard deviation of performances by the algorithm.
We  Table .
[], respectively. In addition, we notice that the algorithm in [] cannot be reasonable to solve Examples  and , and so we do not use it for solving them.
From Table , it can be seen easily that the proposed algorithm requires less computational time for solving Examples - compared with the ones in [, ] with the same ε >  value. This is because the number of iterations and the maximal number of the interesting grid points restored are less than the ones in [, ] from Table , which means that the total number of the interesting grid points considered by the proposed algorithm is less than the one of the algorithms in [, ]. Also, in the three algorithms ([, ] and ours), notice that the main computational time is to check feasibility of linear programs at interesting grid points. Hence, the more interesting grid points are considered, the more computational time will be required.
Next, we apply the three algorithms ([, ] and our own) to randomly generated examples as follows. where all elements of c i ∈ R n and L ∈ R n are random numbers generated from the interval [, ]; b ∈ R m , V ∈ R n are randomly generated vectors with all components belonging to (, ); and each element of A ∈ R m×n is randomly generated in [ Table . In Tables  and , '-' means the problem cannot be solved within two hours. It can be seen from Tables  and  that the proposed algorithm needs fewer iterations and interesting grid points, and so requires less computational time for solving this kind of random problems, compared with the algorithms given by [, ]. Also, it is shown by Tables  and  that the performance of the algorithms is strongly affected by changes in n and p, specially, when p increases. The reason is that the number of operations required by the algorithms ([, ] and ours) is an exponential increase with p increasing according to the corresponding computational complexity results.
It is worth mentioning from Tables  and  that the computational time of the proposed algorithm increases with n and p increasing, but not as sharply as the algorithms in [, ]. For example, in Table , the instances cannot be solved by the algorithms in [, ] within two hours when p ≥  and p ≥ , respectively, while the presented algorithm can solve all instances with p increasing  to  in less than two hours. This is due to the fact that the main computational cost of the algorithms ([, ] and ours) is the solution of linear feasibility problems at the interesting grid points. That is to say, the computational time for solving this kind of problems is directly affected by the number of interesting grid points. We notice that for the algorithms in [, ], the number of iterations and interesting grid points checked at each iteration increases with p increasing. However, for the proposed algorithm, p is related to the number of iterations (see Step (k) in the proposed algorithm) and independent of the number of interesting grid points checked at each iteration (see Step (k) in the proposed algorithm). This means that the proposed algorithm requires fewer interesting grid points considered and less computational time than the ones of the algorithms in [, ] for solving this kind of random problems. Moreover, from Table , notice that the algorithms in [, ] cannot solve the instances within two hours when n ≥  and p = , but all instances selected can be solved by the proposed algorithm within no more than two hours. This is mainly because the more interesting grid points are considered, the more the feasibility of linear programs with n variables should be checked. On the other hand, note that the interesting grid points considered by the proposed algorithm are much fewer than the ones considered by the algorithms [, ]. And so the increase of the computational time of the proposed algorithm is not as sharp as the algorithms [, ] with n increasing.
A comparison of the performance of the algorithms ([, ] and our own), the numerical results in Tables - show that the proposed algorithm is effective and the computational results can be obtained within a reasonable time.

Results and discussion
In this work, a new solution algorithm for globally solving a class of generalized fractional programming problems is presented. As further work, we think the ideas can be extended to more general type optimization problems, in which each c i x + c i , d i x + d i in the objective function to problem (P) is replaced with a convex function, respectively.

Conclusion
This article proposes a new approximation algorithm for solving a class of fractional programming problems (P) without the assumptions on quasi-concavity or low-rank. In order to solve this problem, the original problem (P) is first converted into a p-dimensional equivalent one with a box constrained set, we then give a new approximation algorithm which can be more easily implemented compared with the ones given in [, ]. Moreover, the computational complexity of such an algorithm can be derived to show that it is an FPTAS when p is fixed, and that its computational time is an exponential increase with p increasing. Also, the complexity results can be used as an indicator of the difficulty of some optimization problems falling into the category of (P), and so we should expect to design a more sophisticated approach where its performance is at least as good. Additionally, this article not only gives a provable bound on the running time of the proposed algorithm, but also guarantees the quality of the solution obtained to problem (P).