Fuzzy nonlinear goal programming using genetic algorithm

Fuzzy nonlinear goal programming using genetic algorithm

Computers ind. Engng Vol. 33, Nos i-2, pp. 39-42, 1997 Pergamon O 1997 Elsevier Science Lid Printed in Great Britain. All rights reserved 0360-83521...

360KB Sizes 147 Downloads 261 Views

Computers ind. Engng Vol. 33, Nos i-2, pp. 39-42, 1997

Pergamon

O 1997 Elsevier Science Lid Printed in Great Britain. All rights reserved 0360-8352197 $17.00 + 0.00 PII: 8 0 3 6 0 - 8 3 5 2 ( 9 7 ) 0 0 0 3 6 - 3

Fuzzy Nonlinear Goal Programming Using Genetic Algorithm Mitsuo Gen*, Kenichi Ida*, Jaeuk Lee** &: Jongryul Kim* *Dept. of Industrial & Systems Engg. Ashikaga Institute of Technology Ashikaga, 326 Japan **Dept. of Computer Engineering Dongseo University, Pusan, 616-010 Korea Emaih{gen,ida,kjr}@genlab.ashitech.ac.jp

Abstract Goal programming(GP)-is a powerful method which involves multiobjectives and is one of the excellent models in many real-world problems. The goal programming is to establish specific goals for each priorty level, formulate objective functions for each goal, and then seek a solution that minimize the deviations of these objective functions from their respective goals. Often, in real-world problems the objectives are imprecise(or fuzzy). Recently, genetic algorithms are used to solve many real-world problems and have received a great deal of attention about their ability as optimization techniques for multiobjective optimization problems. This paper is attempt to apply these genetic algorithms to the goal programming problems which involve imprecise(or fuzzy) nonlinear information. Finally, we try to get some numerical experiments which have multiobjectives, and imprecise nonlinear information, using goal programming and genetic algorithm. © 1997 Elsevier S c i e n c e Ltd K e y word : Goal Programming(GP), Fuzzy Nonlinear Programming, Genetic Algorithm(GA)

1

Introduction

gramming problem[10]. In this paper, we attempt to apply these genetic algorithms to the goal programming problems which involve imprecise(or fuzzy) nonlinear information. Finally, we try to get some numerical experiments which have multiobjectives, and imprecise nonlinear information, in order to demonstrate the effectiveness of our method.

In the 1960s, the idea of goal programming(GP) was developed by Charnes and Cooper[l]. Since then, many researchers of various fields have devoted their efforts to this technique, such as Ijiri[2], Lee[3], Ignizio[4], Gen and Ida[5], and so on. The basic approach of goal programming is to set up a specific numeric goal for each priority level, formulate an objective function for each goal, and then seek a solution that minimizes the (weighted) sum of deviations of these objective functions from their respective goals. Goal programming has been applied in diverse fields and is an excellent model in a wide variety of real-world problems, which have multiple objectives. In the most real-world situations the expression of goals and objecives of the decision maker are imprecise in nature. So we need to use the fuzzy goal programming. Zimmermann[16] proposed fuzzy programming and linear programming. Narasimhan[13] considered the use of fuzzy set theory in goal programming for the first time. Tiwari, Dharamar, and Rao[14][15] have investigated various aspects of decision problems using fuzzy goal programming. Chu[12] investigated the fuzzy stochastic goal programming problems. And Dhingra[11] solved the fuzzy optimization problem whose objectives are nonlinear. Recently, genetic algorithms(GAs) have received a great deal of attention regarding their potential as optimization techniques for multicriteria optimization problems. Sakawa, Kato, and Shibano combined genetic algorithms and fuzzy programming technique to solve multiobjective 0-1 linear programming problems[9]. Gen and Liu investigated the application of genetic algorithms to solve the nonlinear goal pro-

2

Fuzzy Nonlinear Goal Programming

A typical formulation of fuzzy nonlinear goal programming (f-NGP) is given as follows: Find X to maximize the following fuzzy goals

fk(X) bk, k=qo+l,...,ql f~(X) Y~b~, k=ql+l,...,q2

(1)

s.t.

gi(X)<_G~, i = l , 2 , . . . , m where, X is n-dimensional decision vector, the symbol <(the type of fuzzy-min) refering to approximately less than or eaual to the aspiration level, i.e., goal bk signifies that the decision maker is satisfied even if greater than bk up to a certain tolerance limit, the symbol >(the type of fuzzy-max) refering to approximately greater than or equal to the aspiration level bk signifies that decision maker is satisfied even if less than b~ up to a certain limit, the symbol ~,(the type of fuzzyequal) refering to that fk(X) should be in the vicinity 39

21st International Conference

40

on

