A constraint-based approach for optimizing the design of overhead lines

The use of computational methods in engineering design is a long-standing issue. Several mathematical approaches have been investigated in the literature to support the design optimization of engineering products. Most of them are focused on the optimization of a single structure, without considering a system of structures. The design of supports for electric lines requires tools for the management and sizing of a system of structures that interacts with each other under specific load conditions. This paper deals with a framework to support the design optimization of an overhead line using methods related to the theory of the Constraint Satisfaction Problem. The object-oriented model of a transmission line has been described and then implemented into a prototypical software platform. The parameters to be considered as variables are defined by the designer at the beginning of the optimization process. These variables are geometrical dimensions, poles locations, cable pre-tension, etc. The set of constraints is related to normative, climate conditions, datasheets, material limits, and expert knowledge. To demonstrate the effectiveness of this approach, a case study has been developed considering a variable number of constraints and parameters. In particular, the case study is focused on the design of a low-voltage sub-network between two distribution substations.


Introduction
The use of tools for design optimization is related to the recent improvements in computational methods such as evolutionary algorithms [1]. Evolutionary algorithms are widely applied in multidisciplinary fields for optimizing structures such as steel trusses [2,3] and towers [4,5], and processes such as additive manufacturing [6] and machining [7]. In literature, their application is mostly related to the multi-objective optimization (MOO) analysis instead of a problem with linear complexity where maximin fitness function (MFF) can be used [8]. Genetic Algorithms are typical stochastic evolutionary methods used in design optimization [9]. These optimization methods are robust and cope with multimodal functions. They can efficiently achieve a global minimum or maximum for an optimization function [10]; however, they are also computationally expensive in terms of the necessary number of flow analyses required for convergence [1].
Evolutionary algorithms often require additional tools for supporting the required computational analysis [1]. Therefore, two types of software are involved in such optimization problems: optimization tools and computer-aided tools. An optimization tool is a software which provides methods for solving the optimization of parameters through mathematical algorithms. Examples of commercial tools for the optimization analysis are modeFrontier ® [11], iSight ® [12], and Optistruct ® [13]. On the other hand, computer-aided tools are used for engineering analysis such as structural, fluid-dynamics, electronics, and etc. [14]. These tools can be numerical software, such as Finite Element Method (FEM), or analytical solvers. They can be Computer-Aided Engineering (CAE) applications or Design for X (DfX) solutions for the engineering design. In the context of design exploration, CAE tools are generally applied to select a feasible system architecture that satisfies all requirements [15]. Therefore, these tools are often involved in the optimization loops to support human designers in understanding and predict the process behavior [16]. The simulations with computer-aided tools can interact with optimization tools such as genetic algorithms [1]; however, the computational time often limits this interaction. A few numbers of commercial tools integrate simulation tools with optimization ones. In other cases, the interaction is performed by developing scripts and plug-ins. Therefore, the resulting interoperability is partially limited to the employed tools [17].
Due to market competition, solutions based on design automation, product configuration, and design optimization have been increasing in the field of engineering products. Product configuration is an essential means for selecting various components to constitute a customized product to meet the individualized requirements of a customer [18]. Johansson studied a method that helps manufacturing companies to manage and reuse the engineering knowledge related to Engineer-To-Order products [19].
A recent challenge concerns the interaction between design optimization, simulations, and configurations [20]. While product configurations regard the selection of components from predefined libraries to obtain feasible solutions that satisfy the design constraints [21], the design optimization concerns the searching of the optimal product configuration in terms of parameters which maximize the performance [22]. One of the limits of the traditional configuration approach is to satisfy the customer's requirements with configurations that have not been yet deployed in the past [23]. To solve this bottleneck, some scholars use Knowledge-Based Engineering (KBE) tools and methods to support the expert engineers in the automation of the design process using rules and formulas related to the product know-how [24]. As an answer to this issue, Sandberg et al. propose a Knowledge-Bases Master Model to integrate configurations and multi-disciplinary optimization for the concurrent design of jet engines [25]. In the context of production planning, Pitiot et al. propose the concurrent use of a Constraint Satisfaction Problem (CSP) to support the product configuration with an evolutionary optimization algorithm [26].
Albers et al. highlighted how a lack of tools still exists in the development of flexible and agile design methods to support the optimization workflow [27]. While product configuration allows past design solutions to be reused and new product variants to be defined and pre-designed, the deployment of new solutions requires an analysis of technical feasibility. Traditional commercial tools cannot support the designer from the early configuration phase to product optimization with the definition of an early embodiment draft. The integration of configurations and design optimization tools requires the development of a dedicated design platform. In this context, quick response and short product delivery are the main goals to increase competitiveness while ensuring company profitability. When targets are not achieved, numerous time-consuming iteration loops are necessary to optimize the initial solution [28]. The study here proposed aims at reducing the time and cost of engineering systems from the early design phases integrating a CSP analysis with parameter optimization. This paper is based on a CSP approach for solving engineering optimization problems which require the satisfaction of constraints related to restrictive normative and standard. The methodological approach supports the engineer during the embodiment design phase, generating a solution with optimized parameters. A prototypical software tool has been developed to support the definition of the CSP model reducing the programming effort by the final user and overcoming the implementing limits of other CSP applications. As a test case, the design optimization of a low-voltage distribution line has been described with constraints and parameters related to material, geometry, boundary conditions, layout, etc.
The paper is structured in seven sections. The following section introduces the research background related to CSP tools (Sect. 2), then design issues related to overhead lines are described in Sect. 3. Secondly, Sect. 4 describes the research approach including the management of variables, parameters, constraints, and functions. This section also includes the approach used for software development, cost modeling, and structural analysis. Section 5 shows a test case focused on the design of an overhead line. Finally, Sects. 6 and 7 ends with discussion and conclusions.

