1 Introduction

Investing is the process of purchasing an asset in the expectation of a future gain—specifically, the expectation that price of the asset increases and can then be sold for a profit. The degree of uncertainty regarding the value of an investment increasing is referred to as risk. It is common for investors to have a stake in multiple assets to hedge their investments. Risk can be mitigated through the strategic diversification of a portfolio through the selection of uncorrelated assets (Graham 2009; Gorgulho et al. 2012). The premise of the strategy is that the riskiness of an asset imposed on the portfolio can be negated by selecting an unrelated safe asset. For example, if one asset experiences losses, the gains of another will compensate. As the range of assets within a portfolio widens, so does the effectiveness of diversification. Investors are, thus, continuously tasked with making investment decisions that maximize the profitability of their portfolio while simultaneously minimizing its risk exposure.

Portfolio models are often used to guide the investment process. For example, Markowitz’s mean-variance model, which can be described as a two-objective nonlinear quadratic programming problem, represents an optimal trade-off between return and risk (Markowitz 1952; Stuart and Markowitz 1959). Markowitz has since inspired many variants of his model, as well as different models. Many of these models were proposed in an attempt to address some of the critiques of Markowitz’s original model, for example, a lack of real-world constraints. However, when constraints are introduced, such as limiting the number of assets held in the portfolio or restricting the contribution of each asset in the portfolio, the model becomes a mixed-integer nonlinear quadratic programming problem for which computationally effective algorithms do not exist (Chang et al. 2000). Furthermore, as the number of assets considered increases, so does the complexity of determining which combination of assets yields an optimal trade-off between return and risk.

Meta-heuristic approaches, like evolutionary and swarm intelligence algorithms, have been used to efficiently optimize complex portfolio optimization problems. This paper provides an extensive review of such approaches by examining the types of algorithms and the various portfolio optimization problems which they have been applied to. The review consists of over 140 papers, which are discussed and categorized. The publications are categorized according to the type of portfolio optimization problem solved, i.e., unconstrained and constrained. The publications are then categorized by single and multi-objective approaches. Lastly, the publication are further categorized by the types of algorithms proposed. The publications discussed span over decades, from 1993 to 2023, and make use of various portfolio models. After a brief description of each paper has been given, meta-characteristics of the publications are then discussed. For example, commonly considered constraints, objectives, portfolio models, benchmarks, and performance measures are also given.

It is shown that there is a large body of good and interesting work on evolutionary and swarm intelligence algorithms for portfolio optimization. The work, which spans decades, has mostly focused on single-objective constrained portfolio optimization. The most popular algorithms of choice are genetic algorithm (GAs) and particle swarm optimization (PSO). Other evolutionary and swarm intelligence algorithms have also been studied but to a lesser degree. Based on the findings of the paper, a guide for future research in portfolio optimization with meta-heuristics is outlined.

The rest of this paper is organized as follows: Section 2 provides an overview of the portfolio optimization. Evolutionary and swarm intelligence algorithms are explained in Sect. 3. Sections 4 and 5 discuss the reviewed literature focusing on unconstrained and constrained portfolio optimization, respectively. An analysis of the reviewed literature is given in Sect. 6. Section 7 concludes the paper.

2 Portfolio optimization

This section presents the necessary background on portfolio optimization for the work presented in this paper. Section 2.1 briefly explains optimization theory. The popular mean-variance portfolio model is discussed in Sect. 2.2. Common portfolio optimization constraints are listed in Sect. 2.3. Section 2.4 describes commonly used objectives in portfolio optimization, and Sect. 2.5 describes alternative portfolio models to the mean-variance portfolio model.

2.1 Optimization theory

The goal of an optimization algorithm is to find a solution to an optimization problem, such that a given quantity is optimized, possibly subject to a set of constraints (Engelbrecht 2007). Portfolio optimization is such a problem. In order to better understand portfolio optimization, single- and multi-objective optimization are briefly discussed.

2.1.1 Single-objective optimization

Formally, a single-objective optimization problem, f, assuming minimization, is defined as:

$$\begin{aligned} \begin{array}{rl} \text{ minimize } &{} \quad f(\varvec{x}), \ \varvec{x} = (x_1, x_2, \ldots , x_n) \\ \text{ subject } \text{ to } &{} \quad g_m(\varvec{x}) \le 0, m = 1, \ldots , n_g \\ &{}h_(\varvec{x}) = 0, m = n_g + 1, \ldots , n_g + n_h \\ &{}\varvec{x} \in \Omega \end{array} \end{aligned}$$
(1)

where \(\varvec{x}\) is a n-dimensional decision variable vector within search space \(\Omega \), and \(n_g\) and \(n_h\) are the number of inequality and equality constraints, respectively (Engelbrecht 2007; Coello Coello et al. 2007). Solutions are constrained to the bounds of \(\Omega \). The total number of constraints considered is referred to as \(n_c\).

2.1.2 Multi-objective optimization

A multi-objective optimization problem is the simultaneous optimization of two or three conflicting objectives (Metaxiotis and Liagkouras 2012; Engelbrecht 2007; Coello Coello et al. 2007). Problems that consist of four or more objectives are commonly referred to as many-objective optimization problems (Ishibuchi et al. 2008). Assuming minimization, multi-objective and many-objective optimization problems are defined as:

$$\begin{aligned} \begin{array}{rl} \text{ minimize } &{} \quad \varvec{f}(\varvec{x}) = (f_1(\varvec{x}), f_2(\varvec{x}), \ldots ,f_k(\varvec{x})) \\ \text{ subject } \text{ to } &{} \quad g_m(\varvec{x}) \le 0, m = 1, \ldots , n_g \\ &{} h_(\varvec{x}) = 0, m = n_g + 1, \ldots , n_g + n_h \\ &{} \varvec{x} \in \Omega \end{array} \end{aligned}$$
(2)

where k is the number of objectives.

Solutions to multi-objective problems are represented as a set of optimal trade-offs (Coello Coello et al. 2007; Engelbrecht 2007). Non-dominated solutions are objective vectors that are not dominated by any other feasible solution found. The set of non-dominated feasible solutions found is referred to as the Pareto-optimal front (POF). The true POF is the set of all feasible non-dominated solutions that exist within \(\Omega \). The goal of a multi-objective algorithm is to obtain a diverse spread of non-dominated solutions as close to the true POF as possible (Engelbrecht 2007).

2.2 Mean-variance portfolio model

In 1952, Markowitz, one of the founders of modern portfolio theory, presented a portfolio optimization model, known as the mean-variance model, in an effort to construct portfolios in such a way that the total profit of the portfolio is maximized subject to an acceptable level of risk (Markowitz 1952; Stuart and Markowitz 1959). Markowitz’s model would go on to earn him a Nobel Prize in Economic Sciences. Mean-variance is used to determine a portfolio that represents an optimal trade-off between the risk and returns. The quadratic programming model is formulated as follows:

$$\begin{aligned} \text{ minimize } \ \quad \lambda \bar{\sigma } - (1 - \lambda ) R \end{aligned}$$
(3)

where \(\bar{\sigma }\) is the total risk of the portfolio, R is the total return of the portfolio, and \(\lambda \) represents an investor’s risk tolerance in the range [0, 1]. Return is maximized when \(\lambda \) is set to 0.0. Conversely, when \(\lambda \) is to 1.0, risk is minimized. An explicit trade-off between risk and return is represented by a \(\lambda \) value less than 0.0 and greater than 1.0. Solving equation (3) for a range of \(\lambda \) values yields a set of portfolios with different return and risk charateristics. Risk is calculated using

$$\begin{aligned} \bar{\sigma } = \sum _{i=1}^{n}\sum _{j=1}^{n} w_i w_j \sigma _{ij} \end{aligned}$$
(4)

where n is the number of assets, \(w_i\) and \(w_j\) is a weighting of assets i and j, respectively, and \(\sigma _{ij}\) is the covariance between assets i and j. R is calculated using

$$\begin{aligned} R = \sum _{i=1}^{n} R_i w_i \end{aligned}$$
(5)

where \(R_i\) is the return of asset i. Equation (3) requires that the total budget of the portfolio is distributed according to each asset. This constraint, referred to as the budget constraint, is expressed as:

$$\begin{aligned} \sum _{i=1}^{n} w_i = 1 \end{aligned}$$
(6)

Furthermore, the weight of each asset must be nonnegative, i.e.,

$$\begin{aligned} w_i \ge 0 \end{aligned}$$
(7)

2.3 Constraints

The traditional mean-variance model does not take into account many of the constraints that portfolio managers must adhere to. As a result, many constrained adaptations have been proposed. These constraints significantly increase the complexity of portfolio management. The most commonly considered constraints for portfolio optimization are discussed below.

Cardinality restrains a portfolio by limiting the total number of assets included. The cardinality constraint is given as

$$\begin{aligned} \sum _{i=1}^{n} z_i = K \end{aligned}$$
(8)

where \(z_i\) is equal to 1 if asset i is included in the portfolio, and K represents the desired number of assets to be included (Chang et al. 2000). Alternatively, the constraint can be represented as an inequality, i.e.,

$$\begin{aligned} K_{\textrm{min}} \le \sum _{i=1}^{n} z_i \le K_{\textrm{max}} \end{aligned}$$
(9)