of the aspiration bk signifies t h a t the decision maker is satisfied even if greater than(or less than) bk up to a certain limit, f ~ ( X ) are goal constraints, g i ( X ) are system constraints, bk is the target value according to goal k, Gi is the limitation of system constraint i, q0 is the number of fuzzy-min goal constraints, ql - q0 is the number of fuzzy-max constraints, q2 - ql is the number of fuzzy-equal constraints, m is the number of system constraints[12]. The membership fuctions[16] are defined as follows:

Computers and Industrial Engineering is convenient to represent strings(chromosome) as solution vectors like the above, and for f-NGP problems which have two kind of decision variables, i.e., integer and real value, we can represent the chromosomes as V = [(xl,z~) (x2,x2) ' ~ • .. (x~,x~)]. i And the two associative decision variables can be either integer values or real values. We firstly define pop_size as the number of chromosomes, pop_size chromosomes will be randomly initialized in its domain.

For fuzzy-min,

#k(fk(X))

1

=

3.2

if f k ( X ) < bk,

1

The evaluation function is defined in consideration of a weight factor as follows:

f k ( X ) - bk t~

if bk <_ f k ( X ) <_ bk + tff, if f k ( X ) > bk + t R

0

q2

(2)

eval(Yv) = E W k A k ,

if f k ( X ) < bk - t L,

h ( X ) - (b~ - t2) ~L k

#k(fk(X)) = {

if bk - t L <_ f k ( X ) <_ bk, if f k ( X ) > bk

(3)

For fuzzy-equal, 0

iffk(X)
p = 1 , 2 , . . . , p o p _ s i z e (6)

k=l

For fuzzy-max,

0

Evaluation

where Ak is given by (5), and Wk is the weight factor which considered the relative importance of goals(or objectives). From the following equations, we can keep the best chromosome V * with the largest fitness value at each generation as follows:

V* = argmax{eval(Vp)[p = 1,2,... ,pop_size}

L,

(7)

where argmax means argument maximum.

f k ( X ) - (bk -- tL)

tt if bk - tL <_ f k ( X ) <_ bk, #k(fk(X)) =

1

3.3

if f k ( X ) = bk,

1

The selection process is based on spinning the roulette wheel pop_size times, each time we select a single chromosome for a new population in the following way:

f k ( X ) --bk if bk <_ f k ( X ) <_ bk + t ~ ,

0

if f k ( X ) > bk + t~

(4)

where we assume that membership functions are strictly monotone decreasing(or increasing) and continuous functions with respect to f k ( X ) , while t L, t g are maximal tolerance limits to bkThen formulation (1) is equivalent to solving the following nonlinear programming problem: q2

max ~

Selection

S t e p 1. Calculate a cumulative probability ap for each chromosome Vp, (p = 1, 2,... ,pop_size). S t e p 9.. Generate a random real number r in [0, 1]. S t e p 3. If r < al, then select the first chromosome Y l ; otherwise select the p-th chromosome V p (2 < p <_pop_size) such that ap-1 < r < ap. S t e p 4. Repeat Steps 2 and 3 pop_size times and obtain pop_size copies of chromosomes. In this process, the best chromosomes get more copies, the average stay even, and the worst die off.

wkAk

k=l S. t .

~k < ~ k ( h ( X ) )

(5)

g,(X) <_G,

3.4

0
We define a parameter P c of a genetic process as the probability of crossover. This probability gives us the expected number Pc " pop_size of chromosomes which undergo the crossover operation. Firstly we generate a random real number r in [0,1]. secondly, we select the given chromosome for if 7" < p c . Repeat this operation pop_size times and produce pc • pop_size parents, averagely. For each pair of parents (vectors V1 and V2) selected randomly, the crossover operator on Y l and V 2 will produce two children X and Y as follows:

i = 1,2,...,m

where wk is the suitable weight factor which is assigned by the decsion maker[15]. One of the major dificulty is t h a t the decsion maker sets the relative importance of goals correctly.

3

Hybrid Genetic Algorithm

Here we persent a genetic algorithm to f-NGP problems.

3.1

Representations tion

and

Initializa-

Let V denote the chromosomes in a population as V = [xl x~ . . . x~]. For solving f-NGP problems, it

Crossover

X=cl.Vl+c2.V2 Y = e2. V1 + e l • V~

(8)

where cl, c2 _> 0 and cl + e 2 = 1. If the constraint set is convex, this arithmetical crossover operation ensures that both children are feasible if both parents are.

41

21st International Conference on Computers and Industrial Engineering

3.5

Mutation

Non-uniform mutation used here. we define a parameter PM of a genetic process as the probability of mutation. This probability gives us the expected number pM "pop_size of chromosomes which undergo the mutation operation. Generating a random number r in [0,1], we select the given chromosome for mutation if r
V' = t z~ ~j + - A(t,~y ~(t, ~j -- z~j))

(9)

%

where x~ and x~ are upper and lower domain bounds of the variable x¢. The function A(t, y) returns a value in the range [0, y] such t h a t ACt, y) approaches to 0 as t increasesCt is the generation number). The function A(t, y) is given as follows: ACt, y ) = y . (1

-- r (1-~l~)b)

