Next Article in Journal
Molecular Recognition, Transient Chirality and Sulfur Hydrogen Bonding in the Benzyl Mercaptan Dimer
Next Article in Special Issue
Lie Symmetries and Conservation Laws for the Viscous Cahn-Hilliard Equation
Previous Article in Journal
Model Test on the Influence of Surcharge, Unloading and Excavation of Soft Clay Soils on Shield Tunnels
Previous Article in Special Issue
An Advised Indirect-Utility Ranking of Opportunity Sets
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Using Shapley Values and Genetic Algorithms to Solve Multiobjective Optimization Problems

Department of Mathematics, National Kaohsiung Normal University, Kaohsiung 802, Taiwan
Symmetry 2021, 13(11), 2021; https://doi.org/10.3390/sym13112021
Submission received: 21 August 2021 / Revised: 1 October 2021 / Accepted: 1 October 2021 / Published: 25 October 2021

Abstract

:
This paper proposes a new methodology to solve multiobjective optimization problems by invoking genetic algorithms and the concept of the Shapley values of cooperative games. It is well known that the Pareto-optimal solutions of multiobjective optimization problems can be obtained by solving the corresponding weighting problems that are formulated by assigning some suitable weights to the objective functions. In this paper, we formulated a cooperative game from the original multiobjective optimization problem by regarding the objective functions as the corresponding players. The payoff function of this formulated cooperative game involves the symmetric concept, which means that the payoff function only depends on the number of players in a coalition and is independent of the role of players in this coalition. In this case, we can reasonably set up the weights as the corresponding Shapley values of this formulated cooperative game. Under these settings, we can obtain the so-called Shapley–Pareto-optimal solution. In order to choose the best Shapley–Pareto-optimal solution, we used genetic algorithms by setting a reasonable fitness function.

1. Introduction

The purpose of an optimization problem is to search for a minimum or a maximum of a real-valued function that is also called an objective function. When the objective function is a vector-valued function instead of a real-valued function, the optimization problem turns into the so-called multiobjective optimization problem. The variables of objective functions are also called decision variables, which are usually assumed to be nonnegative variables, that is the values of the variables are assumed to be nonnegative real numbers. When the decision variables are assumed to be in a predefined search space, we have a particular kind of optimization called the constrained optimization problem.
As we mentioned above, multiobjective optimization problems consider the vector-valued objective functions, which can also be regarded as considering several conflicting objectives. The solution concepts of multiobjective optimization problems are usually based on partial orderings in which the Pareto-optimal solution is usually taken into account. In this case, the set of all Pareto-optimal solutions is frequently large in the sense that it is always an uncountable set. Solving multiobjective optimization problems usually requires the decision-makers to provide some preference relations among the set of all Pareto-optimal solutions. When several decision-makers participate, the aspect of negotiation and consensus striving among the decision-makers should be considered.
The monographs of Chankong and Haimes [1], Cohon [2], Hwang et al. [3,4,5], Miettinen [6], Sawaragi et al. [7], Steuer [8], and Yu [9] provided a penetrating overview of multiobjective optimization. Vincke [10] dealt with multiattribute decision analysis. Ringuest [11] considered the behavioral aspects of multiobjective optimization. Jahn [12] and Luc [13] presented the theoretical aspects of the multiobjective optimization problem. The other interesting monographs on the topic are those of Rietveld [14] and Zeleny [15,16].
The pioneering work by von Neumann and Morgenstern [17] initiated game theory in economics, which mainly deals with the behavior of players whose decisions affect each other. The topic of cooperative games is a kind of game considering coalitions. The cooperation means that players have complete freedom of communication and comprehensive information to form the different coalitions. Nash [18] studied a general two-person cooperative game. On the other hand, the monotonicity of cooperative games means that, when a game is changed such that the contributions of some player compared to all coalitions increases or stays the same, the allocation of those players should not decrease. Young [19] studied the monotonic solutions of cooperative games. The well-known Shapley value that is a unique symmetric solution is also monotonic. We may also refer to the monographs of Barron [20], Branzei et al. [21], Curiel [22], González-Díaz et al. [23], and Owen [24] for more details on the topic of game theory.
The fusion of multiobjective optimization problems and game theory has been studied by many researchers. These approaches formulated the original multiobjective optimization problems as a noncooperative or cooperative game in which the objectives were treated as the corresponding players, and the solutions of this formulated game were taken to be the solutions of the original multiobjective optimization problems. In this paper, we propose a different approach by transforming the original multiobjective optimization problems into a weighting problem in which the weights are taken to be the Shapley value of this formulated cooperative game, which can be the first attempt for solving multiobjective optimization problems.
Jing et al. [25] considered a bi-objective optimization problem in which the multibenefit allocation constraints were modeled and inspired by cooperative game theory. The ϵ -constraint approach was used to convert the bi-objective optimization problem into a single-objective optimization problem. Lokeshgupta and Sivasubramani [26] also considered a bi-objective optimization problem in which the two objective functions were treated as two players by incorporating the cooperative game. In order to generate the best compromise solution of the proposed bi-objective problem, the form of the so-called super-criterion was considered, and a mixed-integer nonlinear programming was applied to maximize the super-criterion.
Lee [27] considered a bi-objective optimization problem in which two objectives were treated as two players and suggested a noncooperative game corresponding to this bi-objective optimization problem. The Nash equilibrium was obtained from this two-player noncooperative game without using the heuristic algorithms. Li et al. [28] considered a three-objective optimization problem that was formulated as a three-player game. The best solution was obtained by using the genetic algorithm and Tabu search among the Nash equilibrium solutions. Chai et al. [29] considered a four-objective optimization problem, and Cao et al. [30] considered a bi-objective optimization problem that were solved by using the genetic algorithm. Since the selection process in the genetic algorithm is usually comparative and competitive, they adopted the noncooperative game theory to design the selection process and directly obtained the Pareto-optimal solutions without converting the four-objective optimization problem into a single-objective optimization.
Yu et al. [31] and Zhang et al. [32] considered a three-objective optimization problem in which three objectives were treated as three players and the Nash equilibrium among these three players were taken into account. Zhang et al. [32] considered the subgame perfect Nash equilibrium to be the solutions of the models, and Yu et al. [31] incorporated the genetic algorithm to obtain the solutions without converting the three-objective optimization problem into a single-objective optimization problem. Meng and Xie [33] considered a bi-objective optimization problem in which a competitive–cooperative game method was proposed to obtain the optimal preference solutions.
The approach proposed in this paper is completely different from the above approaches, where the original multiobjective optimization problem is converted into a single-objective optimization using the weighting approach in which the corresponding weights are inspired by the Shapely value of cooperative games. It is well-known that the Pareto-optimal solutions of multiobjective optimization problems can be obtained by solving the corresponding weighting problems that are formulated by assigning some suitable weights to the objective functions. There is no usual way to determine the weights for establishing the weighting problems. In this paper, we formulated a cooperative game from a multiobjective optimization problem in which the ith objective is treated as player i. The payoff function of this formulated cooperative game involves the symmetric concept, which means that the payoff function only depends on the number of players in a coalition and is independent of the role of the players in this coalition. According to the Shapley values of this formulated cooperative game, we can reasonably set up the weights for the corresponding weighting problems. Under these settings, we can obtain the so-called Shapley–Pareto-optimal solutions. Usually, the family of all Shapley–Pareto-optimal solution is large. In order to choose the best Shapley–Pareto-optimal solution, we used genetic algorithms by setting a reasonable fitness function.
Using genetic algorithms to solve the multiobjective optimization problems has been studied for a long time by referring to the monographs of Deb [34], Osyczka [35], Sakawa [36], and Tan et al. [37]. However, this paper did not intend to invoke genetic algorithms to directly solve the multiobjective optimization problems. Instead, we used genetic algorithms to obtain the best Shapley–Pareto-optimal solution from the family of all Shapley–Pareto-optimal solutions, where the so-called best Shapley–Pareto-optimal solution is based on a reasonable fitness function.
In Section 2, the concept of Shapley values and the basic properties of multiobjective optimization problems are presented. In Section 3, a multiobjective optimization is formulated as a cooperative game by considering objective functions as the corresponding players in which the payoff function involving the symmetric concept is taken into account. In Section 4, the Shapley values of the formulated cooperative game are taken to define the so-called Shapley–Pareto-optimal solution. In Section 5, a genetic algorithm is designed to find the best Shapley–Pareto-optimal solution. A numerical example is also provided to demonstrate the usefulness of the proposed methodology.

