2.2.1. Initialization

Network data are loaded in the PSAT and MOTS structures. The location of the swing bus is determined by the rotation-buses technique [78] that uses the shortest path function to determine the route from the slack bus to the end buses and initial solution is obtained. Then, a radial search tree is built by means of a minimum spanning tree using the *Kruskal* method [79].

```
Algorithm 1: Multi-Objective Tabu Search.
  input: electrical network;
  output: Pareto front list;
  variables:
  PFL: Pareto front list;
  TL: Tabu list; (Section 2.2.4)
  FL: Frequency list; (Section 2.2.5)
  Sk, Snewk: a solution of the problem;
  Xk: a bus or line of the electrical network;
  begin
      Initialization (Section 2.2.1)
      Obtain initial solution: S0.
      Store in Pareto front list: PFL ← S0.
      Initialize tabu list and frequency list: TL = {}; FL = {};
      repeat
          for ∀ Sk ∈ PFL do
              Solution neighbourhood (Section 2.2.3)
              Select the buses and lines candidates and store in CL: CL ← Xk
              for ((∀ Xk ∈ CL) && (Xk ∈/ TL)) do
                 Apply the possible movements and obtain new solutions: Xk → Snewk
                 Evaluate solution Snewk (Section 2.2.2)
                  if Snewk is non-dominated in PFL then
                     Update PFL ← Snewk
                  end
                 Update TL ← Xk
                 Update FL ← Xk
              end
          end
          Diversification and intensification process (Section 2.2.6)
          if diversification = TRUE then
              Diversification_process
          end
          if intensification = TRUE then
              Intensification_process
          end
          Stop criteria (Section 2.2.8)
      until Stop_criteria = TRUE;
  end
```