(10)

where r is a random number from [0, 1], T is the maximal generation number, and b is a parameter determining the degree of non-uniformity. The property of this function causes the operator to search the space uniformly initially(when t is small) and very locally at later stages.

Numerical

4

Number of subsystems Lower limit on R Upper limit on C Upper limit on W Upper limit on V Operating time subsystem

4 0.75 400.0 500.0 250.0 1000 hours I05 • a j

~j

v~

de

1

1.0

1.5

1

6

2 3 4

2.3 0.3 2.3

1.5 1.5 1.5

2 3 2

6 8 7

Table 1: T h e design d a t a of P r o b l e m 1

must not fail. The design data for this example is in the Table 1. And we selected the relative weights of objectives (0.5, 0.25, 0.25), in order to give first objective twice as important as the other objectives.

4.2

Problem 2

Here we consider a complex f-NGP problem shown as follows[10]: Find x to maximize the following fuzzy goals 5

f l ( x ) = Y~ x~ sin(j, x~) L 18 j=l 4

f2(X) = ~ x j sin(j • xj) X, 15

Examples

j=l 3

f3(~) = ~ xj sin(j • xj) ~ 10

Here we used Pentium 133 MHz PC and implemented by C language for demonstrating the fuzzy nonlinear goal programming problems using genetic algorithm.

3=1 2

f 4 ( z ) = E x j sin(j • xj) ~ 0 j=l

4.1

Problem

s.t.

1

The Problem 1 is a variation of reliabilty optimization problem from reference[ll]. This f-NGP problem are formulated as follows: Find m , r to maximize the following fuzzy goals 4

fl(m,r)

= 1-[{1 - (1 - r j ) "~} > R j=l 4

glCz) = d + x~ + ~ + d + ~g <_ 100 We mention that this example is more complex because that the functions are multi-modal. The sum of functions like xj sin(j • x~) is much more complex, so the traditional methods can do nothing about such an example. However, genetic algorithm are proven effective for this example. And we set up the relative weights of objectives C0.325, 0.275, 0.225, 0.175).

f ~ ( m , r ) = ~ C ( r j ) . (m~ + e x p ( ~ t ) ) < C j=l

4.3

4

f 3 ( m ) = ~ dj - m j . exp( 4 ) < W j=l S. t . 4

91(m) = ~ ~j. ,~j2 <_ V 3=1