where \(K_{\textrm{min}}\) and \(K_{\textrm{max}}\) represent the minimum and maximum number of assets, respectively (Skolpadungket et al. 2007; Chiam et al. 2007; Deb et al. 2011; Liagkouras 2018; Chiam et al. 2008; Mishra et al. 2014).

Floor and ceiling, also known as the boundary constraints, represent the upper and lower bounds on the asset weights, respectively. This guarantees that an asset does not become too risky by over-representation or insignificant, by under-representation. The floor and ceiling constraints are defined as:

$$\begin{aligned} 0 \le \varepsilon \le w_i \le \delta \le 1 \end{aligned}$$
(10)

where \(\varepsilon \) and \(\delta \) are the upper and lower bounds, respectively (Chang et al. 2000). When floor, ceiling and cardinality constraints are imposed on equation (3), it is referred to as cardinality-constrained portfolio optimization (Chang et al. 2000).

The minimum turnover constraint, which ensures that a portfolio must meet a given level of profitability, is enforced as:

$$\begin{aligned} \sum _{i=1}^{n} w_i R_i \ge R^* \end{aligned}$$
(11)

where \(R^*\) is the minimum turnover (Chang et al. 2009; Soleimani et al. 2009; Woodside-Oriakhi et al. 2011; Salahi et al. 2014).

Liquidity represents how easily an asset can be converted into other types of equity, such as cash. The total liquidity of a portfolio can be constrained to meet a minimum liquidity threshold. The liquidity constraint is defined as:

$$\begin{aligned} \sum _{i=1}^{n} w_ie_i \ge e^* \end{aligned}$$
(12)

where \(e^*\) is the minimum amount of liquidity and \(e_i\) is the liquidity of asset i (Niu et al. 2012; Farzi et al. 2013).

Transaction lots refer to the number of units of an asset that can be traded at a time. The number of units held of an asset must be a multiple of the specified transaction lot. Thus, the contribution weight of an asset is determined by the number of lots for an asset held in proportion the total number of lots held. Formally, the constraint is defined as:

$$\begin{aligned} w_i = \frac{l_iq_i}{\sum _{j=1}^{n} l_jq_j} \end{aligned}$$
(13)

where l and q are the transaction lot and quantity of lots held, respectively, for assets i and j (Soleimani et al. 2009; Guo et al. 2016; Golmakani and Fazel 2011).

Transaction costs are paid to an entity, such as an exchange, when buying or selling an asset. Transaction costs typically occur when rebalancing a portfolio. Transaction costs are imposed as:

$$\begin{aligned} \sum _{i=1}^{n} w_ic_i \le B \end{aligned}$$
(14)

where \(c_i\) is the cost of asset i and B is the budget (Soleimani et al. 2009; Guo et al. 2016; Ruiz-Torrubiano and Suarez 2015; ChiangLin 2006; Chen et al. 2006; Chen and Zhang 2010).

Capitalization refers to the total market value of a company’s outstanding shares. Thus, sector capitalization is the capitalization of a sector, where a sector represents a part of the economy containing assets, which offer similar goods or services. The sector capitalization constraint ensures that if an asset or assets representing a sector is included, then that sector should occupy a portion of the portfolio larger than a sector with a lower capitalization ranking. Formally, the constraint is defined as:

$$\begin{aligned} \sum _{i=1}^{n_{s'}}{w_{s',i}} < \sum _{i=1}^{n_s}{w_{s,i}} \end{aligned}$$
(15)

