1. Introduction
Portfolio optimization is a fundamental financial problem that aims at optimally allocating limited capital to available assets by making a balance between maximal reward and minimal risk [
1]. As investors consider the return as a favorable gain and meanwhile try to avoid bearing the undesirable losses, risk management has received much attention from practitioners and researchers in modern portfolio theory. To acquire a beneficial financial asset allocation strategy from limited capital resources under various uncertainties, a quantitative risk measurement that characterizes the potential return and loss should be established. In 1952, Markowitz firstly formulated a MeanVariance (MV) model to maximize the expected return for a certain level of risk [
2]. However, the MV model works only when the investor’s utility function is quadratic or the portfolio revenue follows a normal distribution. Due to people’s different attitudes about the desirable positive returns and undesirable negative risks, the semivariance risk measurement was proposed correspondingly [
3]. In addition, since it is difficult to calculate the effective frontiers, such risk measures have been widely criticized by practitioners. However, inspired by the initial work of Markowitz, many extensions to the MV method also have been investigated subsequently, such as [
4,
5,
6,
7,
8].
To properly express the investors’ attitude towards the underperformance and overperformance of a portfolio, a popular downside risk indicator called Value at Risk (VaR) was developed [
9]. Given a confidence level
$\alpha \in (0,1)$ over a fixed horizon, VaR measures the maximum possible loss of a portfolio from the market risk. For example, given a daily VaR valued as
x with a confidence level of 99%, it measures the risk that the loss will be greater than
x with a chance of 1%. Without loss of generality, a higher confidence level means a smaller loss of a portfolio. Since then, VaR has gradually gained popularity in the academic field of risk management and financial engineering owing to its simplicity and applicability [
10,
11,
12,
13,
14,
15,
16,
17,
18]. By now, VaR is widely used in banks and insurance companies for estimating the exposure of a certain portfolio to high losses. However, VaR has also been criticized by financial regulators and academic researchers due to the nonadditivity and nonconvexity property [
19]. In addition, as VaR is nonconvex, VaR is rarely used as a risk measurement in realworld asset allocation because optimizing a riskreward capital allocation problem with the objective of VaR minimization often requires a large computation time. To consider the potential losses ignored by VaR, many improved modifications have been investigated, including the most commonly used measure termed as Conditional VaR (CVaR) [
20]. Specifically, CVaR aims to investigate the expected losses that occur beyond the VaR threshold and has been extensively studied in the research field [
21,
22,
23].
Although VaR is a controversial risk management tool, as it is a major tool in banks and investment companies for estimating risk, the researcher still concentrates on developing various methods to solve the VaR based portfolio optimization problem. In this study, we briefly introduce the scientific notation of VaR and establish the corresponding portfolio optimization model. To reduce the computation burden of minimizing VaR via a commercial MILP solver, such as CPLEX, a new MILP model based on the symmetric property of VaR is proposed. Since optimizing practical largescale MILP problems requires huge computing time, we propose to utilize the PSO algorithm with an Fast Feasible Solution Detection (FFSD) scheme to obtain nearoptimal solutions in affordable computation time. The PSO algorithm is a typical representative of the swarm intelligence algorithm that dominates the field of natureinspired metaheuristics. The swarm intelligence algorithm solves complex optimization problems by simulating the collective behavior of decentralized and selforganizing biological individuals in nature [
24]. In recent years, a representative swarm intelligence algorithm called particle swarm optimization has been demonstrated to be an efficient optimization tool in solving nonconvex complicated problems [
25,
26,
27,
28]. A comparison study of the PSO algorithm with a genetic algorithm in finding optimal portfolio solutions has been presented in [
29] where several strategies for handling the constraints are designed.
Based on the above analysis and review of the related research work, the major contributions of this research include the following:
We propose a new enhanced MILP formulation with symmetric consideration to significantly reduce the computational burden of finding the optimal portfolios through the CPLEX software.
We propose an FFSD scheme embedded in the PSO algorithm (PSOFFSD) to further improve the performance of the PSO algorithm for tackling largescale computational instances.
2. Formulation of the NonParametric Portfolio Selection Problem with VaR Minimization
In this section, we develop the formulation of the nonparametric VaR minimization portfolio selection problem. According to the definition of VaR, it measures the exposure of an investment strategy to the potential high losses. Specifically, the
$Va{R}_{\alpha}$ of a portfolio is expressed as the
$1\alpha $ quantile of the portfolio’s loss under a given confidence level
$\alpha $ (usually taking values in the range of
$0.01\le \alpha \le 0.05$). We assume there exist
n assets to be invested in the financial market, and its corresponding uncertain loss rates in a certain period, usually from Time 0 to the fixed time
T, are represented by a random variable
$\xi ={({\xi}_{1},{\xi}_{2},\cdots ,{\xi}_{n})}^{T}\in {\mathbb{R}}^{n}$. Let
$\mathit{x}={({x}_{1},{x}_{2},\cdots ,{x}_{n})}^{T}\in {\mathbb{R}}_{+}^{n}$ represent a possible portfolio on the
n assets. Then, the
$\alpha $ confidence level
$Va{R}_{\alpha}$ of the portfolio
$\mathit{x}$, denoted as
$Va{R}_{\alpha}\left({\mathit{x}}^{\mathit{T}}\xi \right)$, is the
$(1\alpha )$quantile of
${\mathit{x}}^{\mathit{T}}\xi $ and can be formally stated as:
where
${\mathbb{Q}}_{1\alpha}$ is the
$1\alpha $quantile of the portfolio’s loss distribution. We also use
$\mathbb{P}(\xb7)$ and
$\mathbb{E}(\xb7)$ to represent probability and expectation, respectively. Then, the expected portfolio return in the investment period
$[0,T]$ is given by
$\mathbb{E}({\mathit{x}}^{\mathit{T}}\xi )$.
The VaR minimization portfolio selection problem aims at searching for the best portfolio
$\mathit{x}={({x}_{1},{x}_{2},\cdots ,{x}_{n})}^{T}\in {\mathbb{R}}_{+}^{n}$ to minimize
$Va{R}_{\alpha}\left({\mathit{x}}^{\mathit{T}}\xi \right)$ whilst a given minimum expected return
${r}_{0}$ and the sum of each asset allocation percentage being equal to one are met, respectively. Correspondingly, the general formulation of the
$VaR$ minimization portfolio selection problem is as follows.
As mentioned before, Formulation (2) can be solved by two approaches called the parametric approach and the nonparametric approach. In this research, we adopt the nonparametric approach to solve Formulation (2) by using a finite
m number of samples
${\xi}_{1},{\xi}_{2},\cdots ,{\xi}_{m}$ to represent the random variable
$\xi $. Then, Formulation (2) can be rewritten as:
In Formulation (3), we utilize symbol
${\{{u}_{1},{u}_{2},\cdots ,{u}_{m}\}}^{k}$ as the
kth (
$1\le k\le m$) smallest element in the set
$\{{u}_{1},{u}_{2},\cdots ,{u}_{m}\}$, and it is configured to a free decision variable
z. Then, the variable
z exactly represents the
$Va{R}_{\alpha}\left({\mathit{x}}^{T}\xi \right)$, and the vector of average return denoted as
$\overline{\zeta}$ can be estimated as
$\overline{\zeta}=(1/m){\sum}_{i=1}^{m}{\xi}_{i}$. Furthermore, Formulation (3) is equivalent to an MILP formulation by adding
m auxiliary binary decision variables, and it can also be represented as:
where M is a big enough constant number. For the simplicity of description, Formulation (4) is abbreviated as VaRMILP.
Next, we present an important theorem of the VaR proposed by Pflug [
30] that will be used later in the paper.
Theorem 1. $Va{R}_{\alpha}\left(\xi \right)=Va{R}_{1\alpha}(\xi )$
Proof of Theorem 1. We define the Probability Density Function (PDF) of
$\xi $ as
${f}_{\xi}\left(x\right)$. Similarly, we also define the negative form of
$\xi $ as:
and the PDF of
${\xi}^{{}^{\prime}}$ as
${f}_{{\xi}^{{}^{\prime}}}\left(x\right)$. Then, we can obtain the following relationship of
${f}_{\xi}\left(x\right)$ and
${f}_{{\xi}^{{}^{\prime}}}\left(x\right)$, the
$\alpha $quantile property of
${\xi}^{{}^{\prime}}$, respectively.
Equation (
6b) can be extended to the following form by substituting
${f}_{{\xi}^{{}^{\prime}}}(x)$ for
${f}_{\xi}\left(x\right)$, that is:
Considering the
$\alpha $quantile property of
$\xi $ and formula (7), we can obtain the following relationship:
and then
$Va{R}_{\alpha}\left(\xi \right)=Va{R}_{1\alpha}(\xi )$ □
Theorem 1 will be useful in the next section when we develop an enhanced optimization model with symmetric consideration.
A New Enhanced MILP Formulation with Symmetric Consideration
In this section, we propose an enhanced MILP formulation for solving the VaR minimization portfolio selection problem. The newly developed formulation is rooted in Theorem 1, which indicates that the VaR value has two ways of evaluation. One of them is the original definition in VaR, and the other is based on the symmetrical property of VaR. The new enhanced MILP formulation is also motivated by the research of Sherali and Smith [
31], who suggested constructing a good MILP formulation with symmetrical considerations. A recent study by LallaRuiz and Voß [
32] also demonstrated that changes in mathematical formulations may largely influence the solvability and quality of the optimization results. They showed that the optimization solver exhibits notably different behavior if extra constraints or variables are used. In other words, formulating the same problem with different descriptions may bring an immense performance improvement during its execution. Klotz et al. also showed that carefully formulating the model and tuning standard integer programming algorithms often result in significantly faster solve times, in some cases, admitting a feasible or nearoptimal solution that could otherwise elude the practitioner [
33]. The implementation process of the new enhanced MILP formulation of the nonparametric portfolio selection problem can be described in detail as the VaR value can be calculated by in a symmetrical way, that is changing the original random variable to its negative form
${\mathit{x}}^{T}\xi $ and altering the confidence level to
$1\alpha $ correspondingly. As the VaR possesses the inherent symmetric information in the problem itself, implementing the VaRMILP formulation with the symmetric consideration may notably accelerate the optimizing process.
Since the MILP formulation is often resolved via the branchandcut or branchandbound method to obtain the optimal solution, appropriately imposing extra relevant decision variables and symmetric constraints will significantly reinforce the computational efficiency by exploring the fewer feasible regions and trial nodes. The enhanced VaRMILP with symmetric consideration is capable of generating dual solutions to the VaRMILP formulation with extra disaggregated constraints. Thus, we utilize the introduced symmetric decision variables and constraints to generate tighter representations to the VaRMILP formulation by which the overall optimizing performance is improved by reducing the bounding procedure in the search process even for some larger models.
Next, we describe the detailed idea of utilizing symmetric consideration to optimize VaRMILP. The VaRMILP formulation determines the optimal
$VaR$ value by firstly obtaining the intermediate loss set
$L=\{{\mathit{x}}^{T}{\xi}_{1},{\mathit{x}}^{T}{\xi}_{2},\cdots ,{\mathit{x}}^{T}{\xi}_{m}\}$ for all the scenarios and then locating the proper position value in
L; that is, adopting the first and second constraints in Formulation (4) to restrict variable
z as the VaR. Instead of applying only the original one way optimizing strategy in the VaRMILP formulation, we introduce another symmetric direction acceleration scheme: simultaneously performing optimization on the intermediate set
L and its corresponding opposite set
$\overline{L}=L=\{{\mathit{x}}^{T}{\xi}_{1},{\mathit{x}}^{T}{\xi}_{2},\cdots ,{\mathit{x}}^{T}{\xi}_{m}\}$, which contains the negative form of
L. The symmetric direction optimizing strategy can be considered as the complementary operation that is applied to the opposite intermediate set
$\overline{L}$. Although the two operations optimize their own intermediate set in their directions cooperatively, the intrinsic complementary features of the two sets
L and
$\overline{L}$ guarantee that the bidirection optimization process achieves the same optimum.
Based on the above approach that tries to optimize VaR in the symmetrical direction, we propose to integrate the bidirectional operations with dual complementary binary variables to accelerate the optimization process of the VaRMILP formulation. Below is the proposed enhanced MILP formulation with symmetric consideration to minimize VaR, denoted as VaRMILPSymmetric (Sym). In the
Appendix A, we will also prove the optimal portfolios of the new proposed enhanced formulation is the same as that resulting from the VaRMILP approach.
In the next section, we introduce our proposed PSO algorithm, denoted as VaRPSO, to solve the largescale VaR minimization problem.
3. Minimizing VaR by PSO
In this section, we provide a swarm intelligence algorithm called PSO to efficiently obtain the optimal portfolios measured by VaR. Note that the VaR minimization portfolio selection problem presented in Formulation (4) is highly none smooth, and traditional optimization methods cannot provide highquality feasible solutions quickly and effectively. Although Formulation (4) can be transformed into the VaRMILPSym formulation, tackling the practical problem of simulation number $m\ge 1500$ and stock number $n\ge 5$ will still take much calculation time. Meanwhile, the practical investment scenarios often require the investors to make an effective asset allocation strategy among a large number of assets. For example, the United States has three major securities exchange markets, namely NYSE, NASDAQ, and AMEX. Currently, a total number of 7679 companies conduct daily stock transactions in the three markets. Until 14 Sep, 2020, the number of listed companies in the Ashare market of China exceeded 4000. To select the optimal investment plan among so many assets, it will require huge computation costs utilizing traditional optimization methods.
PSO is a population based optimization method where a group of randomly generated solutions evolves in a behavioral framework drawn on the collective behavior of social animals, e.g., schools of fish or flocks of birds, to search for the optimal solution iteratively. The PSO conceives of a large group of particles, often in the form of
ndimensional realvalued vectors, moving into the solution space. Each particle
i is characterized by its position
${\mathit{x}}_{\mathit{i}}={({x}_{i1},{x}_{i2},\cdots ,{x}_{in})}^{T}$ and an
ndimensional velocity vector
${\mathit{v}}_{\mathit{i}}={({v}_{i1},{v}_{i2},\cdots ,{v}_{in})}^{T}$, which represents the change in position degree. In each updating iteration
t, each particle moves as follows:
where
$\omega $ is called the inertial weight, which controls the impact of the previous iteration’s particle velocity on the current one,
${r}_{1}$ and
${r}_{2}$ are two randomly generated variables within the range of (0, 1), and
${c}_{1}$ and
${c}_{2}$ are two positive constant parameters, called acceleration coefficients.
In Equation (
10), the best previously visited position of particle
i is denoted as
${\mathit{p}}_{\mathit{i}}={({p}_{i1},{p}_{i2},\cdots ,{p}_{in})}^{T}$, and the position of the best individual of the whole group is denoted as the global best position
${\mathit{p}}_{\mathit{g}}={({p}_{g1},{p}_{g2},\cdots ,{p}_{gn})}^{T}$. The fitness of each particle can be evaluated according to the objective function defined in the present optimization problem. Hence, the updated position of each particle depends on the direction of its movement, its velocity, the best preceding position, and the best position among the swarm. PSO uses Equation (
11) to calculate the new velocity according to its previous velocity and twopart distances that include the current position of each particle in reference to both its own best historical position and the best position of the entire swarm. Then, each particle flies toward a new position by Equation (
11). This process is repeated until a predefined stopping criterion is met.
Applying PSO to solve the portfolio optimization problem has been studied in the literature. Wang et al. proposed the VaR based fuzzyportfolio selection model and used the improved particle swarm optimization algorithm to search for the approximate optimal solutions [
34]. Zhu et al. adopted Particle Swarm Optimization (PSO) to solve the constrained portfolio optimization problem [
35]. Cura used the cardinality constrained meanvariance model, and the computation results showed that the particle swarm optimization approach is successful in portfolio optimization [
36]. Finding the optimal solutions to the nonparametric portfolio selection problem by the PSO algorithm requires focusing on the following issues.
For the VaR minimization problem, the natural representation of a PSO solution is to use real numbers to denote the investment proportions. In our implementation, each particle $i(1\le i\le population\phantom{\rule{4pt}{0ex}}size\left({p}_{s}\right))$ is represented by an ndimensional vector, where the number of dimensions corresponds to the total number of investment stocks in a portfolio. The kth component of particle ${\mathit{x}}_{\mathit{i}}$, i.e., ${x}_{ik}$, denotes the investment proportion of stock k.
To minimize
$VaR$, we first randomly generate the initial population with real numbers in the range
$[0,1]$. Since in Formulation (4), decision variables must satisfy the constraint that the sum is equal to one, a normalization step is applied to each randomly generated particle and can be stated as follows:
At the same time, to make the decision variables meet the request of minimum revenue, each particle is evaluated by a penalty function as follows:
where
M is a big positive constant number.
Based on the above particle representation, initialization, and evaluation procedures, the pseudocode of the VaRPSO algorithm for solving the optimal VaR portfolios problem described previously is given in Algorithm 1. The termination criterion is controlled by the maximum number of generations. Furthermore, the newly visited position of each particle needs to be normalized by Equation (
12). This guarantees that the search process is always performed in the potential area of satisfying the constraint that all decision variables are summed to one. In our computational experiments, we follow the
$gbest$ model of Shi et al. [
37].
Algorithm 1 Framework of VaRPSO. 
Input: The max number of generations (MaxGen), population size (${p}_{s}$), $\omega ,{c}_{1},{c}_{2}$ Output: Best portfolio solution ${p}_{g}$
 1:
Initialize the position ${x}_{i}$ and velocity ${v}_{i}$ for each particle i  2:
Normalize the position of particle i by Equation ( 12)  3:
Evaluate each particle i according to Equation ( 13)  4:
Record the personal best for each particle i (${p}_{i}:={x}_{i}$), and calculate ${p}_{g}$  5:
Set iteration count $t:=1$  6:
while$t<=MaxGen$do  7:
for all particle $i=1\to \mathit{ps}$ do  8:
Update the velocity of particle i by Equation ( 10)  9:
Update the position of particle i by Equation ( 11)  10:
Normalize the position of particle i by Equation ( 12)  11:
Evaluate each particle i according to Equation ( 13)  12:
if fitness(${x}_{i}$) < fitness(${p}_{i}$) then  13:
${p}_{i}:={x}_{i}$  14:
end if  15:
if fitness(${x}_{i}$) < fitness(${p}_{g}$) then  16:
${p}_{g}:={x}_{i}$  17:
end if  18:
end for $t:=t+1$  19:
end while

A Fast Feasible Solution Detection Scheme
In the above section, we adopted a simple penalty function method to establish the new particle evaluation function, hoping that the algorithm searches within the feasible domain. The new evaluation function contains two corresponding parts, one of which is the original VaR definition function, and the other is the penalty item added. The construction of the penalty item is based on the extent to which the current solution violates the constraint. The VaRPSO algorithm also introduces a normalization step, thus ensuring that the search process is only performed in the space that requires the sum of all decision variables being equal to one. As VaRPSO evolves in searching the optimal portfolios, infeasible solutions are granted much larger objective values while feasible solutions much smaller ones to propel all the particles flying to the feasible region quickly. The difficulty in solving the nonparametric portfolio selection problem by the PSO algorithm is dealing with the constraint that a feasible solution must satisfy the minimum expected revenue rate
${r}_{0}$, which is
${\mathit{x}}^{T}\overline{\zeta}\ge {r}_{0}$. However, solving the linear inequality constraint that satisfies the minimum reward margin with many decision variables by a simple penalty function method is rather inefficient. Especially in the initial searching procedure, the PSO is an aimless searcher since all particles fly blindly in the nonfeasible domains, resulting in very low search efficiency. Moreover, the size of the feasible domain space also depends on the parameter
${r}_{0}$. When investors tend to get a higher reward margin, it will inevitably lead to a further reduction of the feasible domain space. Under such an investment situation, how to quickly obtain a feasible portfolio solution will greatly affect the overall search efficiency of the PSO algorithm. In recent years, researchers have proposed to convert constrained optimization problems into multiobjective optimization problems to deal with some difficult constraints [
38,
39]. Using multiobjective optimization techniques to address constrained optimization problems generally transforms the original problem into a multiobjective optimization problem with two objectives. The first one is the original problem objective function, and the second one is the degree to which the solution violates the constraints. In this research, the two objectives are defined in the following form:
The essence of using the multiobjective optimization method to deal with the constrained optimization problem is that it uses the original objective function value and the degree of violation to the constraint to compare some of the obtained solutions, with the hope to guide the algorithm to quickly move to the feasible domain consisting of the optimal solution. Since the two target values exist in the PSO algorithm, the traditional mechanism for evaluating individuals with a single objective value is no longer applicable.
This paper uses a tournament selection operator proposed by Deb [
40] to compare solutions, that is:
When comparing two particles with one feasible and the other infeasible, choose the feasible solution.
When the two compared particles are both feasible solutions, select the particle with a smaller ${f}_{1}$ objective function value.
When both particles are infeasible, choose the particle with the least degree of constraint violation, which is the particle with a smaller ${f}_{2}$ objective function value.
The procedure of Deb’s tournament selection strategy in our research is outlined in Algorithm 2.
Algorithm 2 Deb’s tournament selection strategy. 
 Input:
solution ${x}_{1},{x}_{2}$  Output:
the selected solution  1:
if${x}_{1}$ is Feasible then  2:
if ${x}_{2}$ is Feasible then  3:
if ${f}_{1}\left({x}_{1}\right)<{f}_{1}\left({x}_{2}\right)$ then  4:
${x}_{2}:={x}_{1}$  5:
end if  6:
else  7:
${x}_{2}:={x}_{1}$  8:
end if  9:
else  10:
if ${x}_{2}$ is Not Feasible then  11:
${x}_{2}:=argmin\{{f}_{2}\left({x}_{1}\right),{f}_{2}\left({x}_{1}\right)\}$  12:
end if  13:
end if

Although the selection strategy proposed by Deb is suitable for the PSO algorithm performing multiobjective searches whilst guiding the search direction towards the feasible domain, too few Pareto solutions in the current swarm will ultimately degrade its searching performance. Besides, the main drawback of the above comparison criteria lies in that it is difficult to play the role of infeasible solutions, especially when the infeasible solution is very close to the boundary of the feasible domain. Hence, we propose a fast feasible solution detection scheme that is based on the assumption that the centroid of some infeasible solutions with nearoptimal VaR evaluation values around the feasible domain boundary will be located in the feasible domain with a high probability. To ensure that a sufficient number of detected solutions are generated in the potential feasible domain, the mechanism by which we generate the centroid solutions will be constructed by enumerating all possible combinations of different solutions in the Pareto solution set. Specifically, we can generate the required number of central solutions based on two solutions, three solutions, and even more solutions in the Pareto set. See
Figure 1 below for an explanation.
Suppose the nondominated infeasible solutions are located near the feasible space boundary represented by ${x}_{1},{x}_{2},\cdots ,{x}_{7},{x}_{8}$, respectively. We define ${x}_{{c}_{1}},{x}_{{c}_{2}},\cdots ,{x}_{{c}_{5}},{x}_{{c}_{6}}$ as the polyhedral centroids consisting of points $\{{x}_{1},{x}_{2},{x}_{3}\}$, $\{{x}_{1},{x}_{4}\}$,$\{{x}_{3},{x}_{4},{x}_{5}\}$,$\{{x}_{5},{x}_{6},{x}_{7}\}$,$\{{x}_{6},{x}_{8}\}$ and $\{{x}_{6},{x}_{7},{x}_{8}\}$ as vertices, correspondingly. We define the Pareto set as P and the generated detected solution set as $PF$. If the number of solutions in the $PF$ set is still insufficient due to too few nondominated solutions in the Pareto set, we will add some randomly generated solutions to the $PF$ set. Note that the maximum number of solutions generated by our proposed fast feasible solution detection scheme is ${2}^{p}p1$ if the present Pareto set has p solutions. As the number of elements in the Pareto solution set exceeds 10, the number of generated detected solutions will exceed 1000. In that case, we modify the detection method by randomly selecting partial solutions in the Pareto solution set P and calculate their corresponding centers. The whole procedure of our proposed fast feasible solution detection scheme is outlined in Algorithm 3.
We take advantage of the fast feasible solution detection scheme together with the VaRPSO algorithm to efficiently explore feasible nearoptimality portfolios. To strengthen the exploration ability of the algorithm, especially in the later stage of the search, once the solutions found in the population are all feasible, we will reinitialize the entire swarm. We name the VaRPSO algorithm integrated with an FFSD scheme as VaRPSOFFSD, and it is presented in Algorithm 4.
Algorithm 3 The fast feasible solution detection scheme. 
 Input:
Pareto set $P=\left\{{x}_{1},{x}_{2},\cdots ,{x}_{p}\right\}$  Output:
Potential feasible solution set $PF=\left\{{x}_{1}^{{}^{\prime}},{x}_{2}^{{}^{\prime}},\cdots ,{x}_{{p}_{s}}^{{}^{\prime}}\right\}$  1:
Set individual count $t:=0$  2:
if${p}_{s}<{2}^{p}p1$then  3:
while $t<{p}_{s}$ do  4:
Generate ${s}_{g}\sim Uniform(2,p)$  5:
Select different ${s}_{g}$ solutions from set P, e.g., ${x}_{\left[1\right]},\cdots ,{x}_{\left[{s}_{g}\right]}\in \left\{{x}_{1},{x}_{2},\cdots ,{x}_{p}\right\}$  6:
${x}_{t}^{{}^{\prime}}$ := centroid(${x}_{\left[1\right]},\cdots ,{x}_{\left[{s}_{g}\right]}$)  7:
$t:=t+1$  8:
end while  9:
else  10:
for all ${s}_{g}=2\to $ p do  11:
Select all combinations of different ${s}_{g}$ solutions from set P, e.g., ${x}_{\left[1\right]},\cdots ,{x}_{\left[{s}_{g}\right]}$ ${x}_{t}^{{}^{\prime}}$ := centroid(${x}_{\left[1\right]},\cdots ,{x}_{\left[{s}_{g}\right]}$) $t:=t+1$  12:
end For  13:
Add ${p}_{s}t$ randomly generated solutions in the $PF$ set  14:
end if