1 < mj < 10, positive integer 0.5 < rj < 1 - 10 -~, real number j=l,...,4 where v~ is the product of weight & volume per element at subsystem j , dj is the weight of each components at the subsystem j , and C(rj) is the cost of each component with reliability rj at subsystem j as follows: C(rj)=aj.(

-T ~, 'ln(r¢)'

j = 1,...,4

where a i , ~j are constants representing the physical characteristic of each component at subsystem j, and T is the operating time during which the component

Result of Problems

In these numerical examples, the proposed genetic algorithm has been well performed on two f-NGP problems which we have said above. All of the results are satisfactory and some of these results are shown in Table ?? and Table 2. Our experiments were also well executed by different parameters.

5

Conclusion

Goal programming is a powerful method which involves multiobjectives and has been applied in a wide variety fields of real-world problems. But if the objectives of real-world problems have imprecise information and is nonlinear, these problems are formulated as fuzzy nonlinear goal programming(f-NGP) model and are difficult to solve. So we used the way that these problems transformed into the equivalent nonlinear programming problems.

42

21st International Conference on Computers and Industrial Engineering

fl

0.968002 0.973641 0.982518 0.982452 0.982814 0.985088 0.982525 0.983126 0.985228

17.688429 17.925538 18.074304 17.673123 17.979478 17.983567 17.727651 17.601715 17.773362

99.721655 111.077458 106.230533 100.753147 ~'~.~.'Y~.~ 1.1 130.963427

147.048541 1[(3, 147.048541][(3, 203.131892 [(3, 198.609765 [(3,

0.816494), 0.811132), 0.844199), 0.840676),

(3, (3, (3, (4,

0.813609), 0.828616), 0.833381), 0.748557),

(2, (2, (3, (3,

0.928700), 0.925655), 0.837497), 0.891878),

(3, (3, (4, (3,

BnIr~ N IF:|I~{@,'!1~_[1~~[o]~:[olo]i[ ~ : | ~ I ~ ] I O ] ~ : ~ O Y ~ O ~ : t O ~ 4 ~ K M O N : ~

171.477001

0.755470)] 0.789556)] 0.735439)] 0.797154)] g[o)1

tL 0.2 0.25 0.3 0.2 0.25 0.3 0.2 0.25 0.3

Table 2: The Result of P r o b l e m 2 : p o p _ s i z e = 2 0 , max_gen = 1000, p c = 0 . 4 (Xl, X2, X3, X4, X5) fa f4 15.045706 8.415158 1.682718 (0.980670, 0.885650, 6.771132, -6.654616, 2.767214) 15.112754 10.002524 5.278400 (2.592439, 4.052747, 4.735932, 5.112441, 2.866054) 9.182870 2.394340 (-1.507075, 0.927567, -6.852293, -5.120925, -4.015368) 14.293523 14.886316 10.025021 3.212139 (-0.486717, -3.625166, 6.814904, 5.03874, 2.804780) 9.947102 5.154859 (-1.808474, 3.843906, -4.610837, -6.858541, 2.840477) 15.055040 15.049122 10.08363 3.268734 (-0.002547, -3.686615,-6.826170, 5.057419,-2.842412) 9.749167 2.024255 (2.361833, 0.458264, -6.768803, -6.757883, 1.584674) 15.146790 (0.875391, 1.010784, 6.845048, 6.636999, -1.563845) 15.198815 9.418937 1.581738 9.018198 2.625726 (-1.872776, 0.886219, 6.6604288, -6.638727, -2.657214) 14.645716

One of the advantages of genetic algorithm is to obtain the global or near-global optima fairly well for the complex problems with nonlinear objective functions. In this paper, we presented the genetic algorithm for f-NGP problems. The proposed genetic algorithm was applied in two numerical exmaples in order to demonstrate the effectiveness of our method. From the result of our experiments, we are able to conclude that the higher mutation rate assign, the more effectiveness take up to a certain limit, and the broader tolerance give, the better solutions get. The next research may include high qualified genetic operators which maintains the diversity of the population in order to find the solution with more high accuracy for f-NGP problems.

Acknowledgement This work was supported in part by a research grant from the Ministry of Educaton, Science and Culture, Japanese Government: Grant-in-Aid for Scientific Research Program(No. 07045032).

References [1] Charnes A. and W. W. Cooper, Management Models and Industrial Applications of Linear Programming, John Wiley & Sons, New York, 1961. [2] Ijiri Y., Management Goals and Accounting for Control, Rand-McNally, Chicago, 1965. [3] Lee S., Goal Programming for Decision Analysis, Auerbach, 1972. [4] Ignizio J., Linear Programming in Single ~4 Multiple-Objective System, Prentice-Hall, 1981. [5] Gen M. and K. Ida, Goal Programming Using Turbo C, HBJ Pub., Tokyo, 1993(in Japanese). [6] Goldberg D. E., Genetic Algorithms in Search, Optimization and Machine Learning, AddisenWesley, 1989.

t~ 250 350 450 250 350 450 250 350 450

tL 7 8 9 7 8 9 7 8 9

pM 0.1 0.1 0.1 0.2 0.2 0.2 0.3 0.3 0.3

tK 3.5 4 4.5 3.5 4 4.5 3.5 4 4.5

[7] Michalewicz Z., Genetic Algorithms + Data Structures = Evolution Programs, 2nd ed., SpringerVerlag, New York, 1994. [8] Gen, M. and Cheng, R., Genetic Algorithms and Engineering Design, John Wiley & Sons, New York, 1996. [9] Sakawa, M., K. Kato, and T. Shibano, Fuzzy programming for multiobjective 0-1 programming problems through revised genetic algorithms, European Journal of Operational Research(in press). [10] Gen, M. and B. Liu, A genetic algorithm for nonlinear goal programming, Research report, Vol.23, pp.141-148, Ashikaga Institute of Technology, Ashikaga, 1996. [11] Dhingra, A. K., Optimal apportionment of reliability and redundancy in series system under mutiple objectives, IEEE Trans. on Reliability, Vol.41, No.4, pp.576-582, 1992 [12] Chu, T. C. , Some Problems in Fuzzy Decision Making, Ph. D. Dissertation, U. Texas at Arlington, 1993 [13] Narasimhan, R., Goal programming in a fuzzy environment, Decision Sciences Vol.ll, pp.325-336, 1980 [14] Tiwari, R. N., S. Dharmar, and J. R. Rao,Priority structure in fuzzy goal programming, Fuzzy Sets and Systems, Vol.19, pp.251-259, 1986 [15] Tiwari, R. N., S. Dharmar, and J. R. Rao, Fuzzy goal programming-an additive model, Fuzzy Sets and Systems, Vol.24, pp.27-34, 1987 [16] Zimmerman, H.-J., Fuzzy programming and linear programming with several objective functions, Fuzzy Sets and Systems Vol.1, pp.45-55, 1978.

pM 0.1 0.1 0.1 0.2 0.2 0.2 0.3 0.3 0.3