2. Formulation of the Cooperative Game

Consider the following multiobjective optimization problem:
( MOP ) max f ( x ) = f 1 ( x ) , f 2 ( x ) , , f n ( x ) subject   to x F R p
where F is a feasible region of problem (MOP) and each f i is a real-valued function defined on R p for i = 1 , , n . A decision vector x F is called a Pareto-optimal solution of the problem (MOP) when there does not exist another decision vector x F satisfying f i ( x ) f i ( x ) for all i = 1 , , p and f j ( x ) > f j ( x ) for at least one index j.
The weighting method is usually used to obtain the Pareto-optimal solution. The weighting problem for a multiobjective optimization problem assigns weights to each objective in which the weights represent the importance of objective functions. Therefore, we can consider the following weighting problem:
( WP ) max i = 1 n w i · f i ( x ) subject   to x F R p
where w i 0 for all i = 1 , , n and:
w 1 + w 2 + + w n = 1 .
Then, we have the following well-known results.
  • If w i > 0 for all i = 1 , , n , then the optimal solution of the WP is a Pareto-optimal solution of the MOP;
  • The unique optimal solution of the WP is a Pareto-optimal solution of the MOP;
  • Suppose that the problem (MOP) is convex. If x is a Pareto-optimal solution, then there exist nonnegative weights w i 0 for i = 1 , , n such that x is an optimal solution of the WP.
In order to obtain the Pareto-optimal solution, it suffices to solve the corresponding weighting problem. Therefore, we have many Pareto-optimal solutions according to different weighting problems.
The determination of the weights for establishing the weighting problem depends on the viewpoint of the decision-makers. This means that there is no usual way to set up the weighting problems. This paper used the Shapley value to determine the weights. The main reason is that the ith objective function f i can be regarded as the payoff of player i. In this case, we can formulate a cooperative game such that its Shapley values are taken to be the weights for creating the corresponding weighting problem.
Consider the MOP with n objective functions f i for i = 1 , , n and feasible set F. We first maximize each objective function f i on the feasible set F and let:
z i = sup x F f i ( x )   for   i = 1 , , n .
We may call the vector z = ( z 1 , z 2 , , z n ) the ideal objective value of the MOP.
We associated the vector-valued objective function f with a cooperative game. The ith objective value f i is regarded as the payoff of player i. The payoff function v can be predetermined by the decision-makers. Since z i is the ideal payoff of player i, it follows that the payoff of player i must satisfy v ( { i } ) z i .
Let N = { 1 , , n } be the set of all players, and let S be a subset of N, which is regarded as a coalition. Under this coalition, S = { i 1 , i 2 , , i s } with s = | S | , where | S | denotes the number of players of coalition S, the payoff of this coalition S will be greater than the total payoffs of players in S. In other words, we must have:
v ( S ) v ( { i 1 } ) + v ( { i 2 } ) + + v ( { i s } ) .
On the other hand, the payoff of coalition S cannot be greater than the total ideal payoffs on S. More precisely, we have:
v ( { i 1 } ) + v ( { i 2 } ) + + v ( { i s } ) v ( S ) z i 1 + z i 2 + z i s .
We define a payoff function on the family of all subsets of N (i.e., on all coalitions) via the symmetric concept. Given any coalition S with | S | 2 , we define:
v ( S ) = m = 1 s v ( { i m } ) + b s ,
where b s is an extra payoff that benefits from the coalition via the symmetric concept, which means that it only depends on the number of players in a coalition without taking into account the roles of the players in a coalition. For example, the extra benefit can be taken as:
b s = κ s m = 1 s v ( { i m } )
which is a discount of the original payoff m = 1 s v ( { i m } ) by a discount factor κ s , where the discount factor κ s can be regarded as a symmetric constant that is independent of the players in the coalition S with | S | = s and is dependent on the number s of the players in the coalition S. In other words, the symmetric constant κ s will be the same for | S | = s regardless of the players in the coalition S. In this paper, the symmetric constant κ s is taken as κ s = c s / s . Therefore, the payoff of coalition S is given by:
v ( S ) = m = 1 s v ( { i m } ) + c s s m = 1 s v ( { i m } ) ,
where c s is a nonnegative constant and is independent of the players in the coalition S with | S | = s , which says that, under the coalition S, the extra payoff can be obtained by taking c s multiplying the average of individual payoffs.
Since the upper bound of v ( S ) is given in (1), the constant c s should satisfy:
m = 1 s v ( { i m } ) + c s s m = 1 s v ( { i m } ) m = 1 s z i m ,
which says that
0 c s s · m = 1 s z i m v ( { i m } ) m = 1 s v ( { i m } ) = s · m = 1 s z i m m = 1 s v ( { i m } ) s U s ( S )
for s = 2 , , n , where U s ( S ) is dependent on coalition S with | S | = s . Now, we define:
U s = min U s ( S ) : S N   with   | S | = s ,
Then, we have:
0 c s U s
for s = 2 , , n . For convenience, we also define c 1 = 0 .

3. Shapley Values

Let N = { 1 , , n } be a set of all players. Any nonempty subset S N is called a coalition. A cooperative game is an ordered pair ( N , v ) , where the characteristic function v is a function from the family of all subsets of N into R satisfying v ( Ø ) = 0 . The number v ( S ) can be regarded as the worth of coalition S in the game ( N , v ) .
The carrier of cooperative game ( N , v ) is a coalition T satisfying v ( S ) = v ( S T ) for any coalition S N . This definition states that the player i T is a dummy player, that is to say, the player i has nothing to contribute to any coalitions.
Let π be a permutation of N, i.e., a one-to-one function π : N N . Given a coalition S N with | S | = s , i.e., S = { i 1 , i 2 , , i s } , we write π ( S ) = { π ( i 1 ) , π ( i 2 ) , , π ( i s ) } . Then, we can define a cooperative game ( N , v π ) by v π ( π ( S ) ) = v ( S ) , i.e., v π ( S ) = v ( π 1 ( S ) ) .
Given a cooperative game ( N , v ) , we considered a corresponding vector ϕ ( v ) = ( ϕ 1 ( v ) , , ϕ n ( v ) ) in which the ith component ϕ i ( v ) is interpreted as the payoffs received by player i under an agreement. This correspondence ϕ is taken to satisfy the following Shapley axioms:
  • (S1) If S is any carrier of the game ( N , v ) , then i S ϕ i ( v ) = v ( S ) ;
  • (S2) For any permutation π of N and i N , we have ϕ π ( i ) ( v π ) = ϕ i ( v ) ;
  • (S3) If ( N , v 1 ) and ( N , v 2 ) are any cooperative games, then we have ϕ i ( u + v ) = ϕ i ( u ) + ϕ i ( v ) for all i N .
The function ϕ from the family of all cooperative games into the n-dimensional Euclidean space R n defines a vector ϕ ( v ) , which is called the Shapley value of cooperative game ( N , v ) .
It is well known that there exists a unique function ϕ defined on the family of all cooperative games and satisfying Axioms (S1), (S2), and (S3). More precisely, for i N , we have:
ϕ i ( v ) = { S : i S N } ( | S | 1 ) ! ( | N | | S | ) ! | N | ! · ( v ( S ) v ( S \ { i } ) )
Let ( N , v ) be a cooperative game formulated from the MOP with the characteristic function given in (2). In order to use the weighting method to solve the problem (MOP), the weights are determined by the vector w ( v ) = ( w 1 ( v ) , , w n ( v ) ) in which the ith component w i ( v ) is interpreted as the fair payoffs received by player i under an agreement. We see that the weights w depend on the cooperative game ( N , v ) , where the weights w satisfy the following agreement that is set by the Shapley axioms:
  • If S is any carrier of the game ( N , v ) , then i S w i ( v ) = v ( S ) ;
  • For any permutation π of N and i N , we have w π ( i ) ( v π ) = w i ( v ) ;
  • If ( N , v 1 ) and ( N , v 2 ) are any cooperative games, then we have w i ( v 1 + v 2 ) = w i ( v 1 ) + w i ( v 2 ) for all i N .
