## 2 Related Works
### Optimization Algorithms for Controller Deployment  
From the perspective of optimization algorithms for solving controller placement problems, the common optimization methods for controller placement problems are based on integer linear programming (ILP), heuristics, clustering, etc. Reference [26] adopts hierarchical clustering to minimize the number of controllers while reducing the load difference between different controllers. Reference [27] proposes a network state-based traversal algorithm and a greedy algorithm that places the controller in polynomial time and improves the performance in the event of link failure. Reference [28] proposes a multi-objective genetic-algorithm-based controller placement strategy to minimize inter-controller delay and load distribution. In order to avoid repeated management and intervention of the controller and a sharp increase in link disconnection, Reference [29] considers the reliability and capacity of the controller, which determined the controller failure in advance. The authors propose a simulated annealing heuristic to solve problems on large-scale networks efficiently. Furthermore, controller dynamic placement is also a challenge. Most of the existing controller placement methods consider static placement. However, since the traffic constantly changes in large-scale or multi-domain networks, it is necessary to place controllers dynamically. Currently, machine learning is commonly used in dynamic controller deployment. Reference [30] proposes a Deep Q-Network-based Dynamic Clustering and Placement (DDCP) approach, which significantly improves the network performance regarding response time and resource utilization. Reference [31] proposes a Deep Q-Network (DQN)-empowered dynamic-flow data-driven approach to adapt to the dynamic network environment with flow fluctuations. In Reference [32], an algorithm based on a quadratic program is designed to solve the controller placement problem, and a dynamic switch migration algorithm is developed to deal with network congestion. In addition, Reference [33] quantitatively evaluated the control flow of ONOS, Floodlight, and POX controllers and obtained the control channel usage of the controller. The analysis of the control flow shows that the control flow is crucial to the scalability of the control channel, which also provides strong support for the necessity of establishing the delay model and link cost model. At the same time, the above research proves that the distribution of load in the network and the security composed of link failure and controller failure are of great significance to improving the network performance, which provides support for the establishment of the load model and security model to solve the problem of controller deployment. In summary, Table 1 summarizes relevant studies that mainly optimize one or more objectives such as delay, load, reliability, and energy efficiency. At the same time, through the summary of existing relevant research, it is found that most of the studies have ignored the determination of the number of controllers. References [20; 26; 28] consider the number of controllers that need to be deployed in the network. However, these studies did not consider the characteristics of each node when determining the number of controllers. Thus, MODECP is proposed to solve the controller placement problem. Firstly, the number of controllers is adaptively generated in the network according to the node characteristics. Then, a multi-objective model is established to balance the multiple objectives simultaneously in the network, including end-to-end delay, network security, controller load, and link cost, to obtain approximately optimal positions for controllers and approximately optimal assignments for switches.