Algorithm 4 Framework of VaRPSOFFSD. 
 Input:
Initialize parameters: the max number of generations MaxGen, population size ${p}_{s}$, $\omega ,{c}_{1},{c}_{2}$  Output:
Best portfolio solution ${p}_{g}$  1:
Initialize the position ${x}_{i}$ and velocity ${v}_{i}$ for each particle i  2:
Normalize the position of particle i by Equation ( 12)  3:
Evaluate the value of each particle i in two objectives by Equation ( 13)  4:
Find the Pareto set of the initialized swarm, and apply the fast feasible detection scheme to generate ${p}_{s}$ candidate solutions  5:
Record the personal best for each particle i (${p}_{i}:={x}_{i}$)  6:
if$PF$ set contains ${n}_{f}({n}_{f}\ge 1)$ feasible solutions then  7:
${p}_{g}:=argmi{n}_{1\le i\le {n}_{f}}{f}_{1}\left({x}_{\left[i\right]}^{{}^{\prime}}\right)$  8:
else  9:
${p}_{g}:=argmi{n}_{1\le i\le {p}_{n}}{f}_{2}\left({x}_{i}^{{}^{\prime}}\right)$  10:
end if  11:
Set iteration count $t:=1$  12:
while$t<=MaxGen$do  13:
for all particle $i=1\to $${p}_{n}$ do  14:
Update the velocity of particle i by Equation ( 10)  15:
Update the position of particle i, ${x}_{i}^{{}^{\prime}}$ by Equation ( 11) to obtain ${x}_{i}^{{}^{\prime \prime}}$ 16:
Normalize the position of particle i by Equation ( 12)  17:
Evaluate the value of each particle i in two objectives by Equation ( 13)  18:
Apply Deb’s tournament selection strategy of solution ${x}_{i}^{{}^{\prime \prime}}$ and ${p}_{i}$  19:
Apply Deb’s tournament selection strategy of solution ${x}_{i}^{{}^{\prime \prime}}$ and ${p}_{g}$  20:
end For  21:
Find the Pareto set of the current swarm, and apply the FFSD scheme to generate ${p}_{n}$ candidate solutions  22:
if $\leftP\right=0$ then  23:
Record the best found portfolio solution ${p}_{g}$  24:
Reinitialize the whole swarm  25:
Normalize the position of particle i by Equation ( 12)  26:
Evaluate the value of each particle i in two objectives by Equation ( 13)  27:
Find the Pareto set of the initialized swarm, and apply the FFSD scheme to generate ${p}_{n}$ candidate solutions  28:
Record the personal best for each particle i (${p}_{i}:={x}_{i}$)  29:
end if $t:=t+1$  30:
end while