The function w by ( N , v ) w ( v ) defines a vector w ( v ) , which is the Shapley value of cooperative game ( N , v ) . Therefore, given a corresponding cooperative game ( N , v ) , we can solve the WP by using the Shapley value w ( v ) = ( w 1 ( v ) , , w n ( v ) ) as the weights. More precisely, the weights are given by the following formula:
w i ( v ) = { S : i S N } ( | S | 1 ) ! ( | N | | S | ) ! | N | ! · ( v ( S ) v ( S \ { i } ) ) .
From (2), we see that:
v ( S ) v ( S \ { i } ) = v ( { i } ) + c s s c s 1 s 1 · j S \ { i } v ( { j } ) + c s s · v ( { i } ) ,
where s = | S | .
For the subsequent discussion, we also assumed that the following conditions are satisfied:
  • For all i = 1 , , n , we assumed z i > 0 and 0 v ( { i } ) < z i . In particular, we can define v ( { i } ) = k i · z i for some constant 0 < k i < 1 . Under this assumption, from (4), we see that c s > 0 for all s = 2 , , n , which also says that v ( S ) 0 for all S N ;
  • Recall that c 1 = 0 for convenience. For s = 2 , , n , we assumed:
    c s s c s 1 s 1 .
    Under this assumption, it is clear to see w i ( v ) 0 for all i = 1 , , n by referring to (6) and (7).
Now we consider the normalized weights as follows
w ¯ i ( v ) = w i ( v ) k = 1 n w k ( v )   for   i = 1 , , n ,
which says that 0 < w ¯ i ( v ) < 1 for all i = 1 , , n .
The weighting problem for a multiobjective programming problem assigns weights to each objective in which the weights represent the importance of the objective functions. Since we treated the multiobjective programming problem as a cooperative game, the payoffs of players correspond to the importance of the objective functions. In other words, the reasonable importance can be taken as the fair payoffs of the players. Here, we take the Shapley value w ( v ) to represent the importance.
Since the optimal solutions of the WP are Pareto-optimal solutions of the problem (MOP), when the weights are taken to be normalized Shapley values given in (9), the optimal solution of the weighting problem is then called a Shapley–Pareto-optimal solution.
From (2), we see that the cooperative game ( N , v ) depends on the nonnegative constants c i for i = 1 , , n , that is the payoff function v depends on the vector c = ( c 1 , , c n ) . From (6) and (7), we also see that the weights and normalized weights depend on c . Therefore, we write w i ( v ) w i ( c ) and w ¯ i ( v ) w ¯ i ( c ) for i = 1 , , n . The purpose is to obtain the Shapley–Pareto-optimal solution by solving the following weighting problem:
( WP ) max i = 1 n w ¯ i ( c ) · f i ( x ) subject   to x F R p
The Shapley–Pareto-optimal solution is denoted by x ( c ) , which depends on the vector c . Let X be the set of all Shapley–Pareto-optimal solutions, i.e.,
X = x ( c ) : 0 c s U s   for   s = 1 , , n ,
where U s can refer to (3). In the sequel, we use the genetic algorithm to obtain the best Shapley–Pareto-optimal solution in X by evolving vectors c .

4. Designing the Genetic Algorithm

The main purpose of this paper was to find a best Shapley–Pareto-optimal solution from X by maximizing the following objective function:
η ( c ) = i = 1 n w ¯ i ( c ) · f i ( x ( c ) ) .
The Shapley–Pareto-optimal solution x ( c ) depends on the vector c . We say that x ( c ) is the best Shapley–Pareto-optimal solution when η ( c ) η ( c ) . Obtaining the best Shapley–Pareto-optimal solution is a hard problem. Therefore, we used the genetic algorithm to obtain the approximated best Shapley–Pareto-optimal solution. The chromosome was taken to be the vector c of real codes in R n . The purpose was to find the best chromosome according to the fitness function given in (10).
In the sequel, we present a recursive procedure to generate the nonnegative constants c s for s = 2 , , n such that the inequalities (4) and (8) are satisfied, that is the nonnegative constants c s must satisfy c 1 = 0 ,
0 c s U s   and   c s s c s 1 s 1
for s = 2 , , n . In other words, the chromosome c has the form of c = ( 0 , c 2 , , c n ) , where c s satisfies the inequalities (11) for s = 2 , , n .
Proposition 1.
Suppose that each c n is initially generated as a random number in the closed interval [ 0 , U n ] , that is c n is a uniform distribution ranging over [ 0 , U n ] , where U n is given in (3). Let:
V s = min U s , 1 1 s + 1 · c s + 1   f o r   s = 2 , , n 1 .
For s = n 1 , n 2 , , 2 , we generated each c s as a random number in the closed interval [ 0 , V s ] , that is c s is a uniform distribution ranging over [ 0 , V s ] for s = 2 , , n 1 . Then, we have:
0 c s U s   a n d   c s s c s 1 s 1
for s = 2 , , n .
Proof. 
Since 0 c s V s for s = 2 , , n 1 , we have c s U s for s = 2 , , n and:
c s 1 1 1 s · c s   for   s = 3 , , n ,
which also implies:
c s s c s 1 s 1   for   s = 3 , , n .
Since c 1 = 0 , the proof is complete. □
Remark 1.
According to Proposition 1, the nonnegative constants c s can be randomly and sequentially generated as follows for s = 2 , , n . We first generated c n as a random number in the closed interval [ 0 , U n ] . Then, we generated c n 1 as a random number in the closed interval:
[ 0 , V n 1 ] = 0 , min U n 1 , 1 1 n · c n .
In this case, we have:
0 c n 1 U n 1   a n d   c n n c n 1 n 1 .
Similarly, we generated c n 2 as a random number in the closed interval:
[ 0 , V n 2 ] = 0 , min U n 2 , 1 1 n 1 · c n 1 .
In this case, we have:
0 c n 2 U n 2   a n d   c n 1 n 1 c n 2 n 2 .
Recursively, we can generate the nonnegative constants c s satisfying:
0 c s U s   a n d   c s s c s 1 s 1
for s = 2 , , n .
The next result is used for the crossover operation.
Proposition 2.
Suppose that c ^ = ( 0 , c ^ 2 , , c ^ n ) and c ¯ = ( 0 , c ¯ 2 , , c ¯ n ) are two vectors satisfying the inequalities (11). Given any λ ( 0 , 1 ) , we considered the crossover operation c = λ c ^ + ( 1 λ ) c ¯ with the components given by c 1 = 0 and c s = λ c ^ s + ( 1 λ ) c ¯ s for s = 2 , , n . Then, c also satisfies the inequalities (11).
Proof. 
It is clear to see that 0 c s U s for s = 2 , , n . Now, for s = 2 , , n , we have:
c s s = 1 s λ c ^ s + ( 1 λ ) c ¯ s = λ · c ^ s s + ( 1 λ ) · c ¯ s s λ · c ^ s 1 s 1 + ( 1 λ ) · c ¯ s 1 s 1 = 1 s 1 λ c ^ s 1 + ( 1 λ ) c ¯ s 1 = c s 1 s 1
This completes the proof. □
Proposition 2 says that the crossover operation regarding the chromosomes c ^ = ( 0 , c ^ 2 , , c ^ n ) and c ¯ = ( 0 , c ¯ 2 , , c ¯ n ) is taken to be the convex combination of c ^ and c ¯ , where c ^ s and c ¯ s are real numbers satisfying the inequalities (11) for s = 2 , , n . The convex combination of c ^ s and c ¯ s is given by c s = λ c ^ s + ( 1 λ ) c ¯ s for some λ ( 0 , 1 ) . In this paper, the parameter λ was taken to be a random number in ( 0 , 1 ) . Proposition 2 shows that this new chromosome c = ( 0 , c 2 , , c n ) also satisfies the inequalities (11) for s = 2 , , n . More precisely, the new chromosome is given by:
c = 0 , λ c ^ 2 + ( 1 λ ) c ¯ 2 , , λ c ^ n + ( 1 λ ) c ¯ n .
For example, when the random number λ is 0.43215 , the new chromosome is given by:
c = 0 , ( 0.43215 ) c ^ 2 + ( 0.56785 ) c ¯ 2 , , ( 0.43215 ) c ^ n + ( 0.56785 ) c ¯ n .
Given a vector c ¯ = ( 0 , c ¯ 2 , , c ¯ n ) , we considered the mutation c of c ¯ with the components given by c 1 = 0 and c s that are obtained as follows for s = 2 , , n :
  • Generate a random Gaussian number with mean zero and standard deviation σ n (i.e., a normal distribution N ( 0 , σ n 2 ) ), and assign:
    c ^ n = c ¯ n + N ( 0 , σ n 2 ) = c ¯ n + σ n · N ( 0 , 1 ) .
    In this paper, the standard deviation σ n was taken to be the following form:
    σ n = β · η ( c ¯ ) + z n ,
    where β is a constant of proportionality to scale η ( c ¯ ) and z n represents an offset. The new mutated individual c n is defined by:
    c n = c ^ n if   c ^ n [ 0 , U n ] U n if   c ^ n > U n 0 if   c ^ n < 0
    where U n is given in (3). Then, c n [ 0 , U n ] ;
  • Let:
    V n 1 = min U n 1 , 1 1 n · c n .
    Generate a random Gaussian number with mean zero and standard deviation σ n 1 , and assign:
    c ^ n 1 = c ¯ n 1 + N ( 0 , σ n 1 2 ) = c ¯ n 1 + σ n 1 · N ( 0 , 1 ) ,
    where the standard deviation σ n 1 is taken to be the following form:
    σ n 1 = β · η ( c ¯ ) + z n 1 .
    The new mutated individual c n 1 is defined by:
    c n 1 = c ^ n 1 if   c ^ n 1 [ 0 , V n 1 ] V n 1 if   c ^ n 1 > V n 1 0 if   c ^ n 1 < 0 .
    Then, c n 1 [ 0 , V n 1 ] ;
  • Let
    V n 2 = min U n 2 , 1 1 n 1 · c n 1 .
    Generate a random Gaussian number with mean zero and standard deviation σ n 2 , and assign:
    c ^ n 2 = c ¯ n 2 + N ( 0 , σ n 2 2 ) = c ¯ n 2 + σ n 2 · N ( 0 , 1 ) ,
    where the standard deviation σ n 2 is taken to be the following form:
    σ n 2 = β · η ( c ¯ ) + z n 2 .
    The new mutated individual c n 2 is defined by:
    c n 2 = c ^ n 2 if   c ^ n 2 [ 0 , V n 2 ] V n 2 if   c ^ n 2 > V n 2 0 if   c ^ n 2 < 0 .
    Then, c n 1 [ 0 , V n 1 ] ;
  • Recursively, for s = n 3 , n 4 , , 2 , we can define:
    V s = min U s , 1 1 s + 1 · c s + 1 .
    Generate a random Gaussian number with mean zero and standard deviation σ s , and assign:
    c ^ s = c ¯ s + N ( 0 , σ s 2 ) = c ¯ s + σ s · N ( 0 , 1 ) ,
    where the standard deviation σ s is taken to be the following form
    σ s = β · η ( c ¯ ) + z s .
    The new mutated individual c s is defined by:
    c s = c ^ s if   c ^ s [ 0 , V s ] V s if   c ^ s > V s 0 if   c ^ s < 0 .
    Then, c s [ 0 , V s ] .
