# Application of Artificial Bee Colony Algorithm to Portfolio Adjustment Problem with Transaction Costs

Authors: Wei Chen; Hui Ma; Yiping Yang; Mengrong Sun
Journal: Journal of Applied Mathematics
 (2014)

---

## Abstract

Compared with the conventional probabilistic mean-variance methodology, fuzzy number can better describe an uncertain environment with vagueness and ambiguity. In this paper, we discuss a portfolio adjusting problem under the assumption that the returns of risky assets are fuzzy numbers and there exist general transaction costs in portfolio adjusting process. In the proposed model, we take the first possibilistic moment about zero of a portfolio as the investment return and the second possibilistic moment about the possibilistic mean value of the portfolio as the investment risk. To solve the proposed model, a modified artificial bee colony (ABC) algorithm is developed for calculating the optimal portfolio adjusting strategy. Finally, a numerical example is given to illustrate the effectiveness of the proposed model and approach.


---

## Body

## 1. Introduction

The mean-variance methodology for the portfolio selection problem, proposed originally by Markowitz [1], has played an important role in the development of modern portfolio selection theory. In Markowitz’s pioneer work, he combined probability theory with optimization tool to study the investment behavior under uncertainty. The key principle of the mean-variance model is to take the expected return of a portfolio as the investment return and to take the variance of the expected return of a portfolio as the investment risk. Following Markowitz’s work, many scholars have studied portfolio selection models, such as Best and Hlouskova [2], Alexander and Baptista [3], Jacobs et al. [4], and Yu and Lee [5]. The basic assumption for using Markowitz’s model is that the future state of the assets can be correctly reflected by asset data in the past. However, this assumption can rarely be satisfied in the ever-changing real asset markets. With the introduction of fuzzy set theory [6] and possibility theory [7], a number of researchers began to employ these theories to study portfolio selection problems in a fuzzy environment. For example, Inuiguchi and Tanino [8] introduced a novel possibilistic programming approach to the portfolio selection problem based on the minimax regret criterion. Carlsson et al. [9] introduced a possibilistic approach to the selection of portfolios with highest utility score. Zhang and Nie [10] introduced the admissible efficient portfolio model under the assumption that the expected returns and risks of assets have admissible errors. Vercher et al. [11] presented a fuzzy downside risk approach for managing portfolio problems in the framework of risk-return trade-off using interval-valued expectations. Gupta et al. [12] applied multicriteria decision making via fuzzy mathematical programming to develop comprehensive models of asset portfolio optimization for the investors’ pursuing either of the aggressive or conservative strategies. Recently, Chen et al. [13] presented a possibilistic portfolio selection model with different interest rates for borrowing and lending. Tsaur [14] developed a fuzzy portfolio model that focuses on different investor risk attitudes. Zhang et al. [15] presented a possibilistic mean-semivariance-entropy model for multiperiod portfolio selection which takes into account four criteria, namely, return, risk, transaction cost, and diversification degree of portfolio. Barak et al. [16] proposed a mean-variance-skewness fuzzy portfolio model with cardinality constraint and by considering the fuzzy chance constraint to measure portfolio liquidity.Transaction cost is an important factor considered by investors in financial markets. Most of the cases, investors usually start with an existing portfolio and the decisions are how to readjust to the changes in the security market. This adjustment entails both purchases and sales of securities along with transaction costs. Arnott and Wagner [17] found that ignoring transaction costs would result in inefficient portfolio. Recently, several studies have dealt with the portfolio selection problem under consideration of different types of transaction costs. For example, Mao [18], Morton and Pliska [19], Best and Hlouskova [20], and Lobo et al. [21] studied portfolio optimization problem with fixed transaction costs. Konno and Wijayanayake [22] discussed portfolio selection problem under concave transaction costs and minimal transaction unit constraints. Later, they [23] presented a portfolio selection model under nonconvex transaction costs and minimal transaction unit constraints. Zhang et al. [24] dealt with the portfolio selection problem with general transaction costs under the assumption that the returns of assets obey LR-type possibility distributions. However, when complex types of transaction costs are considered, it would be more difficult to obtain the efficient portfolios by using traditional optimization algorithms. Therefore, many scholars applied heuristic algorithm for complex portfolio optimization problems. For example, Chang et al. [25] used three heuristic algorithms based on genetic algorithm (GA), tabu search (TS), and simulated annealing (SA) for the standard M-V model including cardinality and quantity constraints. Crama and Schyns [26] applied SA to the solution of a complex portfolio selection model with realistic constraints. Fernández and Gómez [27] applied artificial neural networks (NN) to trace out the efficient frontier associated with the standard Markowitz mean-variance model with additional cardinality and bounding constraints. Yu et al. [28] proposed an improved radial basis function (RBF) network-based portfolio selection model to realize mean-variance-skewness trade-off. In 2009, Cura [29] utilized particle swarm optimization (PSO) to solve portfolio optimization problems. Later, Chen and Zhang [30] applied PSO algorithm to solve the admissible portfolio selection problem with transaction costs. Krink and Paterlini [31] developed an improved differential evolution (DE) for multiobjective portfolio optimization and compared the proposed algorithm with quadratic programming and the NSGA-II algorithm. Bermúdez et al. [32] introduced a multiobjective GA for cardinality constrained fuzzy portfolio selection.The purpose of this paper is to discuss the portfolio adjusting problem with transaction costs under the assumptions that the uncertain returns of assets in financial markets are fuzzy numbers. We propose a possibilistic portfolio model with general transaction costs, in which the first possibilistic moment about zero of a portfolio is used to measure the investment return, and the second possibilistic moment about the possibilistic mean value of the portfolio is used to measure the investment risk. Moreover, we notice that the artificial bee colony (ABC) algorithm proposed by Karaboga [33] is a relatively new algorithm, and numerical comparisons demonstrated that the performance of ABC algorithm is competitive to other population-based algorithms such as genetic algorithm (GA), differential evolution (DE), particle swarm optimization (PSO), and evolutionary algorithm (EA) [34–36]. Due to its simplicity and ease of implementation, ABC algorithm has captured much attention and has been applied to solve many practical optimization problems, such as vehicle routing problem [37], image registration [38], and flowshop scheduling problem [39]. Based on the above discussion, in this paper, a modified ABC algorithm is developed to solve complex portfolio selection problem.The rest of the paper is organized as follows. In Section2, we introduce the definitions of the possibilistic moments and some properties. Section 3 presents a portfolio selection model with general transaction costs under the assumption that the returns of assets are trapezoidal fuzzy variables. To solve the proposed portfolio optimization problem, a modified ABC algorithm is described in Section 4. A numeral example is given to illustrate the effectiveness of the proposed models and algorithm in Section 5. Finally, some concluding remarks are given in Section 6.


## 2. Preliminaries