CSP background
Generally, CSP models are used to define a design problem in a mathematical-based representation with parameters, variables, functions, and constraints [29]. A CSP solver reduces the space of solutions by the constraint satisfaction analysis [30]; therefore, this approach is common in mathematical and artificial intelligent applications [31]. As an alternative solution to evolutionary algorithms, a CSP approach can be also used for optimizing a design problem [32]. The space of solutions can be reduced by the calculation of objective functions and generating the relative Pareto graph. The use of Pareto-optimal solutions of a multi-objective problem, rather than a single result of a converted single-objective optimization problem, can provide useful information such as which parameters are dependent or independent, which design parameters are more sensitive to the final result, which objective functions are independent or correlative, and so on [1]. Using this expedient, the solution of a CSP problem can be also used for an optimization analysis, based on the constraint propagation, which is generally called as Constraint Optimization Problem (COP) [33].
Example of CSP applications are well known in Industrial Engineering [34], robotics [35], product configurations [18], Engineer-To-Order [36], Product Lifecycle Management [37], etc. Even if some commercial software is available, customized tools are still used in the design of complex systems.
Common software tools for solving CSP problems are Gecode [38], MiniZinc [39], and FlatZinc [40]. In this software, the available solving-methods are backtracking [41], branch and bound [42], and depth-first search [43]. Regarding Gecode, it is an open, free, and fast toolkit used to solve CSP problems. Gecode already contains many searching features but it is only programmable at a low level. On the other hand, MiniZinc is a medium-level constraint modeling platform based on FlatZinc language to directly interact with solver such as Gecode [44].
Following a CSP approach, the designer can define his/ her problem in a declarative way by stating the constraints that he/she wants to be satisfied in his/her analysis. The solution is obtained by alternating constraint filtering algorithms with a search engine. However, since a lot of CSP tools are generic and open-source, they result difficult to be implemented inside a specific design context without implementing new sections of code. Therefore, this aspect limits its use in the context of engineering design. Considering these limitations, the authors aim for an object-oriented structure to support the modeling of a CSP problem for the design of engineering systems.