where \(n_{s'}\) and \(n_s\) are the number of assets in sectors \(s'\) and s, respectively, and \(w_{s',i}\) and \(w_{s,i}\) are the asset weights of sectors \(s'\) and s, respectively. Soleimani et al. (2009), Golmakani and Fazel (2011).

2.4 Objectives

Many extensions to the mean-variance model have been proposed since its initial outline. Often these extensions include constraints, but also objectives. For example, maximizing the diversity of the types of assets included in the portfolio. Furthermore, the previously mentioned constraints can be reformulated as objectives, such as minimizing cardinality (Anagnostopoulos and Mamanis 2010) and maximizing liquidity (Zhou and Li 2014). Portfolio optimization can also be viewed as a multi-objective optimization problem. Quite simply, equation (3) can be reformulated where \(\bar{\sigma }\) and R are opposing objectives to be minimized and maximized, respectively. Thus, a set of non-dominated solutions can be obtained as opposed to optimizing for a given \(\lambda \) value.

2.5 Alternative models

Despite the success of the mean-variance model, it is not without its flaws. It has been criticized as being unrealistic, often leading to unsatisfactory predictions of investor behavior (Stuart and Markowitz 1959), particularly in cases where the distribution of returns is asymmetric (Ge 2014; Stuart and Markowitz 1959). This has led to the formulation of alternative portfolio optimization models. Often these alternative models make use of different definitions of \(\bar{\sigma }\) and R or completely different objectives. One such approach by Markowitz is to use semi-variance, which measures the downside part of the return distribution as risk (Stuart and Markowitz 1959). Semi-variance has been regarded as a more appropriate \(\bar{\sigma }\) measure than covariance, in the sense that it reflects an investor’s intuition about risk. Using semi-variance, \(\bar{\sigma }\) is redefined as

$$\begin{aligned} \bar{\sigma } = \frac{1}{n}\sum _{i=1, R_i < C}^{n}(R_i - C)^2 \end{aligned}$$
(16)

where C is a benchmark, i.e., the average return over a period of time. However, deciding which benchmark to use is a common problem as different benchmarks could lead to different outcomes in results. R is then formulated as

$$\begin{aligned} R = \sum _{t=1}^{T}\sum _{i=1}^{n} w_i \frac{R_i}{T} \end{aligned}$$
(17)

where T is the time period considered. Following equation (3), these definitions are used to create the mean-semi-variance model. Other portfolio optimization models include, but is not limited to, value-at-risk (VaR) (Liagkouras 2018; Meghwani and Thakur 2018), conditional value-at-risk (CVaR) (Liagkouras 2018; Meghwani and Thakur 2018), prospect theory (Liu et al. 2015; Nematollahi and Manzi 2018), Sharpe ratio (Aranha and Iba 2009; Zhu et al. 2011), and mean absolute deviation (MAD) (Chang et al. 2009).

3 Evolutionary and swarm intelligence algorithms

Evolutionary and swarm intelligence algorithms are stochastic population-based search algorithms inspired by naturally occurring phenomena. Many adaptations of such algorithms have been applied to single- and multi-objective portfolio optimization. The original algorithms, which inspired these adaptations, are presented below to convey a general understanding of the ideas expressed by each algorithm. Section 3.1 discusses evolutionary algorithms (EAs), and Sect. 3.2 discusses swarm intelligence (SI).

3.1 Evolutionary algorithms

Biological evolution is the optimization of an organism’s ability to survive in dynamically changing and competitive environments (Engelbrecht 2007). EAs are inspired by this process and mimic its characteristics in order to seek global optima for computational optimization problems. The survival strength of individuals within a population is determined by the objective function to be optimized. Individuals are then selected based on their survival strength for reproduction, which produces offspring for the next generation of individuals. The following algorithms belong to the EA paradigm:

Differential evolution (DE) is an EA that uses distance and direction information from the current population to guide the search process (Storn and Price 1997).

Genetic algorithms (GAs) are inspired by Darwin’s theory of natural selection (Engelbrecht 2007; John 1992). GAs simulate genetic evolution by representing individuals as collections of genotypes, where each genotype corresponds to a characteristic of the objective function.

3.2 Swarm intelligence

SI is defined as the cooperation of individuals within a group to solve an objective by exchanging locally available information (Engelbrecht 2007). The following algorithms are SI-based algorithms: The following are also SI-based algorithms:

Ant colony optimization (ACO) refers to a collection of SI algorithms that model the foraging behavior of ants (Dorigo and Di Caro 1999). Ants communicate indirectly with each other by releasing pheromones that slowly evaporate. Over time, all ants follow the trail/path with highest pheromone concentration.

Artificial bee colony (ABC) is an optimization algorithm based on the foraging behavior of honey bees (Karaboga 2005). The colony is guided towards global optima based on the quantity of nectar found at various food sources located throughout the search space. Three types of artificial bees are used to perform the search process, each type having a particular role. Employed bees exploit the aforementioned food sources and share this information with the colony via a waggle dance. Onlooker bees watch this waggle dance and adjust their direction according to the quality of nectar. When all known food sources have been adequately exploited, scout bees search for new sources of nectar.

Bacterial forging algorithm (BFA) mimics the foraging behavior of Escherichia coli (E. coli) by implementing chemotaxis, reproduction, swarming and elimination-dispersal processes to search for optima (Liu and Passino 2002). Escherichia coli are cooperative-foraging bacteria present in human intestines that form highly structured colonies around nutrient-rich environments. Furthermore, E. coli abandon nutrient-poor regions and actively avoid harm.

Bat algorithm (BA) mimics the foraging behavior of bats, which use echolocation for avoidance of obstacles and detection of potential prey (Xin-She 2010).

Beetle antennae search (BAS) is a computationally low meta-heuristic based on the search behavior of long horn beetles (Jiang and Li 2017). The algorithm models a single beetle moving through a search space. The beetle uses its two antennae to guide the search process by moving in the direction of the antennae that senses a stronger scent (better objective function value).

Cat swarm optimization (CSO) models the hunting behavior of felines to find optimal solutions (Chu and Tsai 2007). During the search, cats switch between two modes, seeking and tracing. Cats in seeking mode rest while analyzing their environment for the next best move. Tracing cats move in the direction of their velocity and are influenced by the position of their leader.

Chemical reaction optimization (CRO) models the phenomenon in which products produced by the microscopic process of molecules undergoing chemical reaction are always more stable than the reactants (Lam and Li 2010).

Firefly algorithm (FA) models the flashing-based interactions between fireflies to seek global optima (Yang 2009). The following principles are used to guide the search process. Firstly, the brightness of a firefly represents the attractiveness of a solution. Secondly, a less bright firefly moves towards a brighter one. Lastly, brightness increases as the distance between fireflies decreases.

Fireworks algorithm (FWA) mimics the explosion of fireworks and the subsequent sparks produced by the fireworks (Tan and Zhu 2010). The quantity and amplitude of sparks produced are determined by the closeness of a firework to the worst and best location (firework) found thus far, respectively. Fireworks closer to the worst performing firework produce less sparks. Fireworks closer to the best firework produce small explosions to act as a form of local search. Furthermore, sparks are randomly generated as a means of maintaining diversity.

Krill heard (KH) is a biologically inspired algorithm based on the simulation of the social and foraging behavior of krill. The movement of krill is influenced by the density of the herd, distance from food, and random diffusion (Gandomi and Alavi 2012).

Grey wolf optimization (GWO) simulates the social hierarchy and hunting behavior of grey wolves in a pack (Mirjalili et al. 2014). The algorithm uses four different types of wolves, i.e., alpha, beta, delta, and omega, to represent the leadership hierarchy. There is only one alpha wolf, beta wolf and delta wolf, which represent the best three candidate solutions, respectively. The remaining candidate solutions are considered omega wolves. The omega wolves update their positions according to alpha, beta, and delta wolves when hunting. The wolves then attack their prey (exploitation of a position) and then return to searching for prey (exploration of the search space).

Invasive weed optimization (IWO) utilizes artificial colo-nies of weeds, that are in competition for survival, to seek global optima. Weeds are aggressive and invasive with respect to their growth behavior. Furthermore, weeds have been shown to be robust and capable of adapting to change in the environment. These properties form the basis of invasive weed optimization (IWO) (Mehrabian and Lucas 2006). The colonies move through the search space by spreading seeds, where fitter individuals produce more seeds.

Particle swarm optimization (PSO) PSO simulates the behavior of birds within a flock that converge on a single point (Kennedy and Eberhart 1997). The population, referred to as the swarm, is a collection of randomly initialized particles. Each particle in the swarm has a velocity, initially zero. Particles move through the search space by means of velocity updates that guide the particles to more desirable solutions. Velocity updates consider social and cognitive guides, as well as the previous velocity of the particle. The social guide is the best-known solution in a neighborhood of particles. Neighborhoods are formed through topologies, such as global and local networks (Engelbrecht 2007; Kennedy and Eberhart 1997). The cognitive guide attracts particles towards their personal best solution found thus far.

4 Unconstrained portfolio optimization

Chang et al. introduced the concept of unconstrained portfolio optimization, which considered the mean-variance model (Markowitz 1952; Stuart and Markowitz 1959) without any additional constraints (Chang et al. 2000). Thus, unconstrained portfolio optimization must only adhere to the budget and positive weight constraints defined in equations (6) and (7), respectively. The term unconstrained portfolio optimization has since grown to include other portfolio models without any additional constraints. This section presents single-objective algorithms for unconstrained portfolio optimization in Sect. 4.1 and multi-objective algorithms for unconstrained multi-objective portfolio optimization in Sect. 4.2.

4.1 Single-objective algorithms

Ant Colony Optimization

Zhu et al. showed that ACO is capable of delivering similar performance to that of PSO for the unconstrained portfolio optimization problem with varying sized portfolios (Zhu et al. 2010).

Artificial Bee Colony

Rahmani et al. showed that artificial bee colony (ABC) performs better than a genetic algorithm (GA) and ant colony optimization (ACO) on stocks collected from the Tehran Stock Exchange (2005–2015) (Rahmani et al. 2019).

Beetle Antennae Search

Khan et al. proposed a quantum-inspired variant of beetle antennae search (BAS) for the mean-variance portfolio optimization problem (Khan et al. 2021). The proposed variant found better portfolios than BAS, PSO and a GA on several portfolio optimization benchmarks that used Shanghai Stock Exchange 50 Index data. However, the authors noted that the quantum-inspired variant of BAS was more computationally expensive than the other algorithms.

Bacterial Foraging Optimization

Niu et al. developed a variant of BFO with a linearly decreasing chemotaxis step length that was shown to be highly competitive amongst other algorithms, namely PSO and GA (Niu et al. 2012).

Firefly Algorithm

Chen et al. developed a two-stage approach to portfolio optimization where in the first stage an improved firefly algorithm (FA) optimize the hyper-parameters of XGBoost, and in the second stage XGBoost was used to predict the future prices of stocks (Chen et al. 2021).

Genetic Algorithms

GAs have been widely used for unconstrained portfolio optimization. Arnone et al. applied a multi-species GA to a semi-variance trade-off based portfolio model where each species optimized the objective function for a different \(\lambda \) value (Arnone et al. 1993). Shoaf and Foster showed that a GA, as well as a multi-species implementation of a GA, found more good-quality portfolios than quadratic programming (Shoaf and Foster 1996, 1998). Chang et al. showed that a GA was capable of finding higher-quality portfolios than simulated annealing (SA) and tabu search (TS) (Chang et al. 2000). Busetti confirmed GA’s superiority over TS, especially for larger problems (Busetti 2006). The performance of the GA was further improved by utilizing a two-step procedure that identified optimal assets beforehand (Chang et al. 2008). The choice of control parameter values for GA, specifically applied to portfolio optimization, was empirically shown to have an effect on performance (Hoklie and Zuhal 2010). Likewise, the encoding of solutions has also been shown to have an impact on the ability of heuristics to identify optimal solutions. An example of an encoding which leads to superior solutions than that of an array-based encoding is to use a tree-based representation (Aranha and Iba 2009).

Grey Wolf Optimization

Ahmad and Shahid (2022) demonstrated the superior performance of grey wolf optimization (GWO) over a GA, TS, and SA (Chang et al. 2000). Liu et al. used GWO to optimize the hyper-parameters of a support vector regression model that predicted future stock prices (Liu et al. 2021). Kriksciuniene et al. used a pre-screening process where the best assets were identified using self-organizing maps (Kriksciuniene et al. 2021). GWO was then used to optimize the mean-variance portfolio model for the identified. Setiawan evaluated the performance of a GA, cuckoo search optimization (CuSO), moth flame optimization (MFO), grasshopper optimization (GO), dragonfly optimization (DO), FA, and GWO to optimize the mean-CVaR portfolio optimization problem using Indonesian stock data (Setiawan 2020). Setiawan found that GWO performed better than the other algorithms.

Particle Swarm Optimization

PSO has been shown to be very competitive amongst other approaches to unconstrained portfolio optimization. Kamali showed that PSO was able to obtain higher-quality portfolios in less time than a GA (Kamali 2014). PSO, compared with a GA and an industry tool, proved to be a superior algorithm in finding solutions to portfolio optimization (Zhu et al. 2011). PSO was shown to outperform a GA in terms of consistency and speed of convergence towards an optimal solution for a behavioral portfolio model (Nematollahi and Manzi 2018). Liu et al. presented a novel adaptation of PSO that was shown to be effective in finding portfolios for a multi-period portfolio model that considered behavioral aspects of investors (Liu et al. 2015). Chen et al. found that the use of velocity clamping resulted in better portfolios (Chen et al. 2006). Niu et al. proposed a symbiotic multi-swarm PSO model that was shown to yield superior portfolios, both in quality and diversity, than a previously proposed multi-swarm cooperative PSO (Niu et al. 2009). Erwin and Engelbrecht proposed a two-stage optimization process where a set-based PSO selected good quality assets and a traditional PSO optimized the asset weights (Erwin and Engelbrecht 2020a, b). The two PSOs algorithms executed in an interleaving fashion. Results showed that the proposed approach outperformed a GA (Chang et al. 2000). Erwin and Engelbrecht later studied the same approach with an alternative weight optimizer, i.e., adaptive coordinate descent, and compared the alternative approach with the original, a GA, PSO, ABC and FA and concluded that proposed change is very competitive (Erwin and Engelbrecht 2021). Mba and Mai found PSO to be a promising strategy during extreme market conditions for cryptocurrency portfolio optimization (Mba and Mai 2022). Jia and Cai used a neural network to dynamically adjust PSO control parameter values, while the PSO optimized the mean-variance portfolio problem (Jia and Cai 2022). The authors found that their proposed approached outperformed other PSO approaches.

4.2 Multi-objective algorithms

Ant Colony Optimization

Khalidji et al. proposed a multi-objective ACO algorithm that was able to obtain solutions closer to the true POF than the non-dominated sorting genetic algorithm II (NSGA-II) (Khalidji et al. 2009).

Genetic Algorithms

Multi-objective GAs have also been shown to be successful approaches to unconstrained portfolio optimization. Computational analysis found the Pareto envelope-based selection algorithm (PESA) to be superior to NSGA-II and strength Pareto evolutionary algorithm 2 (SPEA2) for minimizing risk [Eq. (4)] and maximizing return [Eq. (5)] (Diosan 2005). Chiam et al. suggested an order-based representation that was shown to lead to better performance for algorithms (Chiam et al. 2007). Zheng and Zheng proposed a two-stage portfolio optimization strategy that used an adaptation of NSGA-II to identify Pareto-optimal front (POF) for the portfolio optimization problem and then used clustering to identify the best assets in each cluster (Zheng and Zheng 2022). The proposed approach was found to be very completive against other multi-objective EAs. Zhao et al. studied the performance of multi-objective evolutionary algorithm based on decomposition (MOEA/D) to optimize a three-objective portfolio model and found it to be a reliable approach (Zhao et al. 2020). Mamanis et al. evaluated the performance of several multi-objective evolutionary algorithms (MOEAs) on a three-objective portfolio model, i.e., maximize return, minimize risk, and minimize cardinality (Mamanis 2021). The authors found that MOEA/D and SPEA2 were the best approaches, but suggested that taking the results of an ensemble of approaches may in fact be the best approach.

Particle Swarm Optimization

In a comparative study of four multi-objective optimization algorithms, namely the parallel single front genetic algorithm (PSFGA), multi-objective particle swarm optimization (MOPSO), SPEA2 and NSGA-II. MOPSO found a superior and more diverse set of portfolios (Mishra et al. 2009). In contrast, PSFGA was the worst performing algorithm. Wang and Watada made improvements to the MOPSO algorithm that were shown to be advantageous in finding a diverse POF (Wang and Watada 2013). A dynamic multi-swarm PSO consistently outperformed multi-objective differential evolution (MODE), MOPSO and NSGA-II for large-scale portfolio optimization that considered 200 and 500 assets (Liang and Qu 2013). Erwin and Engelbrecht adapted their set-based PSO approach to multi-objective portfolio optimization and compared the adaptation to multi-guide particle swarm optimization (MGPSO), SPEA2 and NSGA-II (Erwin and Engelbrecht 2023). Results showed that the multi-objective set-based PSO scaled to larger portfolio optimizations problems with better solution quality.

5 Constrained portfolio optimization

Constrained portfolio optimization was pioneered by Chang et al, laying the foundation for future work (Chang et al. 2000). Chang et al. proposed the cardinality constrained portfolio problem (CCPP), in which the cardinality and the floor and ceiling constraints were introduced to the classic mean-variance problem. Thereafter, extended problems and other models that include further constraints have also been studied. Section 5.1 discusses results of single-objective algorithms for constrained portfolio optimization and multi-objective algorithms for constrained multi-objective portfolio optimization are discussed in Sect. 5.2.

5.1 Single-objective algorithms

Ant Colony Optimization

Deng and Lin found ACO to be more robust and effective than PSO in finding solutions to CCPPs, especially for low risk investment portfolios (Deng and Lin 2010). Kalayci et al. proposed a hybrid approach between ACO and ABC and found that it performed well on several portfolio optimization benchmarks compared to other algorithm (Kalayci et al. 2020).

Artificial Bee Colony

ABC has been shown to be a highly competitive algorithm for the constrained portfolio optimization problem. ABC significantly outperformed local search techniques, such as SA and TS (Chen et al. 2012). Furthermore, experimental results by Wang et al. showed that ABC is capable of finding higher-quality solutions than PSO (Wang et al. 2012). Chen et al. proposed an improved ABC algorithm that generates scout bees by selecting previously found solutions from an efficiency frontier archive (Chen et al. 2013). The proposed improved ABC algorithm consistently outperformed the original ABC algorithm. A global best-guided ABC model, inspired by PSO, found a more diverse set of non-dominated solutions than other algorithms, namely GA, ABC and FA (Ge 2014; Suthiwong and Sodanil 2016). Several techniques used by GAs were applied to ABC to produce a very competitive and efficient approach to finding optimal portfolios (Kalayci et al. 2017). Hong-mei et al. showed that ABC obtained more portfolios in fewer iterations than GA (Hong-Mei et al. 2010). ABC continuously outperformed FA and GA for portfolio optimization subject to many constraints (Bacanin et al. 2014). A hybrid ABC algorithm, in which employed bees used a FA search procedure, was shown to be highly competitive amongst previously tested algorithms (Chang et al. 2000; Cura 2009; Tuba and Bacanin 2014). Sahala et al. found that improved quick ABC performed better than modified ABC on S &P500 data collected from January 2016 to January 2017 (Sahala et al. 2020). Cura showed that ABC outperforms a GA, differential evolution (DE), ACO, PSO, TS and SA for the cardinality constrained mean-variance portfolio optimization problem on data from the OR library, and XU030 and XU100 indices from Turkey (Cura 2021).

Beetle Antennae Search

BAS was significantly faster and performed better than ABC, PSO, DE and a slime mould algorithm on a time-varying Black–Litterman portfolio optimization problem in a study by Simos et al. (2021).

Bacterial Foraging Algorithm

Experimental results confirmed BFO to be the superior choice for portfolio optimization over other algorithms, namely GA, TS, SA (Chang et al. 2000) and PSO (Cura 2009), especially for portfolios that considered a large number of assets (Kao and Cheng 2013).

Bat Algorithm

Computational results showed that BA, PSO, and CSO yielded similar performance for the constrained portfolio optimization problem (Kamili and Riffi 2016). Strumberger et al. showed that the performance of BA was significantly improved by introducing scout behavior adapted from ABC (Strumberger et al. 2016).

Cat Swarm Optimization

Kamili and Riffi found CSO to be a good approach to for the constrained portfolio selection problem (Kamili and Riffi 2015).

Chemical Reaction Optimization

Xu et al. evaluated the performance of CRO for constrained portfolio optimization and proposed an improved model that found higher-quality solutions than the original CRO (Jin et al. 2011).

Differential Evolution

Lwin and Qu integrated population-based incremental learning with differential evolution and found that the proposed hybrid demonstrated superior performance over the individual algorithms (Lwin and Rong 2013). Pai and Michel used DE to solve a unique portfolio optimization problem that involved long and short positions inspired by an equity market neutral portfolio strategy (Vijayalakshmi and Michel 2012). A long position asset, the most familiar kind of asset, yields returns as its value increases. A short position, in contrast, yield returns expecting a fall in the asset’s value. Thus, a combination of long and short assets aims to minimize risk exposure. Mathematically, short positions are represented as negative weights. Furthermore, Pai and Michel defined a risk budget, where the riskiness of each asset in the portfolio had to be under a given limit. Pai and Michel also applied DE, as well as a GA, to a portfolio model based on an investment strategy known as the 130-30 strategy (Vijayalakshmi Pai and Michel 2012). This strategy aims to yield greater returns by short-selling poor-performing assets, 30% of the portfolio value. Then, 130% of the portfolio value is used to purchase assets, which investors feel that would outperform the market.

Krill Herd

Tuba et al. found that krill heard (KH) underperformed GA and FA for constrained portfolio optimization (Tuba et al. 2014).

Firefly Algorithm

Bacanin and Tuba presented several modifications to enhance the exploratory and exploitative behavior of FA (Tuba and Bacanin 2014; Bacanin and Tuba 2014). The proposed FAs were shown to be very competitive amongst previously proposed GA, TS, SA (Chang et al. 2000), and PSO (Cura 2009). Ramshe et al. found that FA performed better than a GA, PSO, TS, and SA on the constrained mean-variance portfolio model (Ramshe et al. 2021).

Fireworks Algorithm

Bacanin and Tuba (2015) concluded that FWA performed significantly better than GA, ABC, KH, and FA. FWA found higher-quality solutions in very few iterations, which continued to improve throughout the search. The authors concluded that the algorithm has great potential for solving the portfolio optimization problem and that further work should be done to further evaluate the performance.

Invasive Weed Optimization

Pouya et al. proposed a constrained portfolio model where risk, market expectations and experts recommendations were considered as weighted objectives (Pouya et al. 2016). The authors found that, in general, IWO and PSO demonstrated similar performance.

Genetic Algorithm

Chang et al. compared the performance of GA, SA, and TS. They found that GA only slightly outperformed SA and TS for cardinality-constrained portfolio optimization (Chang et al. 2000). Furthermore, GA was consistently slower than the other approaches. Ehrgott et al. found similar results where GA, SA, TS and local search were used to optimize a constrained portfolio model which considered five equally weighted sub-objectives (Ehrgott et al. 2004). Woodside-Oriakhi et al. used a set-based encoding which improved the performance of a GA, SA, and TS. Furthermore, the improved algorithms were shown to scale well to larger test problems that included up to 1318 assets (Woodside-Oriakhi et al. 2011). Chang et al. demonstrated the robustness of a GA in its ability to solve a variety of cardinality-constrained problems (Chang et al. 2009). Similarly, Soleimani et al. confirmed GA to be a reliable approach to optimizing small- and large-sized portfolios under several constraints (Soleimani et al. 2009). Jalot and Thakur designed an effective GA for cardinality-constrained portfolio optimization, which utilized an efficient repair mechanism (Chang et al. 2000), as well as constraint-aware crossover and mutation operators (Jalota and Thakur 2018). Guo et al. discussed the difficulties in optimizing a fuzzy multi-period portfolio selection model with different investment horizons (Guo et al. 2016). As a solution to the complex portfolio model, the authors proposed a fuzzy-based GA that was shown to be efficient and effective. Lin provided empirical results that demonstrated the applicability of GA for various constrained portfolio models (ChiangLin 2006). Pai and Michel developed a GA, which used k-means clustering to eliminate the cardinality constraint (Vijayalakshmi Pai and Michel 2009). Huang and Shen used a GA to demonstrate the practicality of a multi-period portfolio model with transaction costs and fuzzy returns (Huang and Shen 2010). Huang showed that the GA was capable of finding optimal portfolios for fuzzy-constrained mean-variance and semi-variance models (Huang 2012). Ackora et al. showed that the GA’s ability to find optimal portfolios is significantly impacted by the chosen crossover operator (Gyamerah 2014). Drezewski and Doroz developed a co-evolutionary GA for constrained portfolio optimization (Drezewski and Doroz 2017). Yu et al. presented a two-stage GA which first identified good-quality assets before optimizing the asset weights (Yu et al. 2008). The two-stage procedure significantly improved performance in determining the most valuable portfolio. Integration of quadratic programming with GAs has shown to increase performance for constrained portfolio optimization (Moral-Escudero et al. 2006; Ruiz-Torrubiano and Suarez 2007, 2010, 2015). Evolutionary techniques are used to satisfy constraints, while quadratic programming is used to determine optimal weights. Liu and Zhang applied a GA to a heavily constrained portfolio model that defined multiple fuzzy objectives, return, risk, and liquidity, as a fuzzy single-objective optimization problem (Liu et al. 2013). Chiadamrong and Suthamanondh developed a multi-objective portfolio model for sustainable portfolio investment (Chiadamrong and Suthamanondh 2022). The model includes an objective to minimize pollution and constraints on emissions, operating expenses, investment budget and more. The authors used a GA to optimize the a weighted additive version of the proposed portfolio model.

Particle Swarm Optimization

A large amount of work has considered PSO as an approach to portfolio optimization. Xu et al. were the first to evaluate the performance of PSO for constrained portfolio optimization (Chen et al. 2006; Fasheng and Chen 2006). The authors concluded that the use of velocity clamping improved performance. PSO has been shown to achieve similar performance to those of previously tested GA, SA, and TS (Chang et al. 2000; Cura 2009). In an effort to improve performance, significant work has been done on improving the velocity control of PSO. Koshino et al. studied several velocity management strategies and found that the use of a combination of techniques improved performance (Koshino et al. 2007). Likewise, Chen and Ben-yan modified the exploration and exploitation behavior of PSO which resulted in superior performance over that of GA (Chen and Chen 2018). Feng et al. found that the use of dynamic coefficients, particle mutation and velocity clamping made PSO a more effective algorithm for finding optimal portfolios than previously tested algorithms (Deng et al. 2012). Wang et al. incorporated evolutionary attributes into PSO to maintain diversity and to avoid premature convergence (Wang et al. 2009). The Hybrid PSO was found to be very competitive, producing higher quality solutions while being computationally efficient. Yaakob and Watada found that the use of mutation and velocity control bested a GA for constrained portfolio optimization problems (Yaakob and Watada 2010). Chen and Zhang demonstrated the versatility of PSO in finding solutions to a fuzzy variant of the mean-variance model (Chen and Zhang 2010). Work by Corazza et al. found PSO to be a viable approach to constrained portfolio optimization (Corazza et al. 2013). Farzi et al. concluded that PSO under quantum motion was better suited to constrained portfolio optimization than use of classical Newtonian movements (Farzi et al. 2013). Ni et al. proposed several dynamic and random topology strategies for PSO (Ni et al. 2017). Computational results showed that topologies which progressed from small ring structures to a fully connected network resulted in higher-quality portfolios. Sadigh et al. proposed a PSO and neural network hybrid that outperformed the individual algorithms, as well as previously evaluated GA, TS, and SA strategies (Chang et al. 2000; Sadigh et al. 2012). Sub et al. proposed a variation of PSO, which mimicked the thermal and drift motion of electrons in a conduct under an electrical field (Sun et al. 2011). Results showed that the proposed drift-based PSO was statistically significantly better than other optimization approaches, in both computational time and quality of solutions found. The combination of PSO (Zheng et al. 2007) and binary PSO (Kennedy and Eberhart 1997) successfully outperformed a GA (Soleimani et al. 2009), especially for larger cardinality constrained portfolios. In order to prevent PSO from being trapped in local optima, Mozafari et al. (2011) introduced SA behavior to PSO (Koshino et al. 2007) that found better portfolios than GA, TS, SA (Chang et al. 2000) and PSO. Work done by Corazza et al. showed PSO to be a viable approach to constrained portfolio optimization (Corazza et al. 2013). However, Salahi et al. found that PSO (Cura 2009) was bested by a local harmony search technique, both in time and accuracy (Salahi et al. 2014). Moreover, the performance difference was most notable on problem instances with larger data sets. Corazza et al. demonstrated that adding a dynamic penalty approach to PSO improves the performance for constrained portfolio models (Corazza et al. 2021). Likewise, Sun and Ren showed that adding a penalty function based on graph density to PSO also improved performance for constrained portfolio models (Sun and Ren 2021).

5.2 Multi-objective algorithms

Ant Colony Optimization

Armananzas and Lozano proposed a multi-objective ACO and greedy search hybrid, which demonstrated outstanding performance over standalone greedy search (Armananzas and Lozano 2005). Doerner et al. proposed an enriched Pareto ACO algorithm that was shown to outperform Pareto SA and NSGA-II for randomly generated portfolio problems, as well as a real-world problem (Doerner et al. 2004).

Artificial Bee Colony

Kumar and Mishra proposed a multi-objective ABC algorithm which used co-variance principles to approximate the gradient of the objective function (Kumar and Mishra 2017). Empirical results showed that the proposed ABC algorithm was able to produce a diverse POF. Deng et al. proposed a multi-objective adaptation of ABC that outperformed several multi-objective algorithms, including NSGA-II, SPEA2 and MOPSO, on a blockchain portfolio optimization problem (Deng et al. 2021). Furthermore, the portfolio optimization problem also included liquidity constraints.

Bacterial Foraging Algorithm

Mishra et al. presented a multi-objective BFO algorithm which was capable of identifying a diverse POF (Mishra et al. 2014; Mishra 2012).

Bat Algorithm

Jiang et al. proposed an improved multi-objective bat algorithm (BA) for a multi-objective multi-period credibilistic mean-VaR portfolio optimization problem (Jiang et al. 2021). The portfolio model also included cardinality, asset bounds, and liquidity constraints. The authors found that their approach was very completive against MOPSO, multi-objective artificial bee colony (MOABC), multi-objective firefly algorithm (MOFA), MODE, multi-objective bat algorithm (MOBA), NSGA-II and SPEA2.

Differential Evolution

Unlike other papers, Pai and Michel defined a portfolio optimization problem that considered the futures market, which is fraught with risks (Vijayalakshmi Pai and Michel 2014). This portfolio model defined three objectives to minimize exposure to risk in future bonds, indices, and currency markets. MODE was shown to successfully obtain practical solutions. In the same line of work, Pai introduced transaction costs and risk budgets to further mimic the real world (Vijayalakshmi 2018). Most recently, Pai examined the ongoing effects of rebalancing a portfolio as a multi-objective optimization problem (Vijayalakshmi 2018).

Firefly Algorithm

Jiang et al. proposed a cross-efficiency portfolio model that simultaneously minimized risk, maximized return, and maximized the efficiency (based on the Sharpe ration) of the portfolios (Chen et al. 2020). The model also included the cardinality constraint and bounds on assets. To optimize the model, the authors proposed a multi-population multi-objective adaptation of FA.

Genetic Algorithm

SPEA2 consistently outperformed other state-of-the-art MOEAs, namely vector evaluated genetic algorithm (VEGA), multi-objective genetic algorithm (MOGA), and NSGA-II, in finding solutions close to the true POF (Skolpadungket et al. 2007). Chiam et al. found that an order-based representation of solutions lead to improved performance (Chiam et al. 2007, 2008). A comparative study by Anagnostopoulos and Mamanis found that state-of-the-art MOEAs, in general, are efficient and reliable strategies for cardinality-constrained portfolio optimization (Anagnostopoulos and Mamanis 2009). Specifically, PESA obtained on average solutions slightly closer to the POF, while NSGA-II and SPEA2, on average, found more diverse solutions. Similar work was performed where the cardinality constraint was treated as a third objective and represented as an inequality (Anagnostopoulos and Mamanis 2010). Computational analysis found SPEA2 to be the best-performing algorithm, whereas PESA, which placed second, was the fastest approach. Branke et al. proposed an integrated active set MOEA, referred to as the envelope multi-objective genetic algorithm (E-MOEA) (Branke et al. 2009). E-MOEA was shown to find significantly better frontiers than NSGA-II. A study of the state-of-the-art MOEAs as well as GA (Chang et al. 2000) applied to cardinality constrained portfolio optimization found that all MOEAs outperformed the single-objective GA (Anagnostopoulos and Mamanis 2011). Furthermore, SPEA2 provided the most reliable performance, however, at the cost of being computationally expensive. Further experiments confirmed the ability of best-performing algorithms, i.e., SPEA2 and NSGA-II, to scale to larger search spaces of 2196 assets. Deb et al. proposed a hybridized NSGA-II procedure, which used clustering and a local search to obtain more accurate solutions (Deb et al. 2011). The authors demonstrated the effectiveness of the algorithm and concluded that it was a reliable approach to cardinality-constrained portfolio optimization. Liagkouras significantly improved the performance of the state-of-the-art MOEAs by using a three-dimensional encoding that made processing time invariant to the size of the portfolio problem (Liagkouras 2018). Liagkouras and Metaxiotis proposed a mutation operator that aggressively probes the search space to guide offspring to optimal solutions (Liagkouras and Metaxiotis 2014). The mutation operator was shown to increase the effectiveness of NSGA-II and SPEA2 for cardinality constrained portfolio optimization, however, at the expense of being computationally expensive. Meghwani and Thakur presented an extended three-objective portfolio model that considered minimizing transaction costs as an additional objective (Meghwani and Thakur 2018). A novel repair algorithm was proposed to handle the newly introduced transactional constraints, specifically equality constraints. MOEAs with the repair algorithm outperformed their standard counterparts. Streichert and Tanaka-Yamawaki proposed a hybridization of NSGA-II and a quadratic programming local search, which demonstrated improved solution quality for some problem instances, however, suffered from premature convergence on others (Streichert and Tanaka-Yamawaki 2006). Subbu et al. proposed an architectural solution to the constrained portfolio optimization problem which sequences multiple techniques to produce Pareto optimal solutions (Subbu et al. 2005). Linear programming was used to generate the initial population for PESA. The efficient frontier obtained by PESA is enhanced by a GA, which identifies possible gaps in the POF. Lastly, constraints are then applied to the enhanced efficient frontier to identify realistic portfolios. It was shown that the architecture could obtain solutions to a high dimensionality portfolio optimization problem. However, the authors noted that further experiments were required to prove effectiveness of the proposed architecture. Pal et al. developed a comprehensive approach to selecting good candidate assets and then optimizing said asset weights (Pal et al. 2021). The authors use NSGA-II to cluster good-quality assets to create portfolios of variable length (which handles the cardinality constraint on the portfolio model), and then use a single-objective GA to optimize the asset weights with bounds constraints on the assets. Li et al. proposed a bi-objective mean-variance-VaR-entropy portfolio model with downside risk and diversification constraints (Li et al. 2022). The authors then used NSGA-II to optimize the aforementioned model. Wang et al. studied the performance of a MOGA to optimize a bi-objective credit portfolio model, i.e., minimize default risk and maximize expected returns (Wang et al. 2022). Aghamohammadi et al. show that for a bi-objective portfolio optimization problem in Tehran Stock Exchange NSGA-II is better than MOABC and multi-objective ant colony optimization (MOFA) (Aghamohammadi et al. 2022). However, when the algorithms are given more iterations to optimize, the authors note that MOABC performs better than NSGA-II and MOFA and that MOABC is more efficient than the other algorithms. Zhou et al. evaluated the performance of NSGA-II to optimize a tri-objective portfolio model with bounds on asset holdings and bounds on cardinality (Zhou et al. 2022). The authors found that NSGA-II with optimized control parameter values yielded significant returns over a two-year period based on Chinese stock market data. Deliktas and Ustun studied the performance of a MOGA on an extended version of the mean-variance cardinality constrained portfolio model that includes a third ranking-based objective (Deliktaş and Ustun 2022). Wang et al. developed a multi-objective multi-objective evolutionary algorithm (MOEA) for bi-objective portfolio model that maximized return and minimized market impact costs (Wang et al. 2022). The authors found that the proposed MOEA consistently outperforms NSGA-II on 11 benchmark problems. Mittal and Srivastava proposed a hybrid GA that performed well for the cardinality-constrained multi-objective portfolio optimization problem with the additional objective of maximizing skewness (Mittal and Srivastava 2021). Yinnan et al proposed a novel multi-period three-objective portfolio model with constraints on return, bounds on assets, liquidity and turnover (Yinnan et al. 2023). The authors studied the performance of the several MOEAs and a proposed MOEA to optimized the portfolio model. The authors found that the proposed MOEA outperformed the other MOEAs.

Particle Swarm Optimization

Zhou and Li presented an improved MOPSO algorithm that was shown to find a diverse set of solutions close to the POF for constrained portfolio optimization which considered return, variance and fuzzy-liquidity as objectives (Zhou and Li 2014). Mishra et al. developed a MOPSO algorithm which used a self-regulating velocity strategy that was found to be highly competitive against evolutionary algorithms, namely NSGA-II and SPEA-2 (Mishra et al. 2016). Kaucic presented a novel hybridized MOPSO algorithm to solve the constrained portfolio optimization problem (Kaucic 2019). The hybridized algorithm used mutation to improve the exploratory capabilities of MOPSO. Computational results confirmed the effectiveness of introducing mutation to aid MOPSO in finding optimal portfolios. Silva et al. presented a comprehensive study in which an adaptive ranking MOPSO was shown to be highly competitive against past approaches, most notably outperforming previously dominant MOEAs such as SPEA2 and NSGA-II (Silva et al. 2019). Zhao et al. proposed a multi-swarm co-evolutionary adaptation of PSO for the multi-objective cardinality constrained portfolio optimization problem (Zhao et al. 2021). It was shown that proposed multi-objective PSO performed better than a hybrid ABC-FA algorithm (Tuba and Bacanin 2014), NSGA-II, SPEA2, MOEA/D and other multi-objective algorithms.

Fig. 1
figure 1

Number of publications per year

6 Analysis

This section analyzes the characteristics of the aforementioned papers and discuses the findings. Section 6.1 compares the representation of evolutionary and swarm intelligence algorithms for various portfolio optimization problems. Section 6.2 discusses portfolio models, objectives and constraints which appeared in the reviewed literature. Section 6.3 presents solution encoding strategies and related constraint handling techniques. Section 6.4 provides an overview of portfolio optimization benchmarks. Section 6.5 describes various performance measures used to evaluate the performance of evolutionary and swarm intelligence algorithms. Lastly, recommendations for future research are given in Sect. 6.6.

6.1 Representation of algorithms

A variety of evolutionary and swarm intelligence algorithms have been proposed to solve the portfolio optimization problem. Figure 1 shows that the interest in evolutionary and swarm intelligence algorithms as portfolio optimizers has increased over time, specifically 2000–2010. In general, 71.92% of the surveyed literature made use EAs, while 57.53% used SI algorithms. There exists an overlap of 29.45% where publications made use of algorithms belonging to both paradigms. Table 1 shows that both paradigms are represented similarly across unconstrained and constrained portfolio optimization as a one-, two-, and three-objective optimization problem.

Table 1 Representation of evolutionary and swarm intelligence paradigms for unconstrained and constrained portfolio optimization

Single-objective portfolio optimization accounts for 65.07% of the discussed literature, whereas multi-objective optimization represents 34.93%. Portfolio optimization as a single-objective problem is, thus, overwhelmingly represented. It is crucial to obtain a diverse set of optimal portfolios when making informed investment decisions. Single-objective optimization algorithms converge to a single solution, requiring multiple runs to obtain a set of solutions. In contrast, multi-objective optimization algorithms obtain many solutions and are thus better suited for portfolio optimization problems.

Table 2 shows that GAs are more popular than DE with respect to evolutionary approaches for portfolio optimization. Likewise, PSO is the prominent approach to portfolio optimization amongst SI algorithms, as shown in Table 3. GA is, overall, the most popular approach by a margin of about 30%. However, there is a wider range of SI algorithms than EAs. Furthermore, the first GA was published in the 1950s (Fraser 1957a, b), making it comparatively more well-established than the relatively new SI paradigm, which was first seen in the 1990s (Eberhart and Kennedy 1995). With regard to multi-objective optimization, NSGA-II, PESA, SPEA2, and MOPSO are the most popular approaches and have been shown to obtain diverse non-dominated solutions (Skolpadungket et al. 2007; Deb et al. 2011; Liagkouras 2018; Mishra et al. 2016; Anagnostopoulos and Mamanis 2009, 2010, 2011). A limitation of the current research is that the performance of other approaches is largely unexplored to the same extent as GAs and PSO. Investing in these algorithms could be a potentially fruitful area of future work since initial results are promising. Furthermore, the hybridization of these algorithms has been shown to yield superior results over their individual counterparts (Tuba and Bacanin 2014; Mozafari et al. 2011; Kaucic 2019).

Table 2 Evolutionary algorithms for portfolio optimization

Although a variety of algorithms have been proposed for portfolio optimization, it is important to note that if an algorithm excels at one optimization problem, it may not necessarily be suitable for another (Wolpert and Mac Ready 1997). Furthermore, deriving algorithms from natural phenomena for the sake of being new and novel may stray research away from scientific rigor (Sorensen 2015).

Table 3 Swarm intelligence algorithms for portfolio optimization

6.2 Portfolio models

The mean-variance model is the most widely considered portfolio model for portfolio optimization, represented in the majority of the considered work. Mean-semi-variance, considered by less than 10% of publications (Liagkouras 2018; Chang et al. 2009; Ge 2014; Arnone et al. 1993; Huang 2012), has been studied considerably less and the remaining proportion of work, that considered alternative portfolios models and \(\bar{\sigma }\) measures, even more so. Example models are VaR (Liagkouras 2018; Meghwani and Thakur 2018), CVaR (Liagkouras 2018; Meghwani and Thakur 2018), prospect theory (Liu et al. 2015; Nematollahi and Manzi 2018), Sharpe ratio (Aranha and Iba 2009; Zhu et al. 2011), and MAD (Chang et al. 2009).

Single-objective portfolio optimization related work considered a trade-off between R and \(\bar{\sigma }\), as expressed in equation (3), as an objective function (Chang et al. 2000; Farzi et al. 2013; Ge 2014; Jin et al. 2011; Kamili and Riffi 2016; Tuba et al. 2014; Bacanin and Tuba 2015). Minimization of \(\bar{\sigma }\) or maximization of R with a minimum R or maximum \(\bar{\sigma }\) constraint, respectively, has also been considered (Soleimani et al. 2009; Nematollahi and Manzi 2018; Shoaf and Foster 1996; Bacanin et al. 2014; Sun et al. 2011).

Optimization of R and \(\bar{\sigma }\) is the most widely considered objectives for multi-objective portfolio optimization. Additional objectives, such as liquidity (Zhou and Li 2014), future risk (Wang and Watada 2013; Subbu et al. 2005), and transaction costs (Meghwani and Thakur 2018), are largely under represented yet vital when considering portfolios. Cardinality, as an additional objective to be minimized, is a novel approach to obtaining a diverse POF of differently size portfolios (Anagnostopoulos and Mamanis 2010). Similarly, diversity as an objective to be maximized has been shown to guide algorithms to more diverse solutions (Skolpadungket et al. 2007). Table 1 shows that only 5.66% of papers considered portfolio optimization as a three-objective optimization problem.

Portfolio optimization as a fuzzy optimization problem has also been studied (Pouya et al. 2016; Wang and Watada 2013). Fuzzy logic is introduced to represent the uncertainty of future returns. Multi-period portfolio models consider the optimization of a portfolio at several time periods (Vijayalakshmi 2018). However, this is different from a dynamic problem with a changing search space in the sense that the expected returns for each time period are known up front. Practically, this shows an algorithm’s ability to optimize a portfolio subject to rebalancing. Research regarding futures markets, although practically useful, is largely unexplored (Vijayalakshmi Pai and Michel 2014; Vijayalakshmi 2018). Likewise, there is very little research based on real-world investment strategies, like the 130-30 strategy (Vijayalakshmi 2018), risk budgeting (Vijayalakshmi and Michel 2012; Vijayalakshmi 2018, 2018), and equity market neutral portfolio strategy (Vijayalakshmi and Michel 2012). Current research has not yet investigated the use of evolutionary and swarm intelligence algorithms as prediction methods for future prices and then making investment decisions based on these predicted prices.

A significant amount of research has treated portfolio optimization as a constrained optimization problem. This is done by adding additional constraints to the considered portfolio model, such as those shown in Table 4. The floor and ceiling, and cardinality constraints of Eqs. (8) and (10), respectively, are the most considered constraints, across all m values, as a result of the popularity of the CCPP. However, Chang et al. noted that single-objective optimization algorithms that optimized the CCPP would effectivity be blind to solutions that could not be obtained by varying \(\lambda \). Table 5 shows, that in general, publications considered two constraints for constrained portfolio optimization. The popularity of these constraints is attributed to the novel work done by Chang et al. (2000). Considering return as a constraint is particularly useful when trying to find portfolios that would outperform competitors. Transaction lots, transaction costs, and sector capitalization have also been studied, albeit to a lesser extent. Such constraints make portfolio optimization more realistic. Other constraints identified, categorized as pre-assignment constraints, are not related to the objective function but rather the search space. Examples of pre-assignment constraints are to remove assets from the search space if they do not meet a given level of risk, return or liquidity (Huang and Shen 2010; Silva et al. 2019; Branke et al. 2009; Hadi et al. 2016). Heavily constrained portfolio optimization problems have been proposed, but are not as popular. Work done by Soleimani et al. (2009) considered minimum turnover, asset boundaries, cardinality, sector capitalization, transaction costs, and transaction lots.

Table 4 Commonly considered constraints for portfolio optimization
Table 5 The number of constraints considered for portfolio optimization per number of objectives

6.3 Solution encoding and quality

The encoding scheme used to represent solutions can have a direct impact on the performance of an algorithm (Chiam et al. 2007; Liagkouras 2018; Chiam et al. 2008; Aranha and Iba 2009). Furthermore, there exists a variety of methods to ensure feasibility of solutions. The most prominent encoding is a direct representation of a portfolio as a collection of asset weights. The popularity of this encoding can largely be attributed to work which considered the unconstrained portfolio problem. However, when constraints are considered and no constraint handling techniques are used, a direct representation frequently leads to infeasible solutions (Shoaf and Foster 1996). A simple approach to ensuring that the budget constraint of equation (6) is satisfied is to normalize the asset weights.

Popularized by Chang et al. (2000), binary decision variables to indicate the inclusion of an asset in the portfolio is commonly used for handling the cardinality constraint. When there are too many or too few assets included, a decision process is then used to remove or add assets, respectively. Such an approach is to randomly select assets to either be included or excluded from the portfolio until the constraint is satisfied (Yin et al. 2015).

The most commonly used constraint handling technique for the boundary constraint is the free portfolio proportion method, originally presented by Chang et al. (2000). Formally, the technique is described as follows:

$$\begin{aligned} F&= 1 - \sum _{i=1}^{n} \varepsilon _i \nonumber \\ w_i&= \varepsilon _i + \frac{w_i}{\sum _{i=1}^{n}w_i} F \end{aligned}$$
(18)

where F is the free remaining proportion of the portfolio, and \(w_i\) is the portion of asset i. So far, this satisfies the lower boundary and budget constraints. An iterative procedure that recalculates the free portion, based on the process above, is performed on portions which violate the upper boundary constraint, if any. Furthermore, by initializing individuals of the initial population within \([\varepsilon ,\delta ]\), the population is guaranteed to satisfy the boundary constraint.

In a constrained search space, optima may exist separated or surrounded by infeasible regions. Under these circumstances, individuals will be discouraged by the infeasible regions from finding the aforementioned optima. Thus, to allow individuals to fully explore the search space, individuals may be allowed to move through infeasible regions subject to a given tolerance threshold (Kalayci et al. 2017; Bacanin et al. 2014; Tuba and Bacanin 2014; Strumberger et al. 2016; Tuba et al. 2014; Bacanin and Tuba 2014, 2015). Individuals that violate constraints or have exceeded a tolerance threshold can be removed by re-initialization of the individual within the bounds of the search space. A similar but more relaxed approach is to allow individuals to violate constraints. However, such individuals are penalized on how severely the constraints are violated (Golmakani and Fazel 2011; Chen et al. 2006; Ge 2014; Pouya et al. 2016; Chen and Chen 2018; Mishra et al. 2016).

k-means clustering has been used to group similar performing assets into k groups (Vijayalakshmi Pai and Michel 2009). The objective function is then optimized by finding optimal combinations of assets from each cluster. This strategy can be used to with the cardinality constraint where the number of groups is equal to the cardinality constraint. However, the quality of solutions found is dependent on the clusters identified. For example, high performing assets could be grouped into a single cluster, thus requiring less desirable assets to be included in the portfolio.

A hybrid encoding of asset weights and indices has been used to represent solutions to the cardinality constrained portfolio optimization problem (Soleimani et al. 2009; Farzi et al. 2013; Busetti 2006; Chen et al. 2012, 2013). This approach works well for problems that consider the cardinality constraint as an equality. By setting the size of a solution equal to K, the cardinality constraint is eliminated. Furthermore, the algorithm benefits from computational efficiency as the encoding is invariant to the size of the portfolio problem and the algorithm only needs to evaluate a subset of assets. If the cardinality constraint is treated as an inequality, a third vector of decision variables, representing the inclusion of assets in the portfolio, is introduced (Liagkouras 2018). In this encoding strategy, the size of each vector is bound to the cardinality bounds. Thus, the complexity of the cardinality constraint is significantly reduced, while being extremely computationally efficient.

An order-based variation of the asset weights and indices encoding, proposed by Chiam et al. (2007, 2008), evaluates a solution in a left to right order, similar to that of a bin packing problem. Shoaf and Foster proposed the use of portion indices to represent portfolios (Shoaf and Foster 1996). Set-based encodings have also been shown to be effective representations (Woodside-Oriakhi et al. 2011; Moral-Escudero et al. 2006; Ruiz-Torrubiano and Suarez 2010). Lastly, a tree-based representation where leaf nodes represented the portion allocated to an asset demonstrated superior performance to that of an asset weights representation for GA (Aranha and Iba 2009).

Table 6 Summary of the OR Library data sets for portfolio optimization

6.4 Benchmark problems

A variety of data sets have been used to benchmark the performance of evolutionary and swarm intelligence algorithms for portfolio optimization. A data set, for example, might contain the expected return and risk for each asset, the correlation value between each asset pair and known optimal solutions.

The OR LibraryFootnote 1 was used in approximately 40% of publications, making it the most widely used data set for portfolio optimization (Chang et al. 2000; Beasley 1990). As summarized in Table 6, the OR Library contains five portfolio optimization benchmark problems, each containing real-world data from different stock markets with varying numbers of assets. The benchmark problems were initially published alongside the CCPP by Chang et al. (2000). The benchmark problems test the scalability and accuracy of an algorithm using data from various real-world stock markets. Each benchmark problem contains the following: the number of assets, the mean return, the standard deviation of returns for each asset, and the correlation value for all possible pairs of assets. The covariance between the returns of assets i and j is calculated as the product of the standard deviation of assets the returns of i and j and the correlation value of i and j. A POF containing 2000 pairs of R and \(\bar{\sigma }\) values is also provided for each benchmark problem.

However, the OR Library is opinionated in the sense that it uses mean-variance to model the expected returns and risk of assets. The majority of publications used independent data sets. In some cases, data were randomly generated to evaluate algorithms’ ability to scale to extremely large asset spaces, i.e., more than 1000 assets (Ehrgott et al. 2004; Doerner et al. 2004). It has been shown that algorithms suffer from the curse of dimensionality problem (Woodside-Oriakhi et al. 2011). Twenty-eight percent of papers considered only one market with an average of approximately 150 assets. Some considered as few as 4, 5, 7, 8 or 10 assets (Guo et al. 2016; Hong-Mei et al. 2010; Tuba et al. 2014; Bacanin and Tuba 2015; Fasheng and Chen 2006; Hao and Liu 2008). The remaining portion of independent data sets considered, on average, three markets ranging from 70 to 350 assets. This is a possible flaw in the surveyed literature as different data sets may be easier to optimize than others resulting in a false sense of confidence in the tested algorithms. This makes the cross-comparison of algorithms difficult. Furthermore, due to the lack of availability of the data sets used, work cannot successfully be reproduced.

6.5 Performance measures

The following performance measures, presented below, have been used to evaluate the usefulness of evolutionary and swarm intelligence algorithms in the context of portfolio optimization. Naturally, statistical measures such as mean, median, minimum, maximum, and standard deviation, can be applied to the results of these performance measures, where applicable.

6.5.1 General measures

The simplest performance measure is to compare the fitness scores obtained by the competing algorithms, where the fitness score is defined by the given objective function. However, a more accurate approach is to compare R and \(\bar{\sigma }\) values. This indicates whether an algorithm is capable of obtaining superior solutions, than a competing approach. Some benchmark problems include data from a later date to assets how the obtained portfolios would have performed. Being able to obtain good-quality solutions in an efficient manner is also important as investment decisions are often subject to time constraints, particularly in volatile markets. Therefore, the time taken for the algorithm to reach the stopping condition should be minimized. Similarly, the number of evaluations required by each algorithm to obtain a specific or best objective value can also be compared.

6.5.2 Pareto optimality related measures

Generational distance (GD) quantifies an algorithm’s ability to approximate the Pareto-optimal front from the obtained POF to the true POF (Van Veldhuizen and Lamont 2000, 1998). Formally, GD is defined as

$$\begin{aligned} \textrm{GD} = \frac{\sqrt{\sum _{i=1}^{|Q|} {d_i}^2}}{|Q|} \end{aligned}$$
(19)

where Q is the obtained POF and \(d_i\) is the Euclidean distance between the i’th solution in the obtained POF and the nearest solution in the true POF, \(Q_{\textrm{true}}\). The GD is to be minimized.

The inverted generational distance (IGD), like GD, measures the closeness of an obtained POF to the true POF, and also the diversity of the obtained POF (Tsai et al. 2010; Coello Coello and Sierra 2004). IGD, to be minimized, is formulated as

$$\begin{aligned} \textrm{IGD} = \frac{\sqrt{\sum _{i=1}^{|Q_{\textrm{true}}|} {d_i}^2}}{|Q_{\textrm{true}}|} \end{aligned}$$
(20)

The spacing metric, which measures the diversity of an obtained POF, is defined as

$$\begin{aligned} \bar{S} = \sqrt{\frac{1}{|Q| - 1} \sum _{i=1}^{|Q|}{(\bar{d} - d_i)}^2 } \end{aligned}$$
(21)

with

$$\begin{aligned} d_i = \min _{x_j \in Q \wedge j \ne i} \sum _{k=1}^{n}{|x_{i,k} - x_{j,k}|} \end{aligned}$$
(22)

and

$$\begin{aligned} \bar{d} = \sum _{i=1}^{|Q|}{\frac{d_i}{|Q|}} \end{aligned}$$
(23)

where \(d_i\) is the Euclidean distance in objective space between solution i and its nearest neighbor in Q.

The error rate, ER, is the proportion of solutions within an obtained POF that are not members of the true POF. This metric, which is to be minimized, is an indicator of how well an algorithm is able to find the true POF. ER is formally defined as:

$$\begin{aligned} \textrm{ER} = \frac{\sum _{i=1}^{|Q|}{e_i}}{|Q|} \end{aligned}$$
(24)

where \(e_i\) is a binary variable indicating solution i’s absence from the \(Q_{\textrm{true}}\).

The convergence metric, C, does not require the use of the true POF. C, given two sets of non-dominated solutions A and B, indicates the percentage of solutions in B which are dominated by A. The performance measure is expressed as:

$$\begin{aligned} C(A,B) = \frac{|\{b \in B | \exists a \in A : a \prec b \}|}{|B|} \end{aligned}$$
(25)

Hypervolume (HV) measures the volume of the objective space dominated by the obtained POF given a reference point (Zitzler et al. 2003). HV, to be maximized, is calculated using

$$\begin{aligned} \textrm{HV} = \textrm{volume}(\cup V_k) \ \forall q_k \in Q \end{aligned}$$
(26)

where, for each solution \(q_k \in Q\), \(V_k\) is the hypercube constructed between \(q_k\) and the reference point.

Algorithm effort, AE, is the ratio of computational time to the number of solutions in the obtained POF. Formally, AE is expressed as

$$\begin{aligned} \textrm{AE} = \frac{T}{|Q|} \end{aligned}$$
(27)

where T is the computational time to obtain Q.

The spread measure, referred to as \(\Delta \), evaluates the diversity of the obtained POF (Deb et al. 2002). A larger \(\Delta \) value indicates that the approximated Pareto front may not be evenly distributed in the objective function space, and the search may be stuck only in certain regions. The spread measure is defined as:

$$\begin{aligned} \Delta = \frac{d_f + d_l + \sum _{k=1}^{|Q|} {(\bar{d} - d_i)}}{d_f + d_l + (|Q| - 1)\bar{d}} \end{aligned}$$
(28)

where \(d_f\) and \(d_l\) are the Euclidean distances between the extreme points in the true POF and the extreme points in the obtained POF.

6.6 Suggestions for future work

It is recommend that future research in meta-heuristics for portfolio optimization focuses on complex portfolio models that include multiple constraints inspired by the real world. For example, liquidity constraints, sector capitalization constraints, bounds on cardinality and constraints concerning budget allocation. Alternatively, these constraints could be reformulated as additional objectives to be maximized or minimized. It is encouraged that future work look beyond the CCPP and toward heavily constrained portfolio models. Furthermore, there is a need for a new and comprehensive benchmark suite that is portfolio model agnostic. The benchmark suite should test how the algorithms would have actually performed in the real world rather than how close the solutions found by algorithms are to a POF for a specific portfolio model. The performance of the algorithms can then be compared to market indices.

ABC, DE, FA GA, PSO are well-studied approaches to portfolio optimization and adaptations of these algorithms to constrained multi-objective problems should be explored. SPEA2 has been used extensively in the reviewed work and has been regarded as a fast approach that consistently outperforms other approaches. Other noteworthy approaches are NSGA-II and PESA. It is encouraged that multi-objective approaches optimize for more than three objectives by modeling real world circumstances.

Lastly, future work should assess the ability of meta-heuristics to optimize dynamic portfolio optimization problems where objective(s) and constraints may change over time. For example, in a day trading environments where a change in asset prices changes the fitness landscape. The development of algorithms that are able to scale to larger asset spaces, e.g., hundreds of assets, is also encouraged. One possible solution to this is to change the solution representation from a vector of fixed length to a set-based notation. Future work should also investigate the use of algorithms such as prediction models that predict future asset prices, and perform portfolio selection based on the predict prices.

7 Conclusion

This paper conducted a thorough review of the current state of portfolio optimization with respect to evolutionary and swarm intelligence algorithms. The necessary background on portfolio optimization concepts, such as objectives, constraints, and portfolio models, was provided. Furthermore, a brief introduction to the types of algorithms examined in this paper was also given. The discussion and analysis that followed showed that evolutionary and swarm intelligence algorithms are well-established approaches to portfolio optimization. Decades of work have produced a variety of unique and successful approaches to identifying optimal portfolios. Particularly, genetic algorithms (GAs) and particle swarm optimization (PSO) are the most popular meta-heuristic approaches to portfolio optimization. Other algorithms like genetic algorithms are also viable approaches to portfolio optimization. The performance of lesser studied algorithms is largely an unexplored area; however, initial results are promising. The majority of the reviewed work considered portfolio optimization as a single-objective optimization problem, although, multi-objective approaches have shown to be capable of obtaining higher quality solutions. Future research in using meta-heuristics to optimize complex portfolio optimization problems is encouraged and suggestions for conducting said work are given. For example, overcoming the degradation in performance was reported for large scale portfolio optimization problems; proposing algorithms for dynamic portfolio optimization problems, and benchmarking the performance of algorithms against existing investment strategies.