NUMERICAL METHODS FOR SOLVING UNIMODAL MULTIPLE CRITERIA OPTIMIZATION PROBLEMS – A SYNTHESIS

. In this paper we give a general method to approximate the set of all eﬃcient solutions and the set of all weakly-eﬃcient solutions for a multiple criteria optimization problem involving generalized unimodal objective functions on the feasible sets. This type of problems appear frequently in Economy, Mathematics, sometimes in Medico-Economics studies, etc.


INTRODUCTION
Starting with an overview of the existing algorithms, the present paper intends to give a general algorithm which compute the set of optimal solution of an optimization problem, when the set on which the function is unimodal is any compact subset of R (not necessarily interval or discreet set).A parallel approach for this algorithm is also given.
Let f = (f 1 , . . ., f m ) : D → R m (m ∈ N * , m 2) be a vector-valued function defined on a nonempty set D ⊂ R and S a subset of D. Consider the multiple criteria optimization problem: where the partial ordering in the image space of the objective function is understood to be induced by the standard ordering cone R m + .More precisely, denoting I := {1, . . ., m}, we have for any x = (x 1 , . . ., x m ), y = (y 1 , . . ., y m ) ∈ R m : x ≤ y ⇔ x i y i , for all i ∈ I, and Recall (see e.g.[6]) that the set of efficient solutions, called by us the efficient set, and the set of weakly-efficient solutions, called by us the weaklyefficient set, of problem (1) are given, respectively, by: Eff(S; f ) := {x ∈ S | y ∈ S such that f (y) ≤ f (x)} , WEff(S; f ) := {x ∈ S | y ∈ S such that f (y) < f (x)} .
In what follows we give a general method to approximate the sets Eff(S; f ) and WEff(S; f ) in the hypothesis that the function f is lower unimodal on S.
We mention that the generalization of "unimodal function" notion was made, until now, in the following three directions: a) By replacing the real interval which was the definition domain of the unimodal property (see [5]) with an arbitrary set of real numbers (see [7]); b) By working with multivariate functions, due to the fact that the domain of definition for the unimodal property is a compact interval in R n (see [1] and [4]); c) By replacing the real univariate functions with vectorial univariate function (see [8]).We mention, also, that the obtained results in the third case contain, as particular cases, properties already known from the first case.Analogously, the given algorithms in the case c) may be successfully used in the case a), too.

UNIMODAL VECTORIAL FUNCTIONS ON A SET AND SOME OF THEIR PROPERTIES
In the following we suppose that D is a non empty subset of the real numbers set R and m is a natural number, m 2. Definition 1. (see [8]) A function ϕ : D → R is said to be lower unimodal on S ⊂ D if there exist u, v ∈ S satisfying the following conditions: Remark 2. (see [8]) 1) By (LU1)-(LU2) it follows that u v, so (LU4) makes sense.
2) As a direct consequence of (LU1)-(LU4) we can easily deduce that for any x, y ∈ S the following implications hold: Definition 3. (see [8]) A function f = (f 1 , ..., f m ) : D → R m is said to be lower unimodal on S ⊂ D if all its scalar components f i , i ∈ I = {1, ..., m}, are lower unimodal on S.
is a lower unimodal function on S ⊆ D, by u i , v i we denote, for every i ∈ I, the points u and v from Definition 1.
In the following we remember some properties of the sets Eff(S; f ) and WEff(S; f ) in the circumstances that the function f is lower unimodal on S. The problem was studied in [9], where the authors showed that both the sets Eff(S; f ) and WEff(S; f ) can be completely determined by only using the numbers u 1 , v 1 , . . ., u m , v m .As in mentioned paper, we denote: i) The set of weakly efficient solutions of problem (1) admits the following representation: ii) The set of efficient solutions of problem (1) is given by the following representation: Other important properties of lower unimodal functions will be given in that follows.Let us suppose that S is a nonempty subset of D and f : D → R m , is a lower unimodal function on S. If c and d are elements of S, we introduce the notations: then the following sentences are true: , for all i ∈ I. Therefore, c u and c v. On the other hand, as , for all i ∈ I.In this case, Remark 2 implies c < u i v i b, for all i ∈ I. Then u v b.Also, in view of (4), we have These imply c + θ u i and c + θ v i , for all i ∈ I. Therefore, we have c + θ u and c + θ v. Hence (iii) holds.
In the same way we can prove that (iv)-(vi) are true.
We will use the above results in the next section to elaborate a general method for approximating the efficient set and the weakly-efficient set in a unimodal vectorial optimization problems (i.e. in the problem (MOP) when the function f is lower unimodal on S).