Overhead power lines
The design optimization of overhead lines is a current topic in the literature due to the growing interest in reliable electricity distribution. The distribution of electricity is very important for society, typical outage sources are related to weather conditions, such as ice, snow, wind, and storms [45].
The design of power lines is a complex process where electrical requirements meet the mechanical constraints [46]. While international normative provides the calculation schemes for supporting the engineering design, national normative defines the boundary conditions and loads to be considered for the design of the structural supports [47]. The pole strength and the cable tension are the main parameters that regulate the configuration of overhead lines from a structural point of view. The traditional design of overhead lines involves configuration tools and numerical solvers to verify the structural strength of the overall line, considering an operation period of about 50 years [47]. Figure 1 describes a simplified example of a low-voltagepower line. A typical power line network consists of a set of poles that support the conductors. The number of poles increases the complexity of such a system because each pole requires a set of calculations and checks as required by normative.
Early studies on the design optimization of these overhead lines started in the'60 [48]. In the'80, Olbrycht studied an algorithm to optimize the cost of transmission lines considering a fixed number of poles to be arranged on a defined route [49]. In the second part of the '90 s, a Knowledge-Based System was proposed by Picard et al. to support the tower configurations and the cost per kilometer of  [50]. However, they did not consider any simulation activity during the described design phase. Noháčová and Noháč analyzed the necessity to develop a software tool to simplify design layout and automate the normative verification minimizing mistakes in the design of overhead lines [51]. More recently, in 2012, Raghavendra proposed a design optimization based on FEM simulations [52]. He used STAAD PRO-04 ® and ANSYS ® software as simulation solvers. However, his work was only based on the optimization of a single tower. Therefore, he did not analyze the design optimization extended to a complete transmission line. Recently, several scholars have been focusing on safety optimization and cost reduction [46,53,54]. In this design context, the change of a single parameter, such as the conductor diameter, effects the loading conditions on the structural supports and their foundations [53]. Since the construction of such lines involves heavy investment [46], a careful analysis needs to be carried out at the planning stage when the decision is making.
While a lot of research is focused on the FEM simulations of a single-pole or support; there is a lack of tools to support the design optimization of an overhead line, which is a set of poles and conductors. Some software-tools, such as ProLED [55] can support the configuration and calculation for each branch of an overhead line; however, parameter optimization has not been yet evaluated for such complex systems. To fill the gap between traditional design practices and the optimization of overhead lines, the paper describes an interactive approach that includes the knowledge-base and constraint analysis at the early design phases.

Design approach
This section describes the method for optimizing a system of structures such as an overhead line using a Constraint Satisfaction Problem approach. The resulting domain of the satisfied solutions is optimized considering two objective functions such as cost reduction and the increase of the strength of the poles. The proposed design workflow is described in Fig. 2.
The approach for designing overhead lines also includes the modeling of the geographical area. Here, the terrain model is based on the 3D surface carried out from the database of Google Earth ® . As an alternative, a GIS model could be also used. Then, the resulting 3D surface is imported into a 3D CAD tool using file formats such as STL and IGES. At this level, the user defines the 2D grid related to the area where drawing the overhead line. This 2D-grid is a planar surface placed on a horizontal plane under the 3D surface of Fig. 2 The design workflow of overhead lines with CSP analysis and optimization phase the terrain. The grid definition regards the projection of the surface on the horizontal plane. After defining a pitch for x and y direction, the engineer can sketch a grid of lines in this 2D area to generate a discretization of the space in several nodes (Fig. 2). Each node represents a possible location to put a pole of the overhead line. During this phase, the user must also define the position of each obstacle on the 2D grid. The position of each obstacle is defined as a constraint inside the CSP model when assigning a position for each pole of the overhead line. Therefore, the terrain's model is represented by a grid of nodes, where some nodes are freeposition and others are obstacles (location constraints). Each node is also associated with a relative value of altitude to computing the right difference in height between each pole. Figures 2, 3 describes the approach for supporting the phase of the CSP analysis and modeling. The proposed CSP modeling phase requires a Knowledge Base to support the definition of the O-O product structure of the system to be analyzed. The employment of a Knowledge Base is here described as a method to support the definition of the product structure with the CSP problem. The resulting O-O structure also includes the list of variables, parameters, functions, constraints, and relationships. The approach has been studied as generic, even if the case study here described is focused on the design of overhead lines.
As described in Fig. 3, the Knowledge Base used for defining variables is related to the study of layout, geometry, and materials. While the definition of the fixed parameters (also called constants) is related to the study of the boundary conditions and external loads, functions are here related to the knowledge domain that interests engineering analysis and calculations. Finally, constraints are defined by limits due to the domain of the knowledge base related to normative and experience.
The input of the process described in Fig. 3 begins with the definition of the Configurations range. Configurations range describes the output of the conceptual design phase where the engineer selects the early cases to be analyzed and optimized in his/her study. This information is used to set the range of the values of the parameters inside the CSP model. This CSP model inherits its structure from the O-O product structure that has been already defined employing the support of the Knowledge Base.
CSP tool is proposed for defining and solving the Constraint Satisfaction Problem. A GUI interface has been implemented in VisualBasic.NET with a tool for generating scripts (CSP script). CSP script supports the automatic generation of the code for solving the problem with the MiniZinc language. In fact, the MiniZinc solver can invoke the Gecode solver for computing the domain of the satisfied solutions.
The result of the analysis carried out by the CSP tool is a list of satisfied solutions represented by a table and a tree-view, as described in Fig. 2. Since these satisfied solutions are not yet optimized, an objective function is defined to analyze the results considering different possible design criteria. This reduced space of solutions is ordered by two optimization functions to generate a Pareto graph. A Pareto front analysis is used to support the decision-making process searching the optimum solution. The selection of the optimum case from the Pareto front is based on the decision of the design team. Afterward, the resulting optimal configuration is represented into a 3D CAD model. CSP tool consists of a Graphical User Interface (GUI), which is used to support the modeling and definition of the constraint-based problem, and a Solver unit for the variables computing. While the GUI interface allows variables and constraints to be added to the problem definition, the Solver unit is a Gecode toolkit invoked to configure the model, which is previously defined by parameters, variables, and constraints.
The Solver unit can calculate a CSP problem using a backtracking algorithm, which is already implemented in the employed Gecode toolkit. This Solver unit also implements a pre-optimization process of the results. The objective function is defined as a special type of constraint. This type of constraint is only considered at the end of the configuration process, once all possible solutions are searched. In particular, the list of solutions is ordered by the values achieved when the objective function is calculated.
All generic classes necessary for modeling the product structure of an engineering problem have been implemented using the GUI interface. Each class has been structured as an object-oriented block with its properties and methods. These classes, developed in Visual Basic.Net, have been classified into two groups: CSP Model and Binder. Figure 4 describes the architecture of the proposed CSP tool including the specialization activity for the overhead line project. The user interacts with this system through the setting of the problem by the GUI interface. The CSP Model has been developed as a generic set of inheritable classes. This class structure contains the definition of constraints and variables which must be specified into the inherited classes. In this paper, the structure of the implemented component follows the scheme highlighted in Sect. 4.2.
The level of Binder consists of classes that have been defined to interact with the module of the GUI interface. While the user can add/edit constraints and variables using the graphical interface, the Binder classes provide the methods to translate the input data into the MiniZinc framework. This approach aims to support the user in defining the CSP model without using any specific programming language. Therefore, in the Binder classes, there are methods to write a script to be sent to MiniZinc for the solving of the CSP problem. When the user runs the CSP solution, the CSP Solver invokes Gecode in the background and the definition of the CSP model is translated in Gecode language for the computing. The Gecode toolkit, which implements the backtracking algorithms to solve CSP problems, elaborates on the instructions to be solved and then returns the results. Summarizing, the Binder module generates the script that translates the definition of a CSP model in a MiniZinc representation, which is more suitable for computing.
Regarding the specialization of the tool for the case study of overhead lines, the user defines the product structure by the GUI interface, using the generic classes already provided by the CSP tool. In this case, the customization concerns the definition of some inherited O-O classes to represent objects such as a pole, conductor, bracket, isolator, and system layout.
The user can define the structure of each pole-object and then assign a quantity number. The CSP tool can automatically generate a set of variables, constants, and constraints for each objected which have to be computed in the CSP solution. This representation is reported in the GUI interface. The user can modify the resulting model if some part does not convince him. After the problem is solved, the results are gathered in the GUI interface and also exported into an XLSX file.

