^{1}

^{*}

^{1}

^{1}

Many concrete real life problems ranging from economic and business to industrial and engineering may be cast into a multi-objective optimisation framework. The redundancy of existing methods for solving this kind of problems susceptible to inconsistencies, coupled with the necessity for checking inherent assumptions before using a given method, make it hard for a nonspecialist to choose a method that fits well the situation at hand. Moreover, using blindly a method as proponents of the hammer principle (when you only have a hammer, you want everything in your hand to be a nail) is an awkward approach at best and a caricatural one at worst. This brings challenges to the design of a tool able to help a Decision Maker faced with these kinds of problems. The help should be at two levels. First the tool should be able to choose an appropriate multi-objective programming technique and second it should single out a satisfying solution using the chosen technique. The choice of a method should be made according to the structure of the problem and to the Decision Maker’s judgment value. This paper is an attempt to satisfy that need. We present a Decision Aid Approach that embeds a sample of good multi-objective programming techniques. The system is able to assist the Decision Maker in the above mentioned two tasks.

Mathematical programming is an important tool in the arsenal of means at a Decision Maker’s disposal. Indeed, many real-life problems such as product mix, transportation and blending (see for example in [1-3]), may be cast into a mathematical programming framework. Theoretical underpinnings for mathematical programming, particularly for linear programming, are now well established [4,5]. As a result, a broader array of techniques has been developed. We mention, without any claim to exhaustivity, the simplex algorithm [

Setting (see for example in [12,13]. The simplistic approach, consisting of substituting arbitrarily a single objective function to several conflicting ones, often leads to a bad caricature of the reality. Such an approach has no other option but to churn out meaningless outcomes. The purpose of this paper is twofold. Firstly, it aims at raising awareness of the most important techniques used to single out satisfying solutions for a mathematical program with several conflicting goals. Secondly, it describes a Decision Support System (DSS) for multi-objective programming problems (DSS4MOPP) able to help a user confronted with such a problem. The system should assist at two levels. Firstly, to choose an appropriate technique for solving the problem at hand and secondly to single out a satisfying solution that meets the Decision Maker’s needs. The remaining of this paper is organized as follows: The next section introduces basic concepts on multi-objective section, we describe the most used methods for solving multi-objective programming problems. Section 3 is devoted to the design of our DSS for multiobjective programming problems. Finally, we make some concluding remarks along with suggestions for further developments in the field of multi-objective programming.

A multi-objective program is a problem of the type:

where f_{i}(i = 1, 2, ···, k) are real-valued functions of R^{n} and X is a nonempty and bounded region included in R^{n}.

In multi-objective optimisation context, unless the objective functions are not conflicting, the optimum optimrum does not exist. So we should make explicit the meaning of optimality in this context. Several solution concepts are discussed in the literature. For our purpose we restrict ourselves to the notion of Pareto optimality which is lost used in this context.

Definition 1. is said to be Pareto Optimal solution for (P) if there does not exist another that is at least best as x^{*} for all objective functions and that is best to x^{*} for at least one of them.

Definition 2. A vectoris said to be locally Pareto optimal for (P) if it is Pareto optimal for (P) in a neighborhood of x^{*}: That is, is Pareto optimal for (P) in, where

.

The Nyarutarama Lake, located in Kigali City, is famous for its flora which attracts migratory birds and fish. The lake is connected to many rivers. The most important ones: Karenge, Kimisagara and Nyabarongo are controlled by reservoir. These reservoirs are managed by Rwanda Water and Sanitation Corporation (RWASCO). They provide drinking and irrigation fresh water to the Nyarutarama lake. The problem consists of determining optimal release from different reservoirs while meeting drinking and irrigation water needs.

For this problem we can consider as decision variables: water releases, from different reservoirs, for irrigation, I_{i}_{,t}, D_{i}_{,t} for drinking, D_{i}_{,t} and for the Nyarutarama Lake L_{i}_{,t} where i and t are reservoir and time indices respectively. Moreover the following parameters variables must be introduced in order to solve the problem M_{i}_{,t}. Estimation of releases for drinking, irrigation and the lake from reservoir i at period t: MRL_{t}: Minimum releases for the lake at period t specified by the Environment Ministry. D_{D}_{,i,t}: Maximum demand for drinking water from reservoir i at the end of period t: D_{I}_{,i,t}: Maximum demand for irrigation water from reservoir i at the end of period t: In this problem, the period t is equal to one month and the index I is equal to 1 for Karenge reservoir, to 2 for Kimisagara reservoir and to 3 for Nyabarongo reservoir. The optimisation problem corresponding to the water management in subsection 2.3.1:

subject to

where (1) are constraints on maximum releases, (2) are constraints on lake releases and (3) non-negativity constraints.

In the literature (see for example [1,14]), the most used methods for solving multi-objective programs are grouped in five categories, namely No-preference methods, a Priori methods, a Posteriori methods, Interactive methods and Metaheuristics. In what follows we briefly discuss each category.

The No-Preference methods do not need any inter objective or subjective preference information from the Decision Maker once the objectives of the problem have been defined. The methods in this category include Compromise Programming [15-17] and Multi-objective Proximal Bundle method [3,18].

Unlike No-preference methods, the general principle of a Priori methods is to first take into consideration the opinions and preferences of the decision maker before solving the multi-objective program. The Analyst solve the resulting problem by methods such as Goal Programming and Lexicographic goal programming [

A Posteriori methods are concerned with finding all or most of the Pareto optimal solutions of a given multiobjective program. These solutions are then presented to the Decision Maker who has to choose one of them. The most important a Posteriori methods described in the literature include e-constraint method [16,17], Adaptive search method [

With interactive methods the Analyst starts with an intial solution, discuss with the Decision Maker and obtain a new solution or a set of new solutions if the Decision Maker is not happy with the current one. Here are among others some interactive methods: Step method ([

Most of the methods described before apply for convex multi-objective programs. In the case of non convex multi-objective programs metaheuristic methods may be considered [27,28]. A meta-heuristic is a method that seeks to find a good solution to a problem at a reasonable computational cost. A meta-heuristic often has an intuittive justification and therefore a mathematical proof cannot be constructed to guarantee the Pareto optimality of the solution found [

In this section we present our own decision support system for multiobjective programming problems. This system is named DSS4MOPP [

DSS4MOPP has three main components, namely a database, a modelbase and a software system. In the following subsections we briefly describe each of these components.

DSS4MOPP database stores a collection of data files. These data files contain a combination of numerical and alphabetical data. Although some of the data is stored directly in the computer, some of it may be stored on the internet. The files are protected by a security code activated by the Decision Maker.

The modelbase of DSS4MOPP consists of the following multiobjective programming methods: the compromise programming method, the genetic algorithm, the goal programming method, the lexicographic goal programing method, the method for generating efficient solutions, the multi-objective proximal bundle method, the NIMBUS method, the reference point method and the weighting method. These methods are the most realistic used methods. The tools used to develop DSS4MOPP are Linear Interactive Discrete Optimizer (LINDO) [

The software subsystem of DSS4MOPP consists of three components: data base management software (DBMS), model base management software (MBMS) and Dialogue Generating Management Software (DGMS). Through these components, the interface with the analyst is realised by a sequence of windows, with each window being regarded as a step. The dialogue generating management system ensures that there is interaction between the DSS4MOPP, the analyst and the operating system.

The inputs into DSS4MOPP are the problem (P) and the views of the Decision Maker about this problem. From these inputs, DSS4MOPP chooses a method and use that method to solve the problem. The detail of the way SS4MOPP works is given in

To build DSS4MOPP we used TextPad [

Different tools (such as LINGO and MOPEN) for solving problems in DSS4MOPP have been integrated, which provides the analyst with the potential to set the DM’s preferences for the most preferred solution. The interface of DSS4MOPP facilitates the operation of the analyst by offering different alternatives.

For the sake of illustration, let us consider the problem described in subsection 2.3. As the targets D_{D}_{,i,t} and D_{I}_{,i,t} are provided by the Decision Maker, for each economic function, the DSS4MOPP will choose Goal Programming method (see

where, , , are positive and negative deviations between D_{i}_{,t} and D_{I}_{,i,t} and between I_{i}_{,t} and D_{D}_{,i,t} respectively. For January 2010 (the month un der investigation), we have the following data expressed in millions of liters of water, have been collected from RWASCO [

With above data and by denoting positive and negative deviations by EDITIV, EIITV, EDITU and EIITU respectively, the system will use the tool to solve this roblem.

Minimise ED1TV + EI1TV + ED1TU + ED2TV + EI2TV +ED2TU + EI2TU + ED3TV + EI3TV + ED3TU + EI3TU, subject to D_{1,t} + ED1TU – ED1TV = 2.9, D_{2,t} + ED2TU – ED2TV = 0.185, D_{3,t} + ED3TU – ED3TV = 0.787, I_{1,t} + EI1TU – EI1TV = 1.613, I_{2,t} + EI2TU – EI2TV = 0.216, I_{3,t} + EI3TU – EI3TV = 0.517, D_{1,t} + I_{1,t} + L_{1,t} ≤ 3.2, D_{2,t} + I_{2,t} + L_{2,t} ≤ 3.2, D_{3,t} + I_{3,t} + L_{3,t} ≤ 3.2, L_{1,t} ≥ 1.8, L_{2,t} ≥ 1.8, L_{3,t} ≥ 1.8.

The solution obtained is D_{1,t} = 0:000, D_{2,t} = 0:0.185, D_{3,t} = 0:0.787, I_{1,t} = 1:400, I_{2,t} = 1:216, I_{3,t} = 1:517, L_{1,t} = 1:800, L_{2,t} = 1:800, L_{3,t} = 1:400.

Many concrete real-life situations may be cast into a mathematical programming framework. In most of these situations, one has to combine evidence from disparate sources and as a result grapple with conflicting objective functions. Therefore, multi-objective mathematical programming is a relevant issue. Unfortunately, a multiobjective mathematical program is an illdefined problem. As a matter of fact, the notion of “optimum optimorum” does not apply in this case due to the presence of conflicting utility functions. Lines for further developments

in this field include: Enrichment of the system by allowing it to help the Decision Maker throughout the entire decision-making process. Use of language of Fuzzy sets theory to allow some leeways in the constraints satisfaction and to incorporate imprecise data. Severe limitations on objectivity are encountered in solving the above mentioned problem. In such a turbulent environment, the mainstay of rational choice cannot hold and it is virtually impossible to provide a truly meaning of optimal decision in this context. One then resort either to notion of strong, weak, proper Pareto optimality or to satisfying solutions based on the bounded rationality principle. Many methods have been proposed to single out appropriate solutions of a multi-objective programming problems and a Decision Maker may get lost in face of such a pletora of techniques. The purpose of this paper was to discuss how to help a Decision Maker using an appropriate tool for dealing with his problem. In order to achieve this, we have presented a Decision Aid tool called Decision Support System for multi-objective programming problems (DSS4MOPP). This tool helps in two levels. Firstly, it chooses an appropriate multi-objective programming method. Secondly, it singles out a satisfying solution using the chosen method. For the sake of illustration, we have presented an example of water management borrowed from dissertation of [