THE (UMA) ALGORITHM
In what follows we suppose that: H1.D ⊆ R; H2. S is a nonempty, compact subset of D, and cardS 2; H3. f = (f 1 , ..., f m ) : D → R m is a lower unimodal function on S, where m is a natural and not a null number.
The following algorithm permits to obtain two sets WEF and EF.These sets approximate the sets Eff(S; f ) and WEff(S; f ), with a given error ε > 0.
We mention that an algorithm to approximate Eff(S; f ) and WEff(S; f ), in the case when the set S is a real compact interval, was given in [10] and other algorithm, in the some condition, but more performance, [3].In the special case when S is a discrete set, the first algorithm to determine the sets Eff(S; f ) and WEff(S; f ) was given in [9] and other algorithm, in the some condition, but more performance, in [8].
In the UMA Algorithm, we use the following notations: and proceed.
Step 6. Build the sets and go to step 10; else go to the next step.
Step 13.Increase h by 1 and proceed.
Step 15.Take c h ∈ S and d h ∈ S, such that (6) and proceed.
Step 16.Build the sets

and
and go to step 20, else proceed.
and go to step 20, else proceed.
Step 20.If b h − a h < ε/2, or card S h 2, then proceed; else go back to step 2.
Step 22.If sw = 0, then go back to step 2.
Step 23.Set WEF := {x ∈ S | u k x v h } and proceed.
If, in addition, card S k 2, then Proof.First we prove that (7) holds.The proof is by induction. Step is true.Let now consider k > 1, and let be j ∈ {1, ..., k − 1}.We prove that if u, v ∈ S j , then (9) u, v ∈ S j+1 .
From the algorithm it follows that b i − a i ε/2, and card S i > 2, for all i ∈ {1, ..., k − 1}.Therefore card S j 3.If c j and d j are the points chosen at the j th iteration, three cases are possible: 1) I − j = ∅; 2) I − j = ∅, and I 0 j = ∅; 3) I − j = ∅, and I 0 j = ∅.If I − j = ∅, from Step 7 we have S j+1 := S j ∩ [a j , d j − µ j ].On the other hand, Theorem 5 gives u, v ∈ [a j , d j − µ j ] ∩ S. But, in view of the induction hypothesis, we have u, v ∈ S j .Therefore (9) holds.By analogy, it can be proved that ( 9) is true, in the other two cases.Therefore, because (7) is true for j = 1, by induction, we can conclude that (7) holds for all j ∈ {1, ..., k}.Now we prove that, if, in addition, card S k = 2, then u k = u and v k = v.First we mention that, from (7), we get u, v ∈ S k .As card In the second case, as In the same manner we can prove: Theorem 7. In the hypotheses H1-H3, if h is a natural number and the numbers a 1 , ..., a h , b 1 , ..., b h , u 1 , ..., u h , v 1 , ..., v h are the points given by the UMA Algorithm, then u, v ∈ [a j , b j ], for all j ∈ {1, ..., h}.If, in addition, The following results come easily: Similarly results can be given for the sequences (u h ) h∈N * , and (v h ) h∈N * .

PARTICULAR CASES
In what follows, we show how, from the UMA algorithm, one can obtain the methods given in [3], [8], [9] and [10] For this, one takes as t k any real numbers satisfying the conditions 0 < t k < 1/2 and put (10) In view of the UMA algorithm, we have is a finite sequence of real numbers with 0 < t k < 1/2, for each k ∈ {1, ..., m}, and if the sequence of sets (S k ) m k=1 is constructed by the UMA algorithm, where we take c k and d k using (10), then