Proposition 3.
Given a vector c ¯ = ( 0 , c ¯ 2 , , c ¯ n ) satisfying the inequalities (11), we considered the mutation c of c ¯ obtained in the way of (14). Then, c satisfies the inequalities (11).
Proof. 
Since c n [ 0 , U n ] and c s [ 0 , V s ] for s = 2 , , n 1 , the argument in the proof of Proposition 1 is still valid. This completes the proof. □
Proposition 3 says that if the chromosome c ¯ = ( 0 , c ¯ 2 , , c ¯ n ) satisfies the inequalities (11), then its mutation c = ( 0 , c 2 , , c n ) satisfies the inequalities (11) to keep the feasibility, where c s is given by:
c s = c ¯ s + β · η ( c ¯ ) + z s · N ( 0 , 1 ) if   0 c ¯ s + β · η ( c ¯ ) + z s · N ( 0 , 1 ) V s V s if   c ¯ s + β · η ( c ¯ ) + z s · N ( 0 , 1 ) > V s 0 if   c ¯ s + β · η ( c ¯ ) + z s · N ( 0 , 1 ) < 0
for s = 2 , , n . Therefore, the mutation c of c ¯ can be obtained by randomly generating a standard normal distribution N ( 0 , 1 ) .

4.1. Computational Procedure