System modeling
The component structure of an overhead power line has been analyzed at the beginning of this research activity. For the representation of the product structure, the Unified Modeling Language (UML) has been chosen. The diagram, reported in Fig. 5, describes the relationship between each different component in terms of associations, dependencies, references, and so on. How each component interacts with the system is represents into the component diagram. The highlighted composite structure diagram adds the internal structure of a classifier to the configuration and relationship of parts. Therefore, each component is represented as a class element.
This composite structure diagram has been defined for supporting the development of the relative CSP model in the O-O representation of components, variables, functions, and constraints.
Reading the diagram in Fig. 5, the root component is the line system, which is the configuration of the overall power line. It consists of a collection of poles, which are related to conductors, isolators, and brackets. The normative loads are represented as an interface object, which is associated with poles, conductors, and isolators. Parameters for the structural calculations are related to this interface level. Each interface can include specifications regarding the relative country and local normative. A second interface, called calculation, is highlighted in Fig. 5. This interface implements the knowledge base for the evaluation of the loading entity due to each boundary condition such as wind, snow, ice, seismic, etc. Cost calculation and other functions are also included in this level. Concluding, geometrical variables are related to the shape and sizing of conductors and supports

Variables, parameters, and constraints
Regarding the number of poles and their geometrical parameterization, these parameters affect the final cost of a line and its relative structural behavior. The engineer can select the range of variation for the number of poles and the CSP tool automatically generates the different models with a presetting of variables, constraints, and constants. The approach is dynamic because the number and type of poles change the set of constraints and their values.
A pole can be represented by its geometrical parameters, but also by parameters such as material, boundary conditions, and loading settings. Figure 6 shows a 3D-CAD model of a low-voltage pole. These parameters are indirectly changed by the pole's specification (es. "16D", see Table 1) which is a designation including the value of the height in meter and the class of the pole. The class of a pole individuates a specific configuration of values for top and bottom diameters. The conductor is represented only by a variable, which is the diameter of the external cable. This diameter is responsible for the reaction generated by the wind pressure to the pole.
The O-O model of the overhead line includes a set of variables (1) and constraints (2). The definition of such values and objects is an interactive process which commits the engineering team.
Continuous or discrete domains have been defined for each variable. A set of n domains (3) have been defined for solving the CSP problem (4). While a continuous domain concerns values or intervals of R, a discrete domain is an enumerative and finite set of values (they can be Boolean, string, etc.). Therefore, a mixed constraints domain is applied in this research due to the conjunction of discrete and continuous constraints for variables. Regarding the CSP model, this paper considers the arcconsistency approach [56] obtained through the filtering process of the conjunction of constraints. Since the arc-consistency is 2-consistent, the node consistency (1-consistency)  is guaranteed according to the definition of k-consistency given by Kumar [41]. Therefore, the solution search engine of the proposed CSP tool uses the backtracking algorithm combined with the constraint propagation. The use of the backtracking algorithm is necessary due to the lack of the proof of the global consistency. In particular, this paper implements a simple backtracking algorithm, combined with constraint propagation method due to the dimension of the space of solutions to be investigated. This algorithm, which has been already implemented into the Gecode framework, is largely used in many research-works. A complex design problem concerns a set of parameters related to geometry, materials, boundary conditions, loads setting, etc. This paper considers as "variables" the variable parameters and as "parameters" the fixed values used into the analysis process. Figure 7 shows the main grouping of parameters used for the design of overhead lines. The geometrical parameters (geometry domain) regard the geometrical representation of the power line systems, including the geometry and the position of each pole. Table 1 shows an example of a list of standard steel poles, grouped by class (D, E, F, G, H, J). During the design optimization workflow, the user can consider two different set of variables: total height and class, or total height and diameter values.
Moreover, the pole representation also includes its geographical position. Each pole has its georeferencing position described by GPS coordinate. However, relative threedimensional coordinates were used to define the position of each pole into the geographical domain of the CSP problem to be analyzed. Figure 8 describes a simplified layout of a transmission line scheme with three poles. The approach considers the parameterization of each pole position with three Cartesian values. The gray-colored surface represents the shape of the terrain where the layout has to be drafted. While x and y are the coordinates of the projected surface on a horizontal plane, the z coordinate represents the different levels of height for the terrain surface. During the design of such a system, the number of poles, their geometry, and the coordinates of their position are regulated by a range of values and a set of design constraints. The design constraints related to the line layout concern the limit values for x and y coordinate, the maximum and minimum pole height, the maximum and minimum pole number, etc.
The materials parameters are related to the type of pole (steel, concrete, wood, etc.) and conductor (aluminum, copper). On the other hand, the boundary conditions concern parameters regulated by national and international normative for what concerns the wind speed and pressure, the ice and snow presence, and combinations of them. These parameters are all dependent on the graphical region area and altitude. A different set of parameters, called loads settings, describes the factors to calculate the forces to be considered for the structural analysis, including the conductor pre-tension (Fig. 7) which can be considered as an operation parameter. Design Constraints have been described and formalized into the CSP problem using an analytical approach. This set of constraints concerns the formalization of the explicit knowledge, analyzed into normative and product catalogs, and implicit knowledge, which is the set of information related to the know-how of the expert engineers. Summarizing, the resulting list of constraints has been classified into four types: The pole's strength is a constraint that limits the maximum pulling force applied to the head of a pole. This is a value provided by the manufactures of poles. The conductor's strength is the maximum axial pulling force applied on each electrical cable. The span length is a constraint related to the engineer's expertise; therefore, it is related to the implicit knowledge. On the other hand, the Ground clearance is evaluated inside the normative schemes and it is related to the line type. Finally, the line cost is an economic constraint evaluated and defined by the design team at the beginning of the conceptual phase.

Cost model
The cost for construction and erection of electrical overhead lines depends on several factors [57]. Focusing on overhead powerlines up to 150 kV, the list of each cost item is following reported: • Cost for the acquisition of ROWs (Right-Of-Way) and land cost; • Cost of the equipment purchase from manufacturers; this cost item includes poles, cables, insulators, safety equipment, foundations, etc.; • Cost for material transportation; • Cost for line erection, which also includes the onsite engineering works and cables arrangement; • Cost for engineering design and project management. Some of these factors, such as the Right of Way, land cost, and material transportation are highly related to the geographic region where the line is erected; therefore, these items are not dependent on the geometrical parametrization of the overhead line [46]. For this reason, a simplified cost model has been implemented in this paper. The model takes into account the cost of items related to equipment purchases. Figure 9 describes the main components related to the proposed costing analysis.
The analyzed cost for an electrical overhead line is described in (5) where the term C T represents the total cost of a line, N is the number of poles, C P is the cost of each pole, C F is the cost of each pole's foundation, l is the length of each cable path, and finally, C C is the cost of a single cable. In particular, the term C P is related to the geometry and class of the pole, which are described by top diameter, bottom diameter, height, and section thickness. On the other hand, the cost of each foundation is related to the specific pole. Every pole has its own foundation. The total cost related to cable paths (5) is multiplied by 3 because this paper analyzed the lines with 3 cables [58]. The installation and erection phases are not considered in this paper because little changes in the Fig. 8 The schematic representation of a simplified line where each pole has a parametric position described by Cartesian coordinates geometry of poles, cables, and foundations do not show a great variation in terms of installation and erection cost.
While some cost data related to poles is already shown in Tables 1, 2 describes an example of a conductor list with the unitary cost per km.

