2.1.4. Multi-Objective Function

The multi-objective function presented aims at minimizing the *TIC* and the *TGC*, where the *TIC* is formulated by means of the Equations (3) and (8). The *TGC* is calculated using Equations (1), (6) and (7).

$$\min(TGC) = \min\left(PGC + QGC + PLC\right) \tag{9}$$

$$\min(TIC) = \min\left(FIC + GIC\right) \tag{10}$$

Subject to the following constraints:


$$P\_i(\theta, V) - P\_{\mathcal{G},i} + P\_{\mathcal{D},i} + P\_{\mathcal{F},i} = 0 \tag{11}$$

$$Q\_i(\vartheta, V) - Q\_{\mathbb{G}, j} + Q\_{\mathbb{D}, i} + Q\_{\mathbb{F}, i} = 0 \tag{12}$$


$$|S\_{ij}| \le S\_{ij}^{\max} \tag{13}$$


$$V\_i^{\min} \le V\_i \le V\_i^{\max} \tag{14}$$

$$
\theta\_i^{\text{min}} \le\_\circ \theta\_i \le\_i \theta\_i^{\text{max}} \tag{15}
$$


$$P\_{\mathcal{G},i}^{\min} \stackrel{\sim}{\rightharpoonup} P\_{\mathcal{G},i} \stackrel{\sim}{\rightharpoonup} P\_{\mathcal{G},i}^{\max} \tag{16}$$

$$Q\_{\mathbf{G},i}^{\min} \le Q\_{\mathbf{G},i} \le Q\_{\mathbf{G},i}^{\max} \tag{17}$$


$$P\_{\mathcal{F},i}^{\min} \le P\_{\mathcal{F},i} \le P\_{\mathcal{F},i}^{\max} \tag{18}$$

$$Q\_{\rm F,i}^{\rm min} \le Q\_{\rm F,i} \le Q\_{\rm F,i}^{\rm max} \tag{19}$$


$$f\left(P\_{\mathcal{F},i'}P\_{\mathcal{F},j'}Q\_{\mathcal{F},i'}Q\_{\mathcal{F},j}\right) = 0\tag{20}$$

where *<sup>P</sup>*D,*i*, *Q*D,*i* represent the active and reactive power demand in bus *i*. The Power System Analysis Toolbox (PSAT) [52,76,77] is used to evaluate the power flow.

#### *2.2. Multi-Objective Tabu Search Algorithm*

Tabu search is the heuristic method used in this work, proposed by Glover [53]. It is based on local search with different strategies to escape the local optima, such as by means of long- and short-term memory analysis, giving the model the ability to change the search area.

The local search consists of making a *movement* between two interchangeable elements selected in the actual search area (called *neighbourhood*) to find a solution that satisfies an objective function. As stated above, the heuristic employs two types of memory structures to store movements: the first one, short-term memory, provides the capability to avoid movements that do not result in favorable solutions in a fixed number of iterations. The short-term memory forces the algorithm to search in other directions inside the actual neighbourhood using one or more strategies such as: aspiration plus, elite candidate list, successive filter strategy, sequential fan or bounded change candidate list. In respect of the long-term memory, this structure sequentially stores every movement in a frequency list, and is used to modify the neighbourhood search areas by means of different strategies such as: modifying the choice rules, restarting, strategic oscillation patterns and decisions or path re-linking techniques.

The process employed to solve the multi-objective function to optimize FACTS and DG units location using tabu search is described in Algorithm 1. As a result, a list is obtained with all the solutions that are part of the Pareto front. The following subsections address the explanation of each algorithm line.