4. Computation Experiment
In this section, we compare the performance differences of the two MILP formulations and PSO algorithms for solving the nonparametric portfolio selection problem. To be specific, we first present the numerical results to compare the performance of the fundamental MILP formulation and the modified MILP formulation. Subsequently, we carry out the comparison tests by using the PSO algorithm and the PSO algorithm with an FFSD scheme for addressing even larger computational instances with simulation number m, and stock number n is up to 3000 and 100, respectively.
Due to the NPhard characteristic of the MILP model and limited computation resources, we restrict the size of the problem to a certain extent to obtain the optimal solution in an acceptable time. In these cases, we generate 14 typical simulated computation instances that include different stock combination numbers and simulation numbers. In
Figure 2, we show the distribution of Instance 6 and Instance 13 together with the skewness and kurtosis values. The implementation of the VaRMILP and VaRMILPSym formulations was coded in the C# language, which calls the optimization engine of IBM ILOG CPLEX with Version 12.9 to obtain the optimal VaR values. All the computational experiments were carried out on a PC with an Intel Corei7 8700 CPU and 16Gb RAM running on Windows 10.
4.1. Performance Comparison of the Two MILP Formulations
We adopt the CPU times and explored nodes as the evaluation metrics to validate the performance differences of the two versions of the proposed MILP formulations to obtain the optimal portfolios. In the case of each testing instance, the obtained optimal VaR value, CPU times, and explored nodes using different formulation types are listed in
Table 1 considering the normal confidence level
$\alpha =0.05$.
From the results shown in
Table 1, it can generally be observed that all the formulations converge to the same global optimal VaR value. This verifies the accuracy of the proposed MILP formulation with the symmetric consideration acceleration strategy. It can be observed that under the
$\alpha =0.05$ confidence level, the optimum value of all instances can be obtained within around 20 to 2560 s concerning different parameter
$m,n$. In tackling Instance 12, the computation times by using two formulations all exceed 1100 s. However, for solving Instance 11, even the simulation numbers
m and
n reach 1500 and 4, respectively, and the maximum execution time is 265.11s for the basic VaRMILP. We also observe that the stock combination number
n is also the key parameter that determines the optimization efficiency of the MILP formulation. For optimizing Instances 6 and 7, although the instance parameter
m is identical, the computation time is quite different. It seems that the simulated dataset information also affects the computation efficiency of the MILP formulations. In general, the optimization times of the two formulations have significant differences: VaRMILPSym exhibits a superior performance to the basic VaRMILP approach. The average speedup ratio of formulation VaRMILPSym compared with VaRMILP for solving instance
$1\sim 14$ under
$\alpha =0.05$ is
$580.04/\mathrm{365.706.58}=1.58$. An interesting phenomenon is that although the optimization time of the VaRMILPSym model is less than VaRMILP, there is no regular rule in the number of nodes explored by the two formulations; that is to say, in some cases, the number of nodes that need to be explored to find the optimal solution using the VaRMILPSym model is less than using the model VaRMILP, while other examples are just the opposite.
Note that in some cases, VaRMILP performs rather poorly because of the large number of nodes that must be explored and eliminated by the branchandbound process. Comparing the explored nodes of the related instances, VaRMILPSym performs most efficiently in cutting no promising branches since it adds a set of constraints to the basic model with extra complementary binary variables and constraints, which tends to encourage finding a highquality solution during the enumeration process. Furthermore, the VaRMILPSym formulation shows the promising ability of further exploration. On the other hand, VaRMILP does not perform as well as VaRMILPSym, perhaps because the symmetric consideration scheme integrated into the VaRMILPSym formulation enables CPLEX to find a relatively better upper bound at the root node. Generally speaking, in all tests, VaRMILPSym appears to be the most efficient formulation, offering substantial time savings in performing the computation.
For resolving practical applications, investment institutions often select portfolios on a large set of stock combinations. From the above computation tests, we find that obtaining the optimal solution of the VaR minimization based nonparametric portfolio selection problem is rather time consuming when the larger stock combination number n reaches five. For example, solving Instance 12 under $\alpha =0.5$, we need 1160.58 s to reach the optimum by the most efficient formulation. This situation indicates that obtaining the optimized solution by utilizing the MILP formulation is inappropriate in realworld applications. In the next section, we provide a nearoptimal solution generation method by the PSO algorithms. Next, we will compare the computation results of tackling some larger problems with simulation number $m\in \{1000,2000,3000\}$ and stock number $n\in \{30,50,70,90,100\}$.
4.2. Performance Comparison of the Proposed PSO Algorithms
In this section, we present the numerical results of comparing the performances of the two PSO based algorithms to efficiently obtain highquality portfolios. The proposed VaRPSO and VaRPSOFFSD algorithms were also coded in the C# programming language and run on the same platform as described in the previous section for solving the MILP formulations. To investigate the performances of the two PSO algorithms, we carried out the experiments by generating daily return prices for up to 100 stocks with different skewness and kurtosis patterns. From these data, each computation instance was formed by having the number of stocks
$n\in \{30,50,70,90,100\}$ and number of scenarios
$m\in \{1000,2000,3000\}$. Since investors also consider the minimum rate of return in the actual investment process, we increased the regular
${r}_{0}$ value to 90% of the maximum in the set
$\{{\overline{\zeta}}_{1},{\overline{\zeta}}_{2},\cdots ,{\overline{\zeta}}_{n}\}$, that is
${r}_{0}=0.9\ast \underset{1\le k\le N}{Max}{\overline{\zeta}}_{k}$. Thus, we generated a total number of
$5\times 3=15$ largescale computation instances. For all the experiments, the parameter
$\omega $ in VaRPSO and VaRPSOFFSD was set according to Shi and Eberhart [
37], who recommended a linearly decreasing form from 0.9 to 0.4. The population size and max number of iterations of two PSO algorithms were set to
${p}_{s}=2\ast n$ and
$MaxGen=50\ast n$, respectively. The acceleration constants
${c}_{1}$ and
${c}_{2}$ were both set to 2.0. We used the average VaR values and execution times of the PSO algorithm randomly running 10 times as its performance index. We used
$Va{R}_{1}$ and
$Va{R}_{2}$ to represent the optimized VaR values obtained by using the two PSO algorithms, respectively. In addition to the VaR value, we also recorded the running time of each algorithm. The VaR confidence parameter was set to the popular value of
$\alpha =0.05$. All the computation results are listed in
Table 2.
From
Table 2, some conclusions can be drawn. In all instances, the VaRPSO algorithm takes the shortest time to solve the portfolio selection problem, and all of the average VaR values obtained by VaRPSO are inferior to the VaRPSOFFSD algorithm. In all the computational instances, the average time spent in VaRPSOFFSD is 476.016/308.501 ≈1.319 times that of the VaRPSO. VaRPSOFFSD takes more time than VaRPSO mainly due to the introduction of the FFSD scheme and the inclusion of the process of finding the Pareto set in VaRPSOFFSD. In solving the instances with the fixed stock number, the time spent by the two PSO algorithms increases significantly with the increase of the simulation number. This observation is similar to the computational results obtained by adopting the VaRMILP formulations. Furthermore, when the number of simulation
m is fixed, increasing the number of stocks
n will also increase the optimization time of the two PSO algorithms. During the tests, we also discovered that when the expected yield
${r}_{0}$ was set to
${\sum}_{k=1}^{n}{\overline{\zeta}}_{k}/n$, all PSO algorithms can find a feasible solution at the end of the iteration. This also indicates that it is not difficult to find a feasible investment solution when the
${r}_{0}$ value in the proposed portfolio optimization model is set relatively small. It needs to be pointed out that the VaRPSO algorithm may not find a feasible solution at the beginning of the iteration in solving the instances of large stock number
n, e.g.,
$n=90$. However, as the iteration continues, the VaRPSO algorithm will soon discover the feasible regions.
However, when the ${r}_{0}$ value is increased to $0.9\ast \underset{1\le k\le N}{Max}{\overline{\zeta}}_{k}$, the quality of the solution obtained by the VaRPSO algorithm changes dramatically. Especially when the stock number n is greater than 200 and the simulation number m increases to 3000, the VaRPSO algorithm does not guarantee that a feasible solution can be found at the end of the iteration in each random trial. In addressing such computational instances, even increasing the number of iterations of the VaRPSO algorithm does not help it quickly find a feasible investment solution. However, the VaRPSOFFSD algorithm is capable of finding multiple feasible solutions after a few iterations. In this research, to compare the average searching performance of the two PSO algorithms, we set the maximum n to 100. In general, compared with the results obtained by the VaRPSO algorithm, the average VaR value is reduced by 6.9% when using the VaRPSOFFSD algorithm. The computational results demonstrate that the adoption of an FFSD scheme in the PSO algorithm provides a better balance between the solution quality and computation time. Therefore, the VaRPSOFFSD algorithm is a better solution approach to solve large nonparametric portfolio selection problems.