Initially, the population size was assumed to be m. Therefore, we have m chromosomes c ( j ) for j = 1 , , m . Each chromosome c ( j ) is generated according to Proposition 1 and Remark 1. More precisely, each chromosome c ( j ) has the form of c ( j ) = ( 0 , c 2 ( j ) , , c n ( j ) ) for j = 1 , m , where c s ( j ) satisfies the inequalities (11) given by:
0 c s ( j ) U s   and   c s ( j ) s c s 1 ( j ) s 1
for s = 2 , , n . Each chromosome c ( j ) is assigned a fitness value η ( c ( j ) ) for j = 1 , , m . The m chromosomes c ( j ) for j = 1 , , m are ranked in descending order of their corresponding fitness values η ( c ( j ) ) for j = 1 , , m , where the first one is saved to be the (initial) best fitness values, named η ¯ 0 .
The mutation is based on Proposition 3. Each chromosome c ( j ) = ( 0 , c 2 ( j ) , , c n ( j ) ) is mutated and assigned to c ( j + m ) = ( 0 , c 2 ( j + m ) , , c n ( j + m ) ) in the way of (15) for j = 1 , , m . After this mutation step, we can obtain 2 m chromosomes. Now, we generated a standard normal distribution N ( 0 , 1 ) and set:
σ s = β · η ( c ( j ) ) + z s .
From (14) or (15), the mutated chromosome is given by:
c s ( j + m ) = c s ( j ) + σ s · N ( 0 , 1 ) if   0 c s ( j ) + σ s · N ( 0 , 1 ) V s V s if   c s ( j ) + σ s · N ( 0 , 1 ) > V s 0 if   c s ( j ) + σ s · N ( 0 , 1 ) < 0
for s = 2 , , n and j = 1 , , m .
After the mutation step, we have 2 m chromosomes c ( j ) for j = 1 , , 2 m . Then, the crossover operation is based on Proposition 2. Randomly select two chromosomes c ( j ) and c ( k ) for j , k { 1 , , 2 m } with j k . In order to calculate their convex combination according to (13), we generated a random number λ ( 0 , 1 ) ; the new chromosome is given by c ( 2 m + 1 ) = λ c ( j ) + ( 1 λ ) c ( k ) . More precisely, we have:
c ( 2 m + 1 ) = 0 , c 2 ( 2 m + 1 ) , , c n ( 2 m + 1 ) = 0 , λ c 2 ( j ) + ( 1 λ ) c 2 ( k ) , , λ c n ( j ) + ( 1 λ ) c n ( k ) ,
i.e., c s ( 2 m + 1 ) = λ c s ( j ) + ( 1 λ ) c s ( k ) for s = 2 , , n . After this crossover step, we have 2 m + 1 chromosomes c ( j ) for j = 1 , , 2 m + 1 .
Now, we have m old chromosomes c ( j ) for j = 1 , , m and m + 1 new chromosomes c ( m + j ) for j = 1 , , m + 1 that were generated from the mutation and crossover steps. Therefore, we can calculate the m + 1 new fitness values η ( c ( j + m ) ) for j = 1 , , m + 1 . In this case, we have in total 2 m + 1 fitness values that can be used to select the m best chromosomes to be the next generation. The 2 m + 1 chromosomes are ranked in descending order of their corresponding fitness values, and the first m chromosomes are treated as the m best chromosomes and saved to be the next generation. The computational procedure is presented below:
  • Step 1 (initialization). The population size is assumed to be m. The initial population is determined by setting c ( j ) = ( c 1 ( j ) , , c n ( j ) ) such that c 1 ( j ) = 0 , c n ( j ) is a random number in [ 0 , U n ] for all j = 1 , , m , and c s ( j ) are random numbers in [ 0 , V s ] for all s = 2 , , n 1 and j = 1 , , m , where V s is given in Remark 1. Then, c ( j ) satisfies the inequalities (11) for j = 1 , , m . Given each c ( j ) , calculate the normalized Shapley value w ¯ i ( c ( j ) ) according to (6) and (9) for i = 1 , , n and j = 1 , , m . Each c ( j ) is assigned a fitness value given by:
    η ( c ( j ) ) = i = 1 n w ¯ i ( c ( j ) ) · f i ( x ( c ( j ) ) )
    for j = 1 , , m . The m chromosomes c ( j ) for j = 1 , , m are ranked in descending order of their corresponding fitness values η ( c ( j ) ) for j = 1 , , m , where the first one is saved to be the (initial) best fitness values, named η ¯ 0 . Save c ( j ) as an old elite c ( j ) given by c s ( j ) c s ( j ) for s = 1 , , n and j = 1 , , m . Regarding the stopping criterion, set the tolerance ϵ , and set the maximum times of iterations as m for satisfying the tolerance ϵ . Set k = 0 , which means the initial generation, and k = 1 , which means the first time for satisfying the tolerance ϵ ;
  • Step 2 (mutation). Set k k + 1 , which means the kth generation. Each c ( j ) is mutated and assigned to c ( j + m ) in the way of (14). Generate a random Gaussian number with mean zero and standard deviation σ s . In this paper, the standard deviation σ s was taken to be the following form:
    σ s = β · η ( c ( j ) ) + z s ,
    where β is a constant of proportionality to scale η ( c ( j ) ) and z s represents an offset. Therefore, we obtain the mutated chromosome c 1 ( j + m ) = 0 and c s ( j + m ) [ 0 , V s ] for s = 2 , , n . After this step, we have 2 m chromosomes c ( j ) for j = 1 , , 2 m ;
  • Step 3 (crossover). Randomly select c ( j ) and c ( k ) for j , k { 1 , , 2 m } with j k . Generate a random number λ ( 0 , 1 ) ; the new chromosome is given by c ( 2 m + 1 ) = λ c ( j ) + ( 1 λ ) c ( k ) with components c s ( 2 m + 1 ) = λ c s ( j ) + ( 1 λ ) c s ( k ) [ 0 , U s ] for s = 1 , , n . After this step, we have 2 m + 1 chromosomes c ( j ) for j = 1 , , 2 m + 1 . Proposition 2 says that c ( 2 m + 1 ) satisfies the inequalities (11);
  • Step 4 (calculate new fitness). For each c ( j + m ) , calculate the normalized Shapley value w ¯ i ( c ( j + m ) ) according to (6) and (9) for i = 1 , , n and j = 1 , , m + 1 . Each c ( j + m ) is assigned a fitness value given by:
    η ( c ( j + m ) ) = i = 1 n w ¯ i ( c ( j + m ) ) · f i ( x ( c ( j + m ) ) )
    for j = 1 , , m + 1 ;
  • Step 5 (selection). The m + 1 new chromosomes c ( j + m ) for j = 1 , , m + 1 obtained from Steps 2 and 3 and m old elites c ( j ) for j = 1 , , m are ranked in descending order of their corresponding fitness values η ( c ( j + m ) ) and η ( c ( j ) ) . The first m chromosomes are saved to be the new elites c ( j ) for j = 1 , , m , and the first one is saved to be the best fitness value named as η ¯ k for the kth generation;
  • Step 6 (stopping criterion). It may happen that η ¯ k = η ¯ k 1 . In order not to be trapped in the local optimum, we proceeded with more iterations for m times even though η ¯ k η ¯ k 1 < ϵ . If 0 η ¯ k η ¯ k 1 < ϵ and reach the times of iterations m , then the algorithm is halted and returns the Shapley–Pareto-optimal solution. Otherwise, the new elites c ( j ) for j = 1 , , m are copied to be the next generation c ( j ) for j = 1 , , m . Set k k + 1 , and the algorithm proceeds to Step 2.
The genetic algorithm is a randomized algorithm. The final results for different runs may be different. However, in the long run, the final results will converge to a desired result. On the other hand, it can happen that the genetic algorithm can be trapped in the local optimum. In order to avoid this difficulty, we may try many runs to make sure the results are almost the same. The above Step 6 also provides a criterion to avoid being trapped in the local optimum.

4.2. Numerical Example