Analogously, if (t h ) m
h=1 is a finite sequence of real numbers with 0 < t h < 1 2 , for each h ∈ {1, ..., m}, and if the sequence of sets (S h ) m h=1 is constructed by the UMA algorithm, where A similar result can be obtained for the sets EF and Eff(S; f ).In order to decrease the number of computations for the values of f, one may choose t k such that Then the numbers t k , k ∈ N, have to satisfy the condition Analogously, we may choose the sequence (t h ) h∈N * such that By choosing particular values for the sequence (t k ) k∈N * , such that (13) is satisfied, and particular values for the sequence (t h ) h∈N * such that ( 14) is satisfied, we obtain a particular type of methods, which, by analogy with the real case, we call the methods of successive section.Two important sub-cases are given further on.
Case I.If t k = t, for each k ∈ N * , and t h = t, for each h ∈ N * , then (13) and ( 14) imply (1 − t) 2 = t, i.e. t 2 − 3t + 1 = 0.The above equation has two solutions.If we choose 2 , for each h ∈ N * , then we call the resulting method, the method of the "gold section".
4.2.S is a finite set.Let be S = {x 1 , ..., x n }, where n ∈ N, n 2, and x 1 < x 2 < ... < x n .In this case, in the first step of the UMA algorithm, we have a = x 1 and b = x n , and, therefore, a 1 = a 1 = x 1 and b 1 = b 1 = x n .Then S 1 = S 1 = {x 1 , ..., x n }.Therefore card S 1 = card S 1 = n, and, in each iterations, card S k ∈ N * and card S h ∈ N * .We suppose that, at each iteration, k, we rewrite the elements of the set S k , such that If Analogously, in each iteration, we may choose the points c h and d h .These specifications being done, the UMA algorithm is the same as the algorithm given in [8].S is an infinite set, but not a real interval.The UMA algorithm can also be used in the case when the set S is infinite but not a real interval, situation which could not be accomplished by the other cited methods.
Example 11.Let be Obviously, f is lower unimodal on S. If we apply the UMA algorithm, taking ε = 1/100, we have to make 5 iterations, in order to compute the sets WEF and EF, as can be seen in Table 1.

THE PARALLEL UMA ALGORITHM
The presented UMA Algorithm is thought for a serial implementation.Due to the fact that its second part (Steps 11-20) contains the same type of instructions as the first part (Steps 2-10), the time of execution can be reduced by using parallel calculus.
There are several way of using more that one processor, but we shall consider a parallel execution of Master-Slave type (see [2]).In the created network, we have a Master processor, with the identification number (ID) equal with 1, and three Slaves processors, with IDs equal to 2, 3 and 4. All the processors memorize the whole program, but each of them will perform exactly the instructions needed, according with its ID number.
A possible parallel algorithm is the following:

Remark 8 .
If µ(S) > 0 and ε µ(S), then the UMA Algorithm stops after a finite number of iterations, Eff(S; f ) = EF and WEff(S; f ) = W EF. Remark 9.If card S k > 2, for all natural number k, and there is a convergent sequence (δ k ) k∈N * such that lim k→+∞ δ k = 0 and b k − a k δ k , for all k ∈ N * , then the sequences (u k ) k∈N * and (v k ) k∈N * are convergent and lim k→+∞ .

4. 1 .
S is a compact interval.In view of[9], Remark 1.1, when S is a compact interval and the function f: [a, b] → R m is lower unimodal on S, then u i = v i = x i , for all i ∈ {1, ..., m}, where {x i } = Arg min x∈S f i (x).Therefore u = v and u = v.Also, it is known that, if S = [a, b], then, for each natural numbers k 1, we have card S k > 3. Therefore, one can choose the points c k , d k ∈ S k satisfying the conditions: at the k iteration we have n k > 3, then we may choose c k = x k m and d k = x k m+1 , where m = [n k /2], in the step 5 of the UMA algorithm.If at the k iteration we have n k = 2, then we may choose d k = x k 2 in the step 5 of the UMA algorithm.
ID = 1 then let {Master execution} k = 0; h = 0; a 1 = min S; a 1 = min S; b 1 = max S; b 1 = max S; bool = 0; {for the points of minimum} Repeat k = k + 1;µ k = inf{|x − y| | x, y ∈ [a k , b k ] ∩ S}; Send Message to Slaves (a k , b k , bool)Remark 12.The cell named "flag" takes values corresponding with the cases enounced in Theorem 2.3, so I − c,d = ∅ or I + c,d = ∅ 1; if (I − c,d = ∅ and I 0 c,d = ∅) or (I + c,d = ∅ and I 0 c,d = ∅) 2; else .Remark 13.Using this type of parallel execution, the amount of computation, and consequently the execution time, reduces at least three times, compared with the serial algorithm.

Table 1 .
Results of the UMA Algorithm