Let us introduce some definitions which are needed in the following section. A fuzzy numberA is a fuzzy set of the real line R with a normal, fuzzy convex, and continuous membership function of bounder support. The family of fuzzy numbers is denoted by F. Moreover, a function f
:
[
0,1
]
→
R is said to be a weighting function if f is a nonnegative, monotone increasing and satisfies the normalization condition ∫
0
1
f
(
γ
)
d
γ
=
1.Definition 1 (Fullér and Majlender [40]).
Let[
A
]
γ
=
[
a
1
(
γ
)
,
a
2
(
γ
)
] be a fuzzy number and let f
(
γ
) be a weighted function. Then f-weighted lower possibilistic and upper possibilistic mean values and possibilistic mean of A are defined as follows:
(1)
M
f
-
(
A
)
=
∫
0
1
‍
a
1
(
γ
)
f
(
γ
)
d
γ
,
M
f
+
(
A
)
=
∫
0
1
‍
a
2
(
γ
)
f
(
γ
)
d
γ
,
M
¯
f
(
A
)
=
∫
0
1
‍
a
1
(
γ
)
+
a
2
(
γ
)
2
f
(
γ
)
d
γ
.Remark 2.
Thef-weighted possibilistic mean of A is the arithmetic mean of its f-weighted lower and upper possibilistic mean values; that is,
(2)
M
¯
f
(
A
)
=
M
f
-
(
A
)
+
M
f
+
(
A
)
2
.Remark 3.
Iff
(
γ
)
=
2
γ, then,
(3)
M
¯
f
(
A
)
=
∫
0
1
‍
a
1
(
γ
)
+
a
2
(
γ
)
2
2
γ
d
γ
=
∫
0
1
‍
[
a
1
(
γ
)
+
a
2
(
γ
)
]
γ
d
γ
=
M
¯
(
A
)
.
That is, the f-weighted possibilistic mean value can be considered as a generalization of possibilistic mean value introduced by Carlsson and Fullér [41].Definition 4 (Saeidifar and Pasha [42]).
Let[
A
]
γ
=
[
a
1
(
γ
)
,
a
2
(
γ
)
] be a fuzzy number and let f
(
γ
) be a weighted function. Then the kth weighted double possibilistic moment of fuzzy number A about points M
f
-
(
A
), M
f
+
(
A
) is defined as follows:
(4)
μ
k
(
M
f
-
(
A
)
,
M
f
+
(
A
)
)
(
A
)
=
1
2
∫
0
1
‍
f
(
γ
)
[
(
a
1
(
γ
)
-
M
f
-
(
A
)
)
k
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
+
(
a
2
(
γ
)
-
M
f
+
(
A
)
)
k
]
d
γ
,
k
=
1,2
,
…
.Specifically, iff
(
γ
)
=
2
γ, then the kth possibilistic moment about the possibilistic mean value of fuzzy number A is
(5)
μ
k
(
A
)
=
∫
0
1
‍
γ
[
(
a
1
(
γ
)
-
M
¯
(
A
)
)
k
+
(
a
2
(
γ
)
-
M
¯
(
A
)
)
k
]
,
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
k
=
1,2
,
…
.Definition 5 (Saeidifar and Pasha [42]).
Let[
A
]
γ
=
[
a
1
(
γ
)
,
a
2
(
γ
)
] be a fuzzy number. Then the kth possibilistic moment about zero of a fuzzy number A is defined as follows:
(6)
μ
k
′
(
A
)
=
∫
0
1
‍
γ
[
(
a
1
(
γ
)
)
k
+
(
a
2
(
γ
)
)
k
]
d
γ
,
k
=
1,2
,
…
.Furthermore, Saeidifar and Pasha [42] defined the first possibilistic moment as the crisp possibilistic mean value and the second possibilistic moment as the possibilistic variance of fuzzy number A, where
(7)
M
¯
(
A
)
=
μ
1
′
(
A
)
=
∫
0
1
‍
γ
[
a
1
(
γ
)
+
a
2
(
γ
)
]
d
γ
,
Var
⁡
⁡
(
A
)
=
μ
2
(
A
)
=
∫
0
1
‍
γ
[
(
a
1
(
γ
)
-
M
¯
(
A
)
)
2
+
(
a
2
(
γ
)
-
M
¯
(
A
)
)
2
]
,
which are consistent with the definitions introduced by Carlsson and Fullér [41].It is straightforward to show the following formula:(8)
μ
2
(
A
)
=
μ
2
′
(
A
)
-
(
μ
1
′
(
A
)
)
2
.The variance ofA is defined as the expected value of the squared deviations between the arithmetic mean and the endpoints of its level sets. The variance is always positive and a measure of dispersion or spread of the fuzzy number. In the physical interpretation of the variance, it gives the moment of inertia of the mass distributed about the center of mass; also the variance gives information about the spread of variables around the mean value and it is a very important factor to find out the fluctuations in the observed values (for more see [41, 42]).


## 3. Portfolio Rebalancing Model

In this paper, we suppose that an investor starts with an existing portfolio and considers reallocate his/her wealth amongn risky assets. In order to describe conveniently, we use the following notations:x
i
: the proportion invested in asseti;
r
i: the random return rate of asset i;
σ
i
j: the covariance between assets i and j;
u
i: the upper bound constraint on asset i;
i
,
j
=
1,2
,
…
,
n.Following Markowitz’s idea, we quantify investment return by the expected value of a portfolio and risk by the variance. A rational investor may be interested in obtaining a certain average return from the portfolio at a minimum risk. Thus, a portfolio selection problem in the mean-variance context can be written as(9)
min
⁡
∑
i
=
1
n
‍
∑
j
=
1
n
‍
x
i
x
j
σ
i
j
,
s
.
t
.
∑
i
=
1
n
‍
E
(
r
i
)
x
i
=
R
*
,
s
s
s
s
s
s
∑
i
=
1
n
‍
x
i
=
1
,
ssssss
0
≤
x
i
≤
u
i
,
i
=
1,2
,
…
,
n
,
where E
(
r
i
) is the expected returns of asset i and R
* is the desired mean return of the portfolio.By solving the above optimization problem continuously with a differentR
* each time, a set of efficient points is traced out. This efficient set is called the efficient frontier and is a curve that lies between the global minimum risk portfolio and the maximum return portfolio. In other words, the portfolio selection problem is to find all the efficient portfolios along this frontier.In order to enrich the model, a weighting parameterλ
(
0
≤
λ
≤
1
) is introduced to reflect different investor risk attitudes. With this new parameter, model (9) can be described as follows:
(10)
max
⁡
(
1
-
λ
)
∑
i
=
1
n
‍
E
(
r
i
)
x
i
-
λ
∑
i
=
1
n
‍
∑
j
=
1
n
‍
x
i
x
j
σ
i
j
,
s
s
.
t
.
sss
s
∑
i
=
1
n
‍
x
i
=
1
,
sssssss
s
0
≤
x
i
≤
u
i
,
i
=
1,2
,
…
,
n
,
where the parameter λ can also be interpreted as the risk aversion factor of the investor satisfying 0
≤
λ
≤
1. Obviously, the greater the factor λ is, the more risk aversion the investor has. Especially, when λ
=
1, the investor will be extremely conservative because in this case only the risk of his/her investment is considered and no attention is paid to the returns of his/her investment. Conversely, λ
=
0 means that the investor is extremely aggressive to pursue the returns of his/her investment, completely ignoring the risk of investment.Transaction costs are inevitably present in practical applications of portfolio selection and can be used to capture a number of costs such as brokerage fees, bid-ask spreads, taxes, or even fund loads [21]. The transaction cost associated with a portfolio x
=
(
x
1
,
x
2
,
…
,
x
n
) is usually defined as the sum of individual transaction costs on each asset:
(11)
C
(
x
)
=
∑
i
=
1
n
‍
C
i
(
x
i
)
,
where C
i
(
x
i
) is the individual cost on the ith asset.Therefore, the portfolio adjusting model with general transaction cost can be expressed as(12)
max
⁡
(
1
-
λ
)
∑
i
=
1
n
‍
[
E
(
r
i
)
x
i
-
C
i
(
x
i
)
]
-
λ
∑
i
=
1
n
‍
∑
j
=
1
n
‍
x
i
x
j
σ
i
j
,
s
s
.
t
.
s
∑
i
=
1
n
‍
x
i
=
1
,
sssssss
ss
0
≤
x
i
≤
u
i
,
i
=
1,2
,
…
,
n
.As discussed in Section1, the returns of risky assets are in a fuzzy uncertain economic environment and vary from time to time; the future states of returns and risks of risky assets cannot be predicted accurately. Meanwhile, investor can take into account and complete his knowledge with other pieces of information, such as economical and financial behaviors of the companies, government policies, and business strategies. This information can be estimated quantitatively by the expert perceptions. Based on these factors, we consider the portfolio selection problem (12) under the assumption that the returns of assets are trapezoid fuzzy numbers.Letr
i be a trapezoidal fuzzy number with tolerance interval [
a
i
,
b
i
], left width α
i, and right width β
i, i
=
1,2
,
…
,
n; that is, r
i
=
(
a
i
,
b
i
,
α
i
,
β
i
)
.
r
i can be described with the following membership function:
(13)
r
i
(
t
)
=
{
1
-
a
i
-
t
α
i
,
if
a
i
-
α
i
≤
t
≤
a
i
,
1
,
if
a
i
≤
t
≤
b
i
,
1
-
t
-
b
i
β
i
,
if
b
i
≤
t
≤
b
i
+
β
i
,
0
,
otherwise
.
Then, a  γ-level sets of r
i can be computed as
(14)
[
r
i
]
γ
=
[
a
i
-
(
1
-
γ
)
α
i
,
b
i
+
(
1
-
γ
)
β
i
]
,
∀
γ
∈
[
0,1
]
.Using Definitions1 and 4 introduced in Section 2, we easily obtain the crisp possibilistic mean value and the possibilistic variance of r
i as follows:
(15)
M
¯
(
r
i
)
=
∫
0
1
‍
γ
[
a
i
-
(
1
-
γ
)
α
i
+
b
i
+
(
1
-
γ
)
β
i
]
d
γ
=
a
i
+
b
i
2
+
β
i
-
α
i
6
,
(16)
Var
⁡
(
r
i
)
=
∫
0
1
‍
γ
[
(
a
i
-
(
1
-
γ
)
α
i
-
M
¯
(
r
i
)
)
2
sssss
s
+
(
b
i
+
(
1
-
γ
)
β
i
-
M
¯
(
r
i
)
)
2
]
d
γ
=
∫
0
1
‍
γ
{
[
a
i
-
(
1
-
γ
)
α
i
-
a
i
+
b
i
2
+
β
i
-
α
i
6
]
2
sssss
+
[
b
i
+
(
1
-
γ
)
β
i
-
a
i
+
b
i
2
+
β
i
-
α
i
6
]
2
}
d
γ
=
(
b
i
-
a
i
2
+
α
i
+
β
i
6
)
2
+
(
α
i
+
β
i
)
2
72
+
(
α
i
-
β
i
)
2
72
,
respectively.Furthermore, the crisp possibilistic mean value of the return associated with the portfolio(
x
1
,
x
2
,
…
,
x
n
) after paying transaction costs is easily obtained by
(17)
M
¯
(
r
)
=
μ
1
′
(
∑
i
=
1
n
‍
(
x
i
r
i
-
C
i
(
x
i
)
)
)
=
∑
i
=
1
n
‍
(
a
i
+
b
i
2
+
β
i
-
α
i
6
)
x
i
-
∑
i
=
1
n
‍
C
i
(
x
i
)
,
and the possibilistic variance of return associated with the portfolio (
x
1
,
x
2
,
…
,
x
n
) is given by
(18)
Var
⁡
(
r
)
=
μ
2
(
∑
i
=
1
n
‍
(
x
i
r
i
-
C
i
(
x
i
)
)
)
=
[
∑
i
=
1
n
‍
(
b
i
-
a
i
2
+
α
i
+
β
i
6
)
x
i
]
2
+
1
72
[
∑
i
=
1
n
‍
(
α
i
+
β
i
)
x
i
]
2
+
1
72
[
∑
i
=
1
n
‍
(
α
i
-
β
i
)
x
i
]
2
.Analogous to Markowitz’s mean-variance methodology for the portfolio selection problem, the crisp possibilistic mean value corresponds to the return, while the possibilistic variance corresponds to the risk. Thus, the possibilistic portfolio adjusting problem with transaction costs can be formulated as(19)
max
⁡
(
1
-
λ
)
{
∑
i
=
1
n
‍
(
a
i
+
b
i
2
+
β
i
-
α
i
6
)
x
i
-
∑
i
=
1
n
‍
C
i
(
x
i
)
}
sss
ssss
s
-
λ
{
[
∑
i
=
1
n
‍
(
b
i
-
a
i
2
+
α
i
+
β
i
6
)
x
i
]
2
ssssssssssssssss
s
+
1
72
[
∑
i
=
1
n
‍
(
α
i
+
β
i
)
x
i
]
2
+
1
72
[
∑
i
=
1
n
‍
(
α
i
-
β
i
)
x
i
]
2
}
s
s
s
.
t
.
∑
i
=
1
n
‍
x
i
=
1
,
ssssss
ss
s
0
≤
x
i
≤
u
i
,
i
=
1,2
,
…
,
n
.It should be noted that, in this paper, we consider four kinds of transaction costs, respectively, that is, concave transaction cost, linear transaction cost, convex transaction cost, and a general type of transaction cost, which are shown as follows.(i)
The concave transaction cost function is(20)
C
i
1
(
x
i
)
=
f
1
i
ln
⁡
⁡
(
x
i
+
1
)
.
(ii)
The fixed proportional (linear) transaction cost function is(21)
C
i
2
(
x
i
)
=
f
2
i
x
i
.
(iii)
The convex transaction cost function is(22)
C
i
3
(
x
i
)
=
f
3
i
(
e
x
i
-
1
)
.
(iv)
The no-convex-no-concave transaction cost function is(23)
C
i
4
(
x
i
)
=
{
f
4
i
ln
⁡
(
x
i
+
1
)
if
0
≤
x
i
≤
d
i
,
f
4
i
(
x
i
+
g
1
i
)
if
d
i
≤
x
i
≤
h
i
,
f
4
i
(
e
x
i
+
g
2
i
)
if
x
i
≥
h
i
,where g
1
i
=
ln
⁡
(
d
i
+
1
)
-
d
i and g
2
i
=
h
i
+
g
1
i
-
e
h
i.Remark 6.
In the general type of transaction cost functionC
i
4
(
x
i
), the unit transaction cost is relatively larger when the amount of transaction is smaller and it decreases as the amount increases. Hence it is a nondecreasing concave function up to d
i point. Because of the market impact effect, the transaction cost becomes convex when the amount exceeds h
i point. Between d
i point and h
i point, the transaction cost is fixed proportional to the amount. It can be used to describe the practical situation for the transaction cost precisely.


## 4. Modified Artificial Bee Colony Algorithm

### 4.1. Artificial Bee Colony Algorithm

Artificial bee colony (ABC) algorithm is a relatively new algorithm developed by Karaboga [33], which is based on simulating the intelligent forging behavior of honey bee swarm. In ABC algorithm, the colony of artificial bees consists of three groups of bees: employed bees, onlooker bees, and scout bees. Employed bees are responsible for exploiting the nectar sources explored before and they give information to the other waiting bees in the hive about the quality of the food source which they are exploiting. Onlooker bees wait in the hive and establish food source to exploit depending on the information shared by the employed bees. Scouts search environment in order to find a new food source.In ABC algorithm, each food source is exploited by only one employed bee. In other words, the number of employed bees is equal to the number of food sources around the hive. Moreover, the position of a food source represents a possible solution to the optimization problem and the nectar amount of a food source corresponds to the quality (fitness) of the associated solution. The number of the employed bees or the onlooker bees is equal to the number of solutions in the population.Initial Population. At the first step, the ABC generates a randomly distributed initial population P of SN solutions (food source positions), where SN denotes the size of population. Each solution X
i
(
i
=
1,2
,
…
,
SN
) is a D-dimensional vector. Here, D is the number of optimization parameters.After initialization, the population of the positions (solutions) is subject to repeated cycles,C
=
1,2
,
…
,
MCN, where MCN is the maximum cycle number. The search processes of employed bees, onlooker bees, and scout bees are described as follows.The Employed Bees Phase. An employed bee produces a modification on the position (solution) in her memory depending on the local information (visual information) and tests the nectar amount (fitness value) of the new source (new solution). Provided that the nectar amount of the new one is higher than that of the previous one, the bee memorizes the new position and forgets the old one. Otherwise she keeps the position of the previous one in her memory. The expression, which is used by an employed bee to produce a modification, is given as follows:
(24)
v
i
,
j
=
x
i
,
j
+
ϕ
i
,
j
(
x
i
,
j
-
x
k
,
j
)
,
where k
∈
1,2
,
…
,
SN and j
∈
1,2
,
…
,
D are randomly chosen indexes. Although k is determined randomly, it has to be different from i. ϕ
i
j is a random number between [
-
1,1
].The Onlooker Bees Phase. After all employed bees complete the search process, they share the nectar information of the food sources and their position information with the onlooker bees on the dance area. Then, an onlooker bee evaluates the nectar information taken from all employed bees and chooses a food source depending on the probability, p
i, associated with that food source:
(25)
p
i
=
fit
i
∑
i
=
1
SN
fit
i
,
where fit
i is the fitness value of the solution i which is proportional to the nectar amount of the food source in the position i and SN is the number of food sources which is equal to the number of employed bees.The Scout Bees Phase. Any food source position that does not improve the fitness value will be abandoned and replaced by a new position that is randomly determined by a scout bee. This helps avoid suboptimal solutions. The new random position chosen by the scout bee will be calculated from
(26)
x
i
,
j
=
x
min
⁡
j
+
rand
(
0,1
)
(
x
max
⁡
j
-
x
min
⁡
j
)
,
where j is determined randomly. It should be noticed that it has to be different from i.Based on the above discussions, we formally describe the main steps of the standard ABC algorithm, given in Algorithm1.Algorithm 1:Standard ABC algorithm.
(1) Initialize the population of solutionsx
i
,
j, i
=
1
,
…
,
SN, j
=
1
,
…
,
D
(2) Evaluate the population
(3) cycle = 1
(4)Repeat
(5) Produce new solutionsv
i
,
j for the employed bees by using (24) and evaluate them
(6)Apply the greedy selection process for the employed bees
(7)Calculate the probability values P
i
,
j for the solutions x
i
,
j by (25)
(8)Produce the new solutions v
i
,
j for the onlookers from the solutions x
i
,
j selected depending on P
i
,
j and evaluate them
(9)Apply the greedy selection process for the onlooker bees
(10)Determine the abandoned solution for the scout, if exists, and replace it with a new
randomly produced solutionx
i
,
j by (26)
(11) Memorize the best solution achieved so far
(12)cycle = cycle + 1
(13)Until cycle = MCN


### 4.2. Modified Artificial Bee Colony Algorithm

Although some researchers [34–36] have demonstrated that the performance of the ABC algorithm is better than or similar to those of other population-based algorithms with the advantage of employing fewer control parameters, ABC also faces up some insufficiencies. For example, ABC can get trapped in local optima when solving complex multimodel function optimization problems [36]. Recently, a few modified or improved algorithms based on the classical ABC algorithm are proposed. For example, Akay and Karaboga [43] introduced a modified ABC algorithm and applied it for efficiently solving real-parameter optimization problems. Alatas [44] proposed chaotic bee colony algorithms for global numerical optimization. Xiang and An [45] proposed an efficient and robust artificial bee colony algorithm for numerical optimization. Kalayci and Gupta [46] proposed an ABC algorithm for a sequence-dependent disassembly line balancing problem with multiple objectives and compared it with GA, PSO, SA, TS, river formation dynamics (RFD), and ant colony optimization (ACO). Tsai [47] integrated ABC algorithm and bees' algorithms (BA) into a hybrid ABC-BA algorithm and conducted experiments on six constrained optimization problems with equality or inequality constraints. These modified or improved ABC algorithms have shown a better performance than the classical ABC algorithm. In view of the above, considering the complexity of the portfolio optimization proposed, we present an improved ABC algorithm based on chaotic theory to solve the problem.Chaotic Initialization. Population initialization is a crucial task in evolutionary algorithms. If no information about the solution is available, then random initialization is the most commonly used method to initialize the population. However, it may affect the convergence speed and the quality of the final solution. Having the characteristics of the certainty, ergodicity, and randomicity, the chaotic map is suitable to initialize the population for the purpose of increasing the population diversity and achieving high-quality solution. The logistic map, which is well known, is given as follows:
(27)
x
n
+
1
=
μ
(
1
-
x
n
)
,
where μ is a control parameter, x
n is a chaotic variable, and n
=
0,1
,
2
,
…. Obviously, x
n
∈
(
0,1
) under the conditions that the initial x
0
∈
(
0,1
). Especially, x
n behaves chaotic dynamics when μ
=
4 and x
0
∉
{
0,0.25,0.5,0.75,1
}. The pseudocode of proposed chaotic initialization is given in Algorithm 2.Algorithm 2:Chaotic initialization.
(1) Set population size SN and dimension of solutionD
//Randomly generate the initial value of chaotic variable c
x
i
,
j
(2)for
j
=
1 to D
do
(3)
c
x
1
,
j
=
rand
(
0,1
)
(4)
while
c
x
1
,
j
∈
{
0,0.25,0.5,0.75,1
}
do
(5)
c
x
1
,
j
=
rand
(
0,1
)
(6)
end while
(7)end for
// The iterative process of chaotic initialization
(8)for
i
=
1 to SNdo
(9)
for
j
=
1 to D
do
(10)
x
i
,
j
=
x
min
⁡
j
+
c
x
i
,
j
(
x
max
⁡
j
-
x
min
⁡
j
)
(11)
c
x
i
+
1
,
j
=
4
c
x
i
,
j
(
1
-
c
x
i
,
j
)
(12)
end for
(13)end forA Modified Search Equation. The employed bee and onlooker bee produce a modification on the position in their memory by using (24). However, the convergence performance is poor in some cases. Therefore, here we proposed a modified search equation, in which a forgetting factor and a neighborhood factor are considered. It is given as follows:
(28)
v
i
,
j
=
φ
x
i
,
j
+
ψ
ϕ
i
,
j
(
x
i
,
j
-
x
k
,
j
)
,
where φ is the forgetting factor, which expresses the memory strength for current food source when searching the next food source. It dynamically decreases with the increase of iterations. In addition, the differences of current food source and neighbourhood food source also affect the convergence speed. Thus, the neighborhood factor ψ is introduced to accelerate the convergence speed by adjusting the radius of the search for new candidates. The parameters φ and ψ dynamically change as follows:
(29)
φ
=
ω
max
⁡
-
iteration
MCN
(
ω
max
⁡
-
ω
min
⁡
)
,
ψ
=
ω
min
⁡
+
iteration
MCN
(
ω
max
⁡
-
ω
min
⁡
)
,
where the value of ω
max
⁡ and ω
min
⁡ represent the maximum and minimum percentage of the position adjustment for employed bees and onlooker bees. Therefore, with these selected values, the value of φ linearly decreases and the value of ψ linearly increases.Chaotic Search for Scout Bees. To avoid the phenomenon of stagnation and premature convergence in the standard ABC algorithm, we employed chaotic search technique to get out of local optimum and get better results. Therefore, the chaotic search technique for scout bees is specifically illustrated in Algorithm 3.Algorithm 3:Chaotic search for scout bees.
(1) Set the maximum number of chaotic iterationmax
⁡
K
=
100 and iterative variable k
=
1
// The variablec
x
k
,
j denotes the jth chaotic variable in the kth iteration
(2)for
j
=
1 to D
do
(3)c
x
k
,
j
=
x
i
,
j
-
x
min
⁡
j
x
max
⁡
j
-
x
min
⁡
j
(4)end for
// The iterative process of chaotic search
(5)while
k
<
max
⁡
K
do
(6)
for
j
=
1 to D
do
(7) c
x
k
+
1
,
j
=
4
c
x
k
,
j
(
1
-
c
x
k
,
j
)
//V
=
[
v
1
,
…
,
v
D
] represents a candidate solution
(8)
v
j
=
x
min
⁡
j
+
c
x
k
+
1
,
j
(
x
max
⁡
j
-
x
min
⁡
j
)
(9)
end for
//Greedy selection is applied between {
V
,
X
i
}
(10) if
f
(
V
)
>
f
(
x
i
)
(11)Replace solution X
i with candidate solution V
(12)Set t
r
i
a
l
=
0
(13)Break
(14) else
(15)Set t
r
i
a
l
(
i
)
=
t
r
i
a
l
(
i
)
+
1
(16) end if
(17) Set k
=
k
+
1
(18)end whileThe Modified Algorithm. According to the analysis of the standard ABC algorithm and the modification mentioned above, it is clear that the modified ABC algorithm can be well balanced between the exploration and exploitation. Naturally, the modified ABC algorithm is given in Algorithm 4.Algorithm 4:Modified artificial bee colony algorithm.
(1) Set population size SN, the number of maximum cycles MCN and the control parameterl
i
m
i
t
(2) PerformAlgorithm
2 to fulfill the chaotic initialization of population x
i
(
i
=
1,2
,
…
,
SN
), and calculate
their objective function values and fitness value values. Sett
r
i
a
l
(
i
)
=
0
(
i
=
1,2
,
…
,
SN
) and i
t
e
r
a
t
i
o
n
=
1
(3)whileiteration ≤
MCN
do
// The employed bees phase
(4)
for
i
=
1 to SNdo
(5) Produce a new candidate food source V
i corresponding to food source X
i using (24)
(6) if (f
(
V
i
)
>
f
(
X
i
))Then
t
r
i
a
l
(
i
)
=
0
(7) else
t
r
i
a
l
(
i
)
=
t
r
i
a
l
(
i
)
+
1
(8) end if
(9)
end for
(10)Calculate the fitness values of all food sources and the probability values p
i by using (15)
// The onlooker bees phase
(11)Set t
=
0
,
i
=
1
(12)
while
t
<
SN
do
(13)
if
r
a
n
d
o
m
(
)
<
p
i
then
(14)   Sett
=
t
+
1
(15)   Produce a new candidate food sourceV
i for the onlooker bee corresponding to food source X
i using (24)
(16)if
f
(
V
i
)
>
f
(
X
i
)
then
(17)t
r
i
a
l
(
i
)
=
0
(18)else
t
r
i
a
l
(
i
)
=
t
r
i
a
l
(
i
)
+
1
(19)end if
(20)
end if
(21)Set i
=
i
+
1
(22)
if
i
>
SN
then
i
=
1
(23)
end if
(24)
end while
//The scout bees phase
(25)
for
i
=
1 to SNdo
(26)
if
t
r
i
a
l
(
i
)
>
l
i
m
i
t
then
(27)  Perform Algorithm
3 to implement chaotic search
(28)
end if
(29)
end for
(30)Set i
t
e
r
a
t
i
o
n
=
i
t
e
r
a
t
i
o
n
+
1
(31)end while


## 4.1. Artificial Bee Colony Algorithm

Artificial bee colony (ABC) algorithm is a relatively new algorithm developed by Karaboga [33], which is based on simulating the intelligent forging behavior of honey bee swarm. In ABC algorithm, the colony of artificial bees consists of three groups of bees: employed bees, onlooker bees, and scout bees. Employed bees are responsible for exploiting the nectar sources explored before and they give information to the other waiting bees in the hive about the quality of the food source which they are exploiting. Onlooker bees wait in the hive and establish food source to exploit depending on the information shared by the employed bees. Scouts search environment in order to find a new food source.In ABC algorithm, each food source is exploited by only one employed bee. In other words, the number of employed bees is equal to the number of food sources around the hive. Moreover, the position of a food source represents a possible solution to the optimization problem and the nectar amount of a food source corresponds to the quality (fitness) of the associated solution. The number of the employed bees or the onlooker bees is equal to the number of solutions in the population.Initial Population. At the first step, the ABC generates a randomly distributed initial population P of SN solutions (food source positions), where SN denotes the size of population. Each solution X
i
(
i
=
1,2
,
…
,
SN
) is a D-dimensional vector. Here, D is the number of optimization parameters.After initialization, the population of the positions (solutions) is subject to repeated cycles,C
=
1,2
,
…
,
MCN, where MCN is the maximum cycle number. The search processes of employed bees, onlooker bees, and scout bees are described as follows.The Employed Bees Phase. An employed bee produces a modification on the position (solution) in her memory depending on the local information (visual information) and tests the nectar amount (fitness value) of the new source (new solution). Provided that the nectar amount of the new one is higher than that of the previous one, the bee memorizes the new position and forgets the old one. Otherwise she keeps the position of the previous one in her memory. The expression, which is used by an employed bee to produce a modification, is given as follows:
(24)
v
i
,
j
=
x
i
,
j
+
ϕ
i
,
j
(
x
i
,
j
-
x
k
,
j
)
,
where k
∈
1,2
,
…
,
SN and j
∈
1,2
,
…
,
D are randomly chosen indexes. Although k is determined randomly, it has to be different from i. ϕ
i
j is a random number between [
-
1,1
].The Onlooker Bees Phase. After all employed bees complete the search process, they share the nectar information of the food sources and their position information with the onlooker bees on the dance area. Then, an onlooker bee evaluates the nectar information taken from all employed bees and chooses a food source depending on the probability, p
i, associated with that food source:
(25)
p
i
=
fit
i
∑
i
=
1
SN
fit
i
,
where fit
i is the fitness value of the solution i which is proportional to the nectar amount of the food source in the position i and SN is the number of food sources which is equal to the number of employed bees.The Scout Bees Phase. Any food source position that does not improve the fitness value will be abandoned and replaced by a new position that is randomly determined by a scout bee. This helps avoid suboptimal solutions. The new random position chosen by the scout bee will be calculated from
(26)
x
i
,
j
=
x
min
⁡
j
+
rand
(
0,1
)
(
x
max
⁡
j
-
x
min
⁡
j
)
,
where j is determined randomly. It should be noticed that it has to be different from i.Based on the above discussions, we formally describe the main steps of the standard ABC algorithm, given in Algorithm1.Algorithm 1:Standard ABC algorithm.
(1) Initialize the population of solutionsx
i
,
j, i
=
1
,
…
,
SN, j
=
1
,
…
,
D
(2) Evaluate the population
(3) cycle = 1
(4)Repeat
(5) Produce new solutionsv
i
,
j for the employed bees by using (24) and evaluate them
(6)Apply the greedy selection process for the employed bees
(7)Calculate the probability values P
i
,
j for the solutions x
i
,
j by (25)
(8)Produce the new solutions v
i
,
j for the onlookers from the solutions x
i
,
j selected depending on P
i
,
j and evaluate them
(9)Apply the greedy selection process for the onlooker bees
(10)Determine the abandoned solution for the scout, if exists, and replace it with a new
randomly produced solutionx
i
,
j by (26)
(11) Memorize the best solution achieved so far
(12)cycle = cycle + 1
(13)Until cycle = MCN


## 4.2. Modified Artificial Bee Colony Algorithm

Although some researchers [34–36] have demonstrated that the performance of the ABC algorithm is better than or similar to those of other population-based algorithms with the advantage of employing fewer control parameters, ABC also faces up some insufficiencies. For example, ABC can get trapped in local optima when solving complex multimodel function optimization problems [36]. Recently, a few modified or improved algorithms based on the classical ABC algorithm are proposed. For example, Akay and Karaboga [43] introduced a modified ABC algorithm and applied it for efficiently solving real-parameter optimization problems. Alatas [44] proposed chaotic bee colony algorithms for global numerical optimization. Xiang and An [45] proposed an efficient and robust artificial bee colony algorithm for numerical optimization. Kalayci and Gupta [46] proposed an ABC algorithm for a sequence-dependent disassembly line balancing problem with multiple objectives and compared it with GA, PSO, SA, TS, river formation dynamics (RFD), and ant colony optimization (ACO). Tsai [47] integrated ABC algorithm and bees' algorithms (BA) into a hybrid ABC-BA algorithm and conducted experiments on six constrained optimization problems with equality or inequality constraints. These modified or improved ABC algorithms have shown a better performance than the classical ABC algorithm. In view of the above, considering the complexity of the portfolio optimization proposed, we present an improved ABC algorithm based on chaotic theory to solve the problem.Chaotic Initialization. Population initialization is a crucial task in evolutionary algorithms. If no information about the solution is available, then random initialization is the most commonly used method to initialize the population. However, it may affect the convergence speed and the quality of the final solution. Having the characteristics of the certainty, ergodicity, and randomicity, the chaotic map is suitable to initialize the population for the purpose of increasing the population diversity and achieving high-quality solution. The logistic map, which is well known, is given as follows:
(27)
x
n
+
1
=
μ
(
1
-
x
n
)
,
where μ is a control parameter, x
n is a chaotic variable, and n
=
0,1
,
2
,
…. Obviously, x
n
∈
(
0,1
) under the conditions that the initial x
0
∈
(
0,1
). Especially, x
n behaves chaotic dynamics when μ
=
4 and x
0
∉
{
0,0.25,0.5,0.75,1
}. The pseudocode of proposed chaotic initialization is given in Algorithm 2.Algorithm 2:Chaotic initialization.
(1) Set population size SN and dimension of solutionD
//Randomly generate the initial value of chaotic variable c
x
i
,
j
(2)for
j
=
1 to D
do
(3)
c
x
1
,
j
=
rand
(
0,1
)
(4)
while
c
x
1
,
j
∈
{
0,0.25,0.5,0.75,1
}
do
(5)
c
x
1
,
j
=
rand
(
0,1
)
(6)
end while
(7)end for
// The iterative process of chaotic initialization
(8)for
i
=
1 to SNdo
(9)
for
j
=
1 to D
do
(10)
x
i
,
j
=
x
min
⁡
j
+
c
x
i
,
j
(
x
max
⁡
j
-
x
min
⁡
j
)
(11)
c
x
i
+
1
,
j
=
4
c
x
i
,
j
(
1
-
c
x
i
,
j
)
(12)
end for
(13)end forA Modified Search Equation. The employed bee and onlooker bee produce a modification on the position in their memory by using (24). However, the convergence performance is poor in some cases. Therefore, here we proposed a modified search equation, in which a forgetting factor and a neighborhood factor are considered. It is given as follows:
(28)
v
i
,
j
=
φ
x
i
,
j
+
ψ
ϕ
i
,
j
(
x
i
,
j
-
x
k
,
j
)
,
where φ is the forgetting factor, which expresses the memory strength for current food source when searching the next food source. It dynamically decreases with the increase of iterations. In addition, the differences of current food source and neighbourhood food source also affect the convergence speed. Thus, the neighborhood factor ψ is introduced to accelerate the convergence speed by adjusting the radius of the search for new candidates. The parameters φ and ψ dynamically change as follows:
(29)
φ
=
ω
max
⁡
-
iteration
MCN
(
ω
max
⁡
-
ω
min
⁡
)
,
ψ
=
ω
min
⁡
+
iteration
MCN
(
ω
max
⁡
-
ω
min
⁡
)
,
where the value of ω
max
⁡ and ω
min
⁡ represent the maximum and minimum percentage of the position adjustment for employed bees and onlooker bees. Therefore, with these selected values, the value of φ linearly decreases and the value of ψ linearly increases.Chaotic Search for Scout Bees. To avoid the phenomenon of stagnation and premature convergence in the standard ABC algorithm, we employed chaotic search technique to get out of local optimum and get better results. Therefore, the chaotic search technique for scout bees is specifically illustrated in Algorithm 3.Algorithm 3:Chaotic search for scout bees.
(1) Set the maximum number of chaotic iterationmax
⁡
K
=
100 and iterative variable k
=
1
// The variablec
x
k
,
j denotes the jth chaotic variable in the kth iteration
(2)for
j
=
1 to D
do
(3)c
x
k
,
j
=
x
i
,
j
-
x
min
⁡
j
x
max
⁡
j
-
x
min
⁡
j
(4)end for
// The iterative process of chaotic search
(5)while
k
<
max
⁡
K
do
(6)
for
j
=
1 to D
do
(7) c
x
k
+
1
,
j
=
4
c
x
k
,
j
(
1
-
c
x
k
,
j
)
//V
=
[
v
1
,
…
,
v
D
] represents a candidate solution
(8)
v
j
=
x
min
⁡
j
+
c
x
k
+
1
,
j
(
x
max
⁡
j
-
x
min
⁡
j
)
(9)
end for
//Greedy selection is applied between {
V
,
X
i
}
(10) if
f
(
V
)
>
f
(
x
i
)
(11)Replace solution X
i with candidate solution V
(12)Set t
r
i
a
l
=
0
(13)Break
(14) else
(15)Set t
r
i
a
l
(
i
)
=
t
r
i
a
l
(
i
)
+
1
(16) end if
(17) Set k
=
k
+
1
(18)end whileThe Modified Algorithm. According to the analysis of the standard ABC algorithm and the modification mentioned above, it is clear that the modified ABC algorithm can be well balanced between the exploration and exploitation. Naturally, the modified ABC algorithm is given in Algorithm 4.Algorithm 4:Modified artificial bee colony algorithm.
(1) Set population size SN, the number of maximum cycles MCN and the control parameterl
i
m
i
t
(2) PerformAlgorithm
2 to fulfill the chaotic initialization of population x
i
(
i
=
1,2
,
…
,
SN
), and calculate
their objective function values and fitness value values. Sett
r
i
a
l
(
i
)
=
0
(
i
=
1,2
,
…
,
SN
) and i
t
e
r
a
t
i
o
n
=
1
(3)whileiteration ≤
MCN
do
// The employed bees phase
(4)
for
i
=
1 to SNdo
(5) Produce a new candidate food source V
i corresponding to food source X
i using (24)
(6) if (f
(
V
i
)
>
f
(
X
i
))Then
t
r
i
a
l
(
i
)
=
0
(7) else
t
r
i
a
l
(
i
)
=
t
r
i
a
l
(
i
)
+
1
(8) end if
(9)
end for
(10)Calculate the fitness values of all food sources and the probability values p
i by using (15)
// The onlooker bees phase
(11)Set t
=
0
,
i
=
1
(12)
while
t
<
SN
do
(13)
if
r
a
n
d
o
m
(
)
<
p
i
then
(14)   Sett
=
t
+
1
(15)   Produce a new candidate food sourceV
i for the onlooker bee corresponding to food source X
i using (24)
(16)if
f
(
V
i
)
>
f
(
X
i
)
then
(17)t
r
i
a
l
(
i
)
=
0
(18)else
t
r
i
a
l
(
i
)
=
t
r
i
a
l
(
i
)
+
1
(19)end if
(20)
end if
(21)Set i
=
i
+
1
(22)
if
i
>
SN
then
i
=
1
(23)
end if
(24)
end while
//The scout bees phase
(25)
for
i
=
1 to SNdo
(26)
if
t
r
i
a
l
(
i
)
>
l
i
m
i
t
then
(27)  Perform Algorithm
3 to implement chaotic search
(28)
end if
(29)
end for
(30)Set i
t
e
r
a
t
i
o
n
=
i
t
e
r
a
t
i
o
n
+
1
(31)end while


## 5. Numerical Example

In order to illustrate our proposed effective means and approaches for the portfolio selection problem in this paper, we give a numerical example. Consider a 4-security problem with the following possibility distributions.Now we use the possibilistic portfolio selection model (19) proposed in this study to determine the future optimal portfolio selection strategy. The rate of transaction costs for 4 securities is f
1
i
=
f
2
i
=
f
3
i
=
f
4
i
=
(
0.03,0.04,0.045,0.05
), the upper bound μ
i
=
0.8, and d
i
=
0.2, h
i
=
0.35, i
=
1,2
,
…
,
4. Moreover, we let the maximum cycle MCN
=
1500, the size of the population SN
=
20, and the control parameter limit
=
100 (Table 1).Table 1
Possibility distributions of 4 securities.
r
i
a
i
b
i
α
i
β
i
r
1
0.05
0.06
0.01
0.01
r
2
0.06
0.065
0.02
0.005
r
3
0.068
0.075
0.02
0.005
r
4
0.065
0.07
0.015
0.03To demonstrate the effects of four kinds of transaction costs on the portfolio selection, we let the risk tolerance parameterλ
=
0.1, 0.5, and 0.9, respectively. Some optimal results obtained by using modified ABC algorithm for model (19) are shown in Tables 2, 3, and 4. It should be noticed that U
max
⁡ is the objective value and TC is the total transaction costs.Table 2
Comparison results with different transaction costs withλ
=
0.1.
C
i
1
(
x
i
)
C
i
2
(
x
i
)
C
i
3
(
x
i
)
C
i
4
(
x
i
)
x
1
0
0.2
0.381
0.298
x
2
0.2
0.8
0.261
0.298
x
3
0.8
0
0.223
0.203
x
4
0
0
0.135
0.201
U
max
⁡
0.0309
0.0225
0.0168
0.0239
TC
0.0328
0.0340
0.0430
0.0357Table 3
Comparison results with different transaction costs withλ
=
0.5.
C
i
1
(
x
i
)
C
i
2
(
x
i
)
C
i
3
(
x
i
)
C
i
4
(
x
i
)
x
1
0.04
0.2
0.350
0.291
x
2
0.18
0.8
0.305
0.308
x
3
0.78
0
0.223
0.201
x
4
0
0
0.122
0.200
U
max
⁡
0.0171
0.0125
0.0093
0.0133
TC
0.0328
0.0340
0.0429
0.0357Table 4
Comparison results with different transaction costs withλ
=
0.9.
C
i
1
(
x
i
)
C
i
2
(
x
i
)
C
i
3
(
x
i
)
C
i
4
(
x
i
)
x
1
0.200
0.193
0.372
0.272
x
2
0
0.800
0.304
0.326
x
3
0.8
0
0.201
0.203
x
4
0
0.007
0.123
0.199
U
max
⁡
0.0034
0.0025
0.0018
0.0026
TC
0.0319
0.0341
0.0429
0.0358As is shown in Tables2, 3, and 4, the total transaction cost under concave function C
i
1
(
x
i
) is the smallest among all the transaction cost functions and the biggest under convex function C
i
3
(
x
i
). This is because that concave transaction cost C
i
1
(
x
i
) has a decreasing slope, which means that the more the amount of asset is allocated, the less transaction cost increases, while the increasing derivative of convex transaction cost C
i
3
(
x
i
) will induce much more transaction cost if the holding of asset becomes more. Moreover, for concave transaction cost function C
i
1
(
x
i
) and the linear transaction cost function C
i
2
(
x
i
), the portfolio proportions are concentrated on certain securities. Oppositely, the convex transaction cost function C
i
3
(
x
i
) and the no-convex-no-concave transaction cost function C
i
4
(
x
i
) can decentralize portfolio proportions, and C
i
4
(
x
i
) do better than C
i
3
(
x
i
). This means that the general type of transaction cost C
i
4
(
x
i
) can better avoid the amount of each asset being too high or too low. For example, Table 3 shows that the holding of asset 4 for transaction cost C
i
1
(
x
i
) reaches to its lower bound with x
4
=
0 and the total transaction cost TC
=
0.0328 is the smallest. What is more, for linear transaction cost C
i
2
(
x
i
), the holding of assets 3 and 4 reaches their lower bound with x
3
=
x
4
=
0 and the total transaction cost TC
=
0.0340 is bigger than that with C
i
1
(
x
i
). Comparing C
i
3
(
x
i
) with C
i
1
(
x
i
) and C
i
2
(
x
i
), the portfolio proportions are decentralized and its total transaction cost TC
=
0.0429 is the biggest. Furthermore, for C
i
4
(
x
i
), the portfolio proportions are further decentralized with proportions x
1
=
0.291, x
2
=
0.308, x
3
=
0.201, and x
4
=
0.200.To show the effectiveness of the proposed algorithm, modified ABC algorithm, ABC algorithm, and GA are compared forλ
=
0.5. Results are listed in Tables 5, 6, 7, and 8. We can see that under the same transaction cost function, the return obtained by modified ABC algorithm is the biggest among three algorithms and the risk obtained by modified ABC algorithm is the smallest. It illustrates that the modified ABC algorithm is competitive to ABC algorithm and GA.Table 5
Comparison results of modified ABC, ABC, and GA withC
i
1
(
x
i
).
x
1
x
2
x
3
x
4
Return
Risk
U
max
⁡
Modified ABC
0.040
0.180
0.780
0
0.06721
6.7582
E
-
5
0.0154
ABC
0.002
0.190
0.800
0.008
0.06719
6.8011
E
-
5
0.0153
GA
0.023
0.172
0.800
0.005
0.06712
6.8135
E
-
5
0.0153Table 6
Comparison results of modified ABC, ABC, and GA withC
i
2
(
x
i
).
x
1
x
2
x
3
x
4
Return
Risk
U
max
⁡
Modified ABC
0.200
0.800
0
0
0.059
5.9000
E
-
5
0.0125
ABC
0.200
0.800
0
0
0.059
5.9000
E
-
5
0.0125
GA
0.274
0.725
0
0.001
0.058
6.0220
E
-
5
0.0112Table 7
Comparison results of modified ABC, ABC, and GA withC
i
3
(
x
i
).
x
1
x
2
x
3
x
4
Return
Risk
U
max
⁡
Modified ABC
0.339
0.306
0.221
0.134
0.06163
7.2276
E
-
5
0.0084
ABC
0.342
0.300
0.223
0.135
0.06154
7.3773
E
-
5
0.0083
GA
0.343
0.300
0.217
0.139
0.06160
7.2608
E
-
5
0.0083Table 8
Comparison results of modified ABC, ABC, and GA withC
i
4
(
x
i
).
x
1
x
2
x
3
x
4
Return
Risk
U
max
⁡
Modified ABC
0.274
0.326
0.201
0.199
0.06242
7.4372
E
-
6
0.0120
ABC
0.254
0.346
0.200
0.200
0.06222
7.4639
E
-
6
0.0119
GA
0.307
0.291
0.202
0.200
0.06228
7.5506
E
-
6
0.0119Furthermore, in order to test the robustness of the proposed algorithm, we solve the problem by setting the different parameters in the modified ABC algorithm. We employ the relative error which is defined by (maximal objective − actual objective)/maximal objective×
100
%, where the maximal objective is the maximum of all the computational results obtained and the actual objective is U
max
⁡. Here we choose λ
=
0.4 and the no-convex-no-concave transaction cost function C
i
4
(
x
i
). The detailed results are shown in Table 9. The results show that all the relative errors are less than 1
%, which means that the modified ABC algorithm has strong robustness to parameter variations and resistance disturbances.Table 9
Relative error withλ
=
0.4.
SN
MCN
Limit
U
max
⁡
Relative error
10
1000
100
0.0159515
0.0357
20
1000
50
0.0159450
0.0765
20
1500
100
0.0159567
0.0031
20
2000
150
0.0159552
0.0125
30
1500
100
0.0159472
0.0627
30
1000
150
0.0159482
0.0564
40
1500
200
0.0159537
0.0219
50
2000
100
0.0159556
0.0100
60
1000
50
0.0159436
0.0852
70
1500
100
0.0159572
0Finally, in order to show that the modified ABC algorithm is more effective and has a faster convergence speed than ABC algorithm and GA, the comparison of convergence characteristic is given in Figure1. It shows that the modified ABC algorithm converges within 500 iterations, while ABC algorithm and GA converge within 1000 iterations. What is more, the global optimal value obtained by modified ABC algorithm is the biggest. That is to say, the modified ABC algorithm converges to the global optimal solution fastest and is the most effective algorithm among the three algorithms to solve complex portfolio problems.Figure 1
Performance comparison of the modified ABC algorithm, ABC algorithm, and GA.


## 6. Conclusion

Based on the possibilistic moments, this paper deals with a fuzzy portfolio selection model under four kinds of transaction costs. Then modified ABC algorithm is applied to solve the optimal problem. Furthermore, we get the portfolio proportions for 4 securities under four kinds of transaction costs. The results show that the portfolio proportions change with different types of transaction costs. Finally, we compared the results of modified ABC algorithm with that of ABC algorithm and GA, which showed that the modified ABC algorithm is better than ABC algorithm and GA in solving fuzzy portfolio selection problem.



---

*Source: 192868-2014-06-15.xml*