# Constrained Multi-Objective Optimization of Simulated Tree Pruning with Heterogeneous Criteria
## 2 Materials and Methods
### Pruning as an Optimization Problem  
Algorithmic pruning optimization was introduced as an analytic tool by [PERSON] and [PERSON] [12]. In this context, a pruning is represented as a vector \(\mathbf{x}=\langle x_{1},x_{2},\ldots,x_{n}\rangle\) of cut locations, which correspond to individual internode identifiers. An example of this  
Figure 1: Elements of tree model representation: internodes (brown), terminal buds (dark green), and lateral buds (light green). Depth-first ordering is used to assign unique identifiers to internodes.  
is shown in Figure 2, which illustrates the realization of a pruning vector for a given tree model. Figure 2 also shows that a cut can have no effect if another cut is present higher up in the tree hierarchy. This behavior is actually helpful during optimization, where changes to the pruning vector can activate and deactivate individual cuts.  
The task of pruning optimization is to find a pruning solution that maximizes the values of selected quantitative objectives. Maximization of one objective, however, may result in a reduction of another objective. For instance, optimizing the crown shape towards some desired form may reduce the total resource accumulation of the tree, which affects the balance of vegetative and reproductive growth. Such conflict of goals is at the heart of multi-objective optimization proposed in this paper.  
Let us formalize the pruning optimization problem with respect to a given set of objective functions \(\mathbf{f}=(f_{1},\ldots,f_{m})\). The objective value of a pruning solution vector \(\mathbf{x}\) is, in this case, given by \(\mathbf{f}(\mathbf{x})=(f_{1}(\mathbf{x}),\ldots,f_{m}(\mathbf{x}))\). A solution vector \(\mathbf{x}_{i}\) is said to be dominated by another solution vector \(\mathbf{x}_{j}\), which is denoted by \(\mathbf{x}_{j}\succ\mathbf{x}_{i}\), if the following conditions hold:  
1. \(\forall k\in[1,m]:f_{k}(\mathbf{x}_{j})\geq f_{k}(\mathbf{x}_{i})\);
2. \(\exists k\in[1,m]:f_{k}(\mathbf{x}_{j})>f_{k}(\mathbf{x}_{i})\).  
In other words, pruning \(\mathbf{x}_{j}\) dominates pruning \(\mathbf{x}_{i}\) if it is not worse in any objective, and is strictly better in at least one. Note that the above formulation of dominance corresponds to the case of objective maximization used in this paper. For the minimization case, one needs to invert the inequalities.  
The goal of MO is to construct a set \(\mathcal{X}=(\mathbf{x}_{1},\mathbf{x}_{2},\ldots,\mathbf{x}_{q})\) of non-dominated pruning solutions, known as the Pareto front. Only an approximation of the Pareto front can usually be obtained in practical problems. For this task, one can choose between several MO algorithms [29]. In this paper, the adaptations of three popular and efficient evolutionary MO methods were employed, known as NSGA-II [25], SPEA2 [26], and MOEA/D-EAM [27]. The latter is an extension of the original MOEA/D [30] method with a modified selection scheme that uses an external archive. In the terminology of evolutionary algorithms, the pruning solution vectors correspond to the genotypes, and their realizations on a tree model correspond to phenotypes. During the pruning optimization, the search is conducted in the genotype space, while the fitness evaluation is performed in the phenotype space.