Consider the following multiobjective linear programming problem:
max 11 x 2 + 11 x 3 + 12 x 4 + 9 x 5 + 9 x 6 9 x 7 max 11 x 1 + 11 x 3 + 9 x 4 + 12 x 5 + 9 x 6 9 x 7 max 11 x 1 + 11 x 2 + 9 x 4 + 9 x 5 + 12 x 6 + 12 x 7 subject   to x 1 + x 2 + x 3 + x 4 + x 5 + x 6 + x 7 = 1 x i 0   for   i = 1 , , 7 .
Three objective functions are given by:
f 1 ( x ) = 11 x 2 + 11 x 3 + 12 x 4 + 9 x 5 + 9 x 6 9 x 7 f 2 ( x ) = 11 x 1 + 11 x 3 + 9 x 4 + 12 x 5 + 9 x 6 9 x 7 f 3 ( x ) = 11 x 1 + 11 x 2 + 9 x 4 + 9 x 5 + 12 x 6 + 12 x 7
with the feasible set
F = x : x 1 + x 2 + x 3 + x 4 + x 5 + x 6 + x 7 = 1   and   x i 0   f o r   i = 1 , , 7 .
We first calculated the ideal objective value z = ( z 1 , z 2 , z 3 ) given by:
z 1 = sup x F f 1 ( x ) = z 2 = sup x F f 2 ( x ) = z 3 = sup x F f 3 ( x ) = 12
with the corresponding optimal solutions given by:
x ( 1 ) = ( 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 ) , x ( 2 ) = ( 0 , 0 , 0 , 0 , 0 , 1 , 0 , 0 )   and   x ( 3 ) = ( 0 , 0 , 0 , 0 , 0 , 0 , 0 , 1 ) .
According to the above settings, we have N = { 1 , 2 , 3 } representing three players. Now, we take:
v ( { 1 } ) = 0.5 · z 1 , v ( { 2 } ) = 0.6 · z 2   and   v ( { 3 } ) = 0.7 · z 3 .
For s = | S | 2 , according to (2), we have:
v ( S ) = m = 1 s v ( { i m } ) + c s s m = 1 s v ( { i m } ) .
More precisely, we obtain:
v ( { 1 , 2 } ) = 1 + c 2 2 v ( { 1 } ) + v ( { 2 } ) = 1 + c 2 2 0.5 · z 1 + 0.6 · z 2 v ( { 1 , 3 } ) = 1 + c 2 2 v ( { 1 } ) + v ( { 3 } ) = 1 + c 2 2 0.5 · z 1 + 0.7 · z 3 v ( { 2 , 3 } ) = 1 + c 2 2 v ( { 2 } ) + v ( { 3 } ) = 1 + c 2 2 0.6 · z 2 + 0.7 · z 3 v ( { 1 , 2 , 3 } ) = 1 + c 3 3 v ( { 1 } ) + v ( { 2 } ) + + v ( { 3 } ) = 1 + c 3 3 0.5 · z 1 + 0.6 · z 2 + 0.7 · z 3 .
By referring to (3), we have:
U 2 ( { 1 , 2 } ) = 2 · z 1 + z 2 v ( { 1 } ) + v ( { 2 } ) 2 = 2 · z 1 + z 2 0.5 · z 1 + 0.6 · z 2 2 = 4 1.1 2 U 2 ( { 1 , 3 } ) = 2 · z 1 + z 3 v ( { 1 } ) + v ( { 3 } ) 2 = 2 · z 1 + z 3 0.5 · z 1 + 0.7 · z 3 2 = 4 1.2 2 U 2 ( { 2 , 3 } ) = 2 · z 2 + z 3 v ( { 2 } ) + v ( { 3 } ) 2 = 2 · z 2 + z 3 0.6 · z 2 + 0.7 · z 3 2 = 4 1.3 2 .
Therefore, we obtain:
U 2 = min U 2 ( { 1 , 2 } ) , U 2 ( { 1 , 3 } ) , U 2 ( { 2 , 3 } ) = 4 1.3 2 = 14 13 .
We also have:
U 3 = U 3 ( { 1 , 2 , 3 } ) = 3 · z 1 + z 2 + z 3 v ( { 1 } ) + v ( { 2 } ) + v ( { 3 } ) 3 = 3 · z 1 + z 2 + z 3 0.5 · z 1 + 0.6 · z 2 + 0.7 · z 3 3 = 9 1.8 3 = 2 .
The detailed computational procedure is presented below:
  • Step 1 (initialization). The population size is assumed to be m = 20 . The initial population is determined by setting c ( j ) = ( c 1 ( j ) , c 2 ( j ) , c 3 ( j ) ) such that c 1 ( j ) = 0 , c 3 ( j ) is a random number in [ 0 , U 3 ] = [ 0 , 2 ] for all j = 1 , , 20 , and c 2 ( j ) are random numbers in [ 0 , V 2 ] for all j = 1 , , 20 , where V 2 refers to Remark 1 and is given by:
    V 2 = min U 2 , 1 1 3 · c 3 ( j ) = min 14 13 , 2 · c 3 ( j ) 3 .
    Then, c ( j ) satisfies the inequalities (11) for j = 1 , , m . Given each c ( j ) , according to (6), we calculate:
    w i ( c ( j ) ) w i ( v ) = { S : i S N } ( | S | 1 ) ! ( | N | | S | ) ! | N | ! · ( v ( S ) v ( S \ { i } ) ) .
    More precisely, we have:
    w 1 ( c ( j ) ) = { S : S = { 1 } , { 1 , 2 } , { 1 , 3 } , { 1 , 2 , 3 } } ( | S | 1 ) ! ( | N | | S | ) ! | N | ! · ( v ( S ) v ( S \ { 1 } ) ) = 0 ! 2 ! 3 ! · v ( { 1 } ) v ( Ø ) + 1 ! 1 ! 3 ! · v ( { 1 , 2 } ) v ( { 2 } ) + 1 ! 1 ! 3 ! · v ( { 1 , 3 } ) v ( { 3 } ) + 2 ! 0 ! 3 ! · v ( { 1 , 2 , 3 } ) v ( { 2 , 3 } )
    w 2 ( c ( j ) ) = { S : S = { 2 } , { 1 , 2 } , { 2 , 3 } , { 1 , 2 , 3 } } ( | S | 1 ) ! ( | N | | S | ) ! | N | ! · ( v ( S ) v ( S \ { 2 } ) ) = 0 ! 2 ! 3 ! · v ( { 2 } ) v ( Ø ) + 1 ! 1 ! 3 ! · v ( { 1 , 2 } ) v ( { 1 } ) + 1 ! 1 ! 3 ! · v ( { 2 , 3 } ) v ( { 3 } ) + 2 ! 0 ! 3 ! · v ( { 1 , 2 , 3 } ) v ( { 1 , 3 } )
    w 3 ( c ( j ) ) = { S : S = { 3 } , { 1 , 3 } , { 2 , 3 } , { 1 , 2 , 3 } } ( | S | 1 ) ! ( | N | | S | ) ! | N | ! · ( v ( S ) v ( S \ { 3 } ) ) = 0 ! 2 ! 3 ! · v ( { 3 } ) v ( Ø ) + 1 ! 1 ! 3 ! · v ( { 1 , 3 } ) v ( { 1 } ) + 1 ! 1 ! 3 ! · v ( { 2 , 3 } ) v ( { 2 } ) + 2 ! 0 ! 3 ! · v ( { 1 , 2 , 3 } ) v ( { 1 , 2 } )
    Then, according to (9), we also calculate the normalized Shapley value:
    w ¯ i ( c ( j ) ) = w i ( c ( j ) ) w 1 ( c ( j ) ) + w 2 ( c ( j ) ) + w 3 ( c ( j ) )
    for i = 1 , 2 , 3 and j = 1 , , m . Each c ( j ) is assigned a fitness value given by:
    η ( c ( j ) ) = w ¯ 1 ( c ( j ) ) · f 1 ( x ( c ( j ) ) ) + w ¯ 2 ( c ( j ) ) · f 2 ( x ( c ( j ) ) ) + w ¯ 3 ( c ( j ) ) · f 3 ( x ( c ( j ) ) )
    for j = 1 , , m . The m individuals c ( j ) for j = 1 , , m are ranked in descending order of their corresponding fitness values η ( c ( j ) ) for j = 1 , , m , where the first one is saved to be the (initial) best fitness values, named η ¯ 0 . Set k = 0 , m = 20 , k = 1 , and the tolerance ϵ = 10 6 . Save c ( j ) as an elite c ( j ) given by c s ( j ) c s ( j ) for s = 1 , , n and j = 1 , , m ;
  • Step 2 (mutation). Set k k + 1 , which means the kth generation. Each c ( j ) = ( 0 , c 2 ( j ) , c 3 ( j ) ) is mutated and assigned to c ( j + m ) = ( 0 , c 2 ( j + m ) , c 3 ( j + m ) ) in the way of (14). Generate a random Gaussian number with mean zero and standard deviation σ 3 , and assign:
    c ^ 3 ( j + m ) = c 3 ( j + m ) + N ( 0 , σ 3 2 ) = c 3 ( j + m ) + σ 3 · N ( 0 , 1 ) .
    The new mutated individual c 3 ( j + m ) is defined by:
    c 3 ( j + m ) = c ^ 3 ( j + m ) if   c ^ 3 ( j + m ) [ 0 , U 3 ] = [ 0 , 2 ] U 3 = 2 if   c ^ 3 ( j + m ) > U 3 = 2 0 if   c ^ 3 ( j + m ) < 0 .
    Then, c 3 ( j + m ) [ 0 , U 3 ] = [ 0 , 2 ] . Let:
    V 2 = min U 2 , 1 1 3 · c 3 ( j + m ) .
    Generate a random Gaussian number with mean zero and standard deviation σ 2 , and assign:
    c ^ 2 ( j + m ) = c 2 ( j + m ) + N ( 0 , σ 2 2 ) = c 2 ( j + m ) + σ 2 · N ( 0 , 1 ) .
    The new mutated individual c 2 ( j + m ) is defined by:
    c 2 ( j + m ) = c ^ 2 ( j + m ) if   c ^ 2 ( j + m ) [ 0 , V 2 ] V 2 if   c ^ 2 ( j + m ) > V 2 0 if   c ^ 2 ( j + m ) < 0 .
    Then, c 2 ( j + m ) [ 0 , V 2 ] . For s = 2 , 3 , the standard deviation σ s is taken to be the following form:
    σ s = β · η ( c ( j ) ) + z s ,
    where β is a constant of proportionality to scale η ( c ( j ) ) and z s represents an offset. After this step, we have 2 m individuals c ( j ) for j = 1 , , 2 m ;
  • Step 3 (crossover). Randomly select:
    c ( j ) = ( 0 , c 2 ( j ) , c 3 ( j ) )   and   c ( k ) = ( 0 , c 2 ( k ) , c 3 ( k ) )
    for j , k { 1 , , 2 m } with j k . Generate a random number λ ( 0 , 1 ) ; the new individual is given by c ( 2 m + 1 ) = λ c ( j ) + ( 1 λ ) c ( k ) with components c s ( 2 m + 1 ) = λ c s ( j ) + ( 1 λ ) c s ( k ) for s = 2 , 3 . After this step, we have 2 m + 1 individuals c ( j ) for j = 1 , , 2 m + 1 ;
  • Step 4 (calculate new fitness). For each c ( j + m ) = ( 0 , c 2 ( j + m ) , c 3 ( j + m ) ) , we calculate the normalized Shapley value w ¯ i ( c ( j + m ) ) according to (6) and (9) for i = 1 , 2 , 3 and j = 1 , , m + 1 . Each c ( j + m ) is assigned a fitness value given by:
    η ( c ( j + m ) ) = w ¯ 1 ( c ( j + m ) ) · f 1 ( x ( c ( j + m ) ) ) + w ¯ 2 ( c ( j + m ) ) · f 2 ( x ( c ( j + m ) ) ) + w ¯ 3 ( c ( j + m ) ) · f 3 ( x ( c ( j + m ) ) )
    for j = 1 , , m + 1 ;
  • Step 5 (selection). The m + 1 new individuals c ( j + m ) = ( 0 , c 2 ( j + m ) , c 3 ( j + m ) ) for j = 1 , , m + 1 obtained from Steps 2 and 3 and m old elites c ( j ) = ( 0 , c 2 ( j ) , c 3 ( j ) ) for j = 1 , , m are ranked in descending order of their corresponding fitness values η ( c ( j + m ) ) and η ( c ( j ) ) . The first m individuals are saved to be the new elites c ( j ) = ( 0 , c 2 ( j ) , c 3 ( j ) ) for j = 1 , , m , and the first one is saved to be the best fitness value named as η ¯ k for the kth generation;
  • Step 6 (stopping criterion). If 0 η ¯ k η ¯ k 1 < ϵ and reach the times of iterations m , then the algorithm is halted and returns the Shapley–Pareto-optimal solution. Otherwise, the new elites c ( j ) = ( 0 , c 2 ( j ) , c 3 ( j ) ) for j = 1 , , m are copied to be the next generation c ( j ) = ( 0 , c 2 ( j ) , c 3 ( j ) ) for j = 1 , , m . Set k k + 1 , and the algorithm proceeds to Step 2.