Structural model
In order to determine the forces applied on the supports by the conductors in the different loading conditions, the following equations have been considered. The conductor curve between two supports at the same height can be mathematically described by a hyperbolic catenary equation [59]: where x is the horizontal distance in meter (m) from the lowest point of the catenary, y(x) is the vertical distance in meter (m) from the lowest point at x, H is the horizontal component of the tension (N), w is the weight per unit length of the conductor (N/m).
When the spans of the overhead line are small (< 400 m) [60], the equation of catenary can be substituted with a parabolic equation [61], which has the advantages of easy showing relationships between sag, tension, weight, and span length. This paper considers the parabolic equation as an approximation of (6) because the analyzed line spans are between 50 and 200 m.
Using the parabolic approximation, in case of even supports, the sag ( ) can be calculated as follow [59,61]: where l is the horizontal distance (m) between two consecutive supports (S1 and S2). On the other hand, if the supports are not at the same level (Fig. 10), the distance of the lowest point of the conductor from the supports can be calculated as follow: While the sag is calculated by: Fig. 9 The line components for the cost analysis The loading conditions regard changes in temperature, wind velocity, ice, and snowing sleeves. The effects of these changes must be taken into account by mean of the state equation and the initial temperature and linear weight conditions [62,63]: where is the inclination angle of the span, E is the Young modulus of the conductor, A is the sectional area of the conductor, is the conductor thermal expansion coefficient, 0f (11) l 2 cos 2 24 is the temperature relate to the loading condition, and 0i is the reference temperature in standard condition without external loading. The previous equation, which is a cubic, can be solved using Cardano's method [64]. Thus, the resulting tension can be calculated starting from changes in temperature, load, and the initial tension. The obtained value must be considered in order to verify the mechanical resistance of the conductor and the supports. The implemented verification process can be resumed as shown in Fig. 11. The process is repeated recursively for each span of the line. Firstly, the diameter of the ice/snow sleeve on the conductor is calculated, following the reference Fig. 11 Scheme of the implemented verification process for each loading condition normative [47,65] for each loading condition (temperature, wind, ice/snow presence). Secondly, after the conductor analysis, also the supports are verified.
The wind action on the conductor/sleeve is calculated knowing the geometry of the sleeve and the wind speed and following technical standards. Furthermore, the total linear action on the conductor, due to the weight of the ice/snow, the weight of the conductor itself, and the wind action, is calculated. After that, the state equation can be applied, and thus the sag can be calculated as well as the tension on the line. This allows to verify the conductor resistance. On the other hand, the wind actions to the supports and to secondary items such as the insulators are calculated following the current technical standards. The wind force is applied to the top of the support. Finally, the resistance of the supports is verified, as well as the conductor clearance from the ground.

Test case
This section deals with a case study focused on the design of an overhead low-voltage line located in Ancona (Italy). The analyzed area has an extension of about 0.25 km 2 and includes some obstacles. The obstacles represent the areas where avoiding the crossing of the line and the presence of the supporting poles. Using the proposed CSP tool, the user can study the optimal configuration of the line considering as objective functions the overall cost reduction and the increase of the strength of the poles. Figure 12 describes the main parameters used to represent the parametric model of a pole for overhead lines. The assignment of each value has been discretized using interpolating curves in functions of the pole's height and class (D, E, F, G, H, J). Using the highlighted variables, height, and class, the other pole's information such as cost, diameters, and the maximum pull force can be obtained. In particular, Fig. 12 describes the information related to 14-m poles, with a total height of 14 m and 10.5 m over the ground.
According to NNA CEI 11-4 [65], the Italian territory is divided into two main climate areas, defined as "Zone A" and "Zone B". Zone A includes all territories with height above sea level inferior to 800 m of middle Italy, Sud Italy and islands. Zone B includes all territories with height above sea level superior to 800 m of middle Italy, Sud Italy, North Italy, and islands. Climate zones influence wind velocity and the amount of ice/snow. These aspects have been considered for analyzing and setting the loading conditions related to wind speed, ice weight, and snow sleeve for the described test case.
The constraints of the problem are related to the knowhow, normative, and standard for the design of the overhead power lines. Following a description of the main constraints studied in this test case (Table 3).

Results
The Secondly, the optimization process has been elaborated, considering the reduction of cost and load factor per each pole. The load factor (L f ) regards the ratio between the applied pull load and the maximum (allowed) pull load (12). This second analysis has been performed in 300 s. The report of this second analysis is a new tree-view that highlights the nodes achieving a high value of the optimization function.
The result of the second analysis is reported in Fig. 14 which describes the relation between cost reduction and structural behavior, which are the subject of the optimization study.
The orange line (Fig. 14) is the outlined Pareto front, which represents the space of the optimum solutions which minimizes each objective. In particular, the described data are related to the employment of conductors with a diameter of 7.56 mm. The total cost exposed is related to the purchasing of poles and conductors. The load factor reported in Fig. 14 refers to the average load factor. This factor is the utilization coefficient, evaluated per each pole according to (12).
As highlighted in Fig. 14, the two objectives have the opposite behavior. In fact, an average reduced load factor per each pole means the employment of bigger poles with a cost increase. On the other hand, a cheap configuration could involve smaller supports with an increase of the loading forces. The number of poles and their dimensions can affect the cost and structural behavior of such lines. Figure 15 shows the correlation between the number of poles and the average load factor. Analyzing the given Pareto front (Fig. 14), the configuration with a 75% load factor and cost of 11,000 € has been selected as the optimum case for this study. This solution refers to a configuration with 5 poles which optimizes the line path considering hills and obstacles. Figures 16 and 17 describe the resulting model of (12) L f = applied pull load maximum pull load  Fig. 18 reports the top view with obstacles highlighted in orange blocks. The 5-pole configuration is the result of the proposed design activity. The design approach, here described, shows how an overhead line can be pre-configured and optimized using a CSP-driven approach. The paper proposes a software tool that is based on a Gecode toolkit. While Gecode runs in the background, a GUI interface shows settings and results of the CSP problem. Using a CSP approach it is possible to select nodes avoiding the overlapping between poles, conductors, and obstacles that represent the design constraints.

Discussion
In this paper, a support approach is described for the design and re-design of overhead lines used for power transmission. The optimization of such lines is very important in every country in the world. While in developing areas new power lines are constructed every day, in the other parts of the world overhead structures need continuous changes. Therefore, there is the necessity of specifics design tools for this context.
A computational approach, based on the CSP optimization, is here proposed as an answer to overcome the limits related to the traditional design of overhead lines. The constraints-based approach allows several configurations to be first evaluated and then selected by optimization functions. The main outcome of the proposed approach is to provide tools and methods to reduce time in design and optimization processes.
The implementation of such a CSP method requires the definition of a set of variables. The number of variables increases the dimension of the space of solutions to be analyzed and the relative computational time. Therefore, a CSP analysis can be time-consuming. To reduce the time related to the problem definition, an object-oriented model has been implemented to reproduce the product structure to be analyzed. The expert user can edit this structure and defines the specialized classes of the CSP problem.    Moreover, the definition of the CSP model to be solved is supported by classes that translate the information added to the interface of the O-O product structure in a MiniZinc script to be sent to Gecode for the CSP solving.
Even if the paper describes a case study focused on the design of overhead lines, the proposed approach is generic and reusable with changes for the CSP optimization of different structures such as Engineer-To-Order products. There is a similarity between Engineer-To-Order products and overhead lines because both are customized solutions to meet the customer's requirements and specifications. In fact, the field of Engineer-To-Order also requires the employment of design tools for the efficient generation of product variants, as already discussed in the literature [66]. Focusing on the approach here proposed, the engineer can use the design method for defining a different CSP problem by the modeling of the related O-O structure and the editing of the specific variables, parameters, functions, and constraints to be applied in a novel context.
The employment of the CSP method seems to be suitable for this case study and all cases where the engineering design can be analyzed and formalized with an object-oriented model. Focusing of the CSP implementation, the most difficult phase is the definition of constraints and parameters that are related to the expert's know-how. Here, the formalization of the technical knowledge means to translate something, which is mostly in the mind of the designer, into an object-oriented model, using informatics tools.

Conclusions
A framework to support the design of overhead lines for power distribution has been described in this paper using an approach based on Constraint Satisfaction Problem. A software tool has been developed for modeling and computing the CSP problem with an optimization workflow. The early definition of the component structure of the system has been proposed to describe the relationship between each different component in terms of associations, dependencies, and references. The interaction between each component and its system is represented into a component diagram, where each component is represented by a class element.
The computational approach concerns the implementation of an object-oriented structure of the problem, including the definition of variables, constraints, parameters, and specified functions. A CSP tool supports the engineer with a GUI interface in defining the boundary conditions of the Constraint Satisfaction Problem. A MiniZinc script generates the Gecode code for the computation of satisfying solutions.
The parameters to be considered as variables are defined by the designer using the CSP tool. These variables are geometrical dimensions, poles locations, cable pre-tension, etc., and they are related to normative, material limits, boundary conditions, and expert knowledge. In this approach, the geographical layout has been discretized by a bi-dimensional matrix of nodes, where each point has a reference value of height in the physical model of the terrain.
The case study, here described, focuses on the design of a low-voltage line. Such a line is an overhead one, used for the power transmission between two substation points and covers an area of about 0.25 2 km. The achieved results show the effectiveness of the proposed approach to support a more agile and flexible design of overhead lines including an optimization analysis. The optimization system is dynamic and allows the management of variables constraints related to the number of components and their values. As future development, the described software tool can be also used for the design of overhead lines with power towers.