The computer code was implemented using Microsoft Excel VBA in which a built-in optimization tool can be used. Since this is a randomized algorithm, we tried many runs in order to obtain the convergent results. Therefore, after many runs, the best fitness value was around 10.16666411 , and the best Shapley–Pareto-optimal solution was:
( x 1 , x 2 , x 3 , x 4 , x 5 , x 6 , x 7 ) = ( 0 , 0 , 0 , 0 , 0 , 1 , 0 ) .
We also remark that this simple numerical example can also be solved by using the other heuristic algorithms such as ant colony optimization, artificial immune systems, particle swarm optimization, simulated annealing, Tabu search etc. The purpose of this paper was not to provide a new genetic algorithm to compare the efficiency among the different heuristic algorithms. The genetic algorithm adopted in this paper was the standard one. Therefore, its efficiency can be realized from the existing article. The main purpose of this paper was to propose a new methodology to solve the multiobjective optimization problems by incorporating the Shapley value of a formulated cooperative game and solving its corresponding single-objective weighting problem by using the well-known numerical techniques of optimization for the single-objective function to collect a family of so-called Shapley–Pareto-optimal solutions. The intention of the genetic algorithms adopted in this paper was to obtain the best Shapley–Pareto-optimal solution from the large set of Shapley–Pareto-optimal solutions. In other words, other kinds of heuristic algorithms can also be used to obtain the best Shapley–Pareto-optimal solution.

5. Conclusions

A new methodology by applying the Shapley values of cooperative games was proposed to solve the multiobjective optimization problems. There are many ways that have been proposed to solve the multiobjective optimization problems in the literature. One efficient way is to convert a multiobjective optimization problem into a single-objective optimization problem by summing all the objective functions as a single objective with some suitable weights. Usually, those weights are determined by decision-makers by intuition. In this paper, we adopted the Shapley value of a formulated cooperative game to be the weights of this weighting problem, which can avoid the biased assignment of weights directly determined by the decision-makers.
We can solve the single-objective weighting problem to obtain the so-called Shapley–Pareto-optimal solution by using the well-known numerical techniques of optimization for the single-objective function. For example, in the linear case, this single-objective weight problem will be a linear programming problem that can be solved by using the simplex method. Since the payoff function of this formulated cooperative game depends on the symmetric constant κ s = c s / s for s = 1 , , n , as shown in (2), this means that the different symmetric constants will determine the different payoff functions, which also obtain the different Shapley values. In other words, the Shapley–Pareto-optimal solution will depend on the vector c = ( c 1 , , c n ) of nonnegative constants, which also means that we may obtain a large set of Shapley–Pareto-optimal solutions. In order to obtain the best Shapley–Pareto-optimal solution from the set of Shapley–Pareto-optimal solutions, a genetic algorithm was adopted in this paper by evolving the nonnegative vector c of constants.
It is well known that genetic algorithms can converge to the desired solution with probability one. In other words, we can obtain the approximated optimal solutions in the long run. The numerical example presented in this paper considered a three-objective linear programming problem with one constraint and seven decision variables. Although only one constraint was considered, this does not mean that this numerical example is too simple to demonstrate the methodology proposed in this paper. The reason is that seven decision variables were taken into account in this numerical example. The difficulty of optimization problems always depends on the number of decision variables rather than the number of constraints.
Although the genetic algorithm was adopted in this paper to obtain the best Shapley–Pareto-optimal solution from the set of Shapley–Pareto-optimal solutions, the other heuristic algorithms such as ant colony optimization, artificial immune systems, particle swarm optimization, simulated annealing, tabu search, etc., can also be used to obtain the best Shapley–Pareto-optimal solutions. The purpose of this paper was not to provide a new genetic algorithm to compare the efficiency among the different heuristic algorithms. The main purpose of this paper was to propose a new methodology to solve the multiobjective optimization problems by incorporating the Shapley value of a formulated cooperative game to obtain the best Shapley–Pareto-optimal solution using the genetic algorithm. The main issue of the proposed genetic algorithm in this paper was to provide a recursive procedure to generate the vector c = ( c 1 , , c n ) of nonnegative constants, as shown in Proposition 1, such that they were feasible to be used in the proposed genetic algorithms. The genetic algorithm adopted in this paper was the standard one. Its efficiency compared with the existing heuristic algorithms can be realized from the literature. In the future research, we may design a new genetic algorithm and compare its efficiency with the existing heuristic algorithms using statistical analysis.
This paper considered the Shapley values of cooperative games. There are many other solution concepts of cooperative games that can also be used to set up the weights of the single-objective weighting problem, which can be the future research. On the other hand, the theory of noncooperative games is another research topic of game theory, which can also be used to set up the weighting problems in the future research.

Funding

This research received no external funding.

Conflicts of Interest

The author declares no conflict of interest.

References

  1. Chankong, V.; Haimes, Y.Y. Multiobjective Decision Making Theory and Methodology; Elsevier Science Publishing Co.: New York, NY, USA, 1983. [Google Scholar]
  2. Cohon, J.L. Multiobjective Programming and Planning; Academic Press: New York, NY, USA, 1978. [Google Scholar]
  3. Hwang, C.-L.; Lin, M.-J. Group Decision Making under Multiple Criteria: Methods and Applications; Lecture Notes in Economics and Mathematical Systems 281; Springer: New York, NY, USA, 1987. [Google Scholar]
  4. Hwang, C.-L.; Masud, A.S.M. Multiple Objective Decision Making-Methods and Applications: A State-of-the-Art Survey; Lecture Notes in Economics and Mathematical Systems 164; Springer: Berlin/Heidelberg, Germany, 1979. [Google Scholar]
  5. Hwang, C.L.; Yoon, K. Multiple Attribute Decision Making Methods and Applications: A State-of-the-Art Survey; Lecture Notes in Economics and Mathematical Systems 186; Springer: Berlin/Heidelberg, Germany, 1981. [Google Scholar]
  6. Miettinen, K.M. Nonlinear Multiobjective Optimization; Kluwer Academic Publishers: New York, NY, USA, 1998. [Google Scholar]
  7. Sawaragi, Y.; Nakayama, H.; Tanino, T. Theory of Multiobjective Optimization; Academic Press, Inc.: Orlando, FL, USA, 1985. [Google Scholar]
  8. Steuer, R.E. Multiple Criteria Optimization: Theory, Computation, and Applications; John Wiley & Sons: New York, NY, USA, 1986. [Google Scholar]
  9. Yu, P.L. Multiple-Criteria Decision Making Concepts, Techniques, and Extensions; Plenum Press: New York, NY, USA, 1985. [Google Scholar]
  10. Vincke, P. Multicriteria Decision-Aid; John Wiley & Sons: New York, NY, USA, 1992. [Google Scholar]
  11. Ringuest, J.L. Multiohjective Optimization: Behavioral and Computational Considerations; Kluwer Academic Publisher: New York, NY, USA, 1992. [Google Scholar]
  12. Jahn, J. Mathematical Vector Optimization in Partially Ordered Linear Spaces; Methoden und Verfahren der Mathematischen Physik, Band 31; Verlag Peter Lang GmbH: Frankfurt am Main, Germany, 1986. [Google Scholar]
  13. Luc, D.T. Theory of Vector Optimization; Lecture Notes in Economics and Mathematical Systems 319; Springer: Berlin/Heidelberg, Germany, 1989. [Google Scholar]
  14. Rietveld, P. Multiple Objective Decision Methods and Regional Planning; North-Holland Publishing Company: New York, NY, USA, 1980. [Google Scholar]
  15. Zeleny, M. Linear Multiobjective Programming; Lecture Notes in Economics and Mathematical Systems 95; Springer: Berlin/Heidelberg, Germany, 1974. [Google Scholar]
  16. Zeleny, M. Multiple Criteria Decision Making; McGraw-Hill: New York, NY, USA, 1982. [Google Scholar]
  17. von Neumann, J.; Morgenstern, O. Theory of Games and Economic Behavior; Princeton University Press: Princeton, NJ, USA, 1944. [Google Scholar]
  18. Nash, J.F. Two-Person Cooperative Games. Econometrica 1953, 21, 128–140. [Google Scholar] [CrossRef]
  19. Young, H.P. Monotonic Solutions of Cooperative Games. Int. J. Game Theory 1985, 14, 65–72. [Google Scholar] [CrossRef]
  20. Barron, E.N. Game Theory: An Introduction; John Wiley & Sons: Hoboken, NJ, USA, 2013. [Google Scholar]
  21. Branzei, R.; Dimitrov, D.; Tijs, S. Models in Cooperative Game Theory; Springer: Berlin/Heidelberg, Germany, 2008. [Google Scholar]
  22. Curiel, I. Cooperative Game Theory and Applications: Cooperative Games Arising from Combinatorial Optimization Problems; Kluwer Academic Publishers: New York, NY, USA, 1997. [Google Scholar]
  23. González-Díaz, J.; García-Jurado, I.; Fiestras-Janeiro, M.G. An Introductory Course on Mathematical Game Theory; American Mathematical Society: Providence, RI, USA, 2010. [Google Scholar]
  24. Owen, G. Game Theory, 3rd ed.; Academic Press: New York, NY, USA, 1995. [Google Scholar]
  25. Jing, R.; Wang, M.; Liang, H.; Wang, X.; Li, N.; Shah, N.; Zhao, Y. Multi-objective optimization of a neighborhood-level urban energy network: Considering Game-theory inspired multi-benefit allocation constraints. Appl. Energy 2018, 231, 534–548. [Google Scholar] [CrossRef]
  26. Lokeshgupta, B.; Sivasubramani, S. Cooperative game theory approach for multiobjective home energy management with renewable energy integration. IET Smart Grid 2019, 2, 34–41. [Google Scholar] [CrossRef]
  27. Lee, C.-S. Multi-objective game-theory models for conflict analysis in reservoir watershed management. Chemosphere 2012, 87, 608–613. [Google Scholar] [CrossRef] [PubMed]
  28. Li, X.; Gao, L.; Li, W. Application of game theory based hybrid algorithm for multiobjective integrated process planning and scheduling. Expert Syst. Appl. 2012, 39, 288–297. [Google Scholar] [CrossRef]
  29. Chai, R.; Savvarisa, A.; Tsourdosa, A.; Chai, S. Multi-objective trajectory optimization of Space Manoeuvre Vehicle using adaptive differential evolution and modified game theory. Acta Astronaut. 2017, 136, 273–280. [Google Scholar] [CrossRef]
  30. Cao, R.; Coit, D.W.; Hou, W.; Yang, Y. Game theory based solution selection for multiobjective redundancy allocation in interval-valued problem parameters. Reliab. Eng. Syst. Saf. 2020, 199, 106932. [Google Scholar] [CrossRef]
  31. Yu, Y.; Zhao, R.; Zhang, J.; Yang, D.; Zhou, T. Multi-objective game theory optimization for balancing economic, social and ecological benefits in the Three Gorges Reservoir operation. Environ. Res. Lett. 2021, 16, 085007. [Google Scholar] [CrossRef]
  32. Zhang, Y.; Wang, J.; Liu, Y. Game theory based real-time multiobjective flexible job shop scheduling considering environmental impact. J. Clean. Prod. 2017, 167, 665–679. [Google Scholar] [CrossRef]
  33. Meng, R.; Xie, N.-G. A Competitive-Cooperative Game Method for Multi-Objective Optimization Design of a Horizontal Axis Wind Turbine Blade. IEEE Access 2019, 7, 155748–155758. [Google Scholar] [CrossRef]
  34. Deb, K. Multiobjective Optimization Using Evolutionary Algorithms; John Wiley & Sons: New York, NY, USA, 2001. [Google Scholar]
  35. Osyczka, A. Evolutionary Algorithms for Single and Multicriteria Design Optimization; Studies in Fuzziness and Soft Computing 100; Physica-Verlag: New York, NY, USA, 2002. [Google Scholar]
  36. Sakawa, M. Genetic Algorithms and Fuzzy Multiobjective Optimization; Kluwer Academic Publishers: New York, NY, USA, 2002. [Google Scholar]
  37. Tan, K.C.; Khor, E.F.; Lee, T.H. Multiobjective Evolutionary Algorithms and Applications; Springer: New York, NY, USA, 2005. [Google Scholar]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Wu, H.-C. Using Shapley Values and Genetic Algorithms to Solve Multiobjective Optimization Problems. Symmetry 2021, 13, 2021. https://doi.org/10.3390/sym13112021

AMA Style

Wu H-C. Using Shapley Values and Genetic Algorithms to Solve Multiobjective Optimization Problems. Symmetry. 2021; 13(11):2021. https://doi.org/10.3390/sym13112021

Chicago/Turabian Style

Wu, Hsien-Chung. 2021. "Using Shapley Values and Genetic Algorithms to Solve Multiobjective Optimization Problems" Symmetry 13, no. 11: 2021. https://doi.org/10.3390/sym13112021

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop