1 Introduction

The use of distributed generators (DGs) is constantly increasing, and consequently the planning and the operation of electricity distribution networks is becoming more complicated [1, 2]. With DGs in a distribution network, the voltage profile and the power flow direction can significantly change [3, 4]. These disturbances lead to excessively high or low voltages, more frequent network losses, protection malfunctions and voltage collapses [57]. These problems are difficult to address with traditional control approaches for distribution networks. To address with these problems, distribution networks are becoming more active. An active distribution network has the means to control the power supply and the load using cooperative strategies and can satisfy safety requirements and reduce costs despite changing operating states [8].

Traditional centralized control strategies cannot meet these requirements and are not flexible. In [9], centralized optimization was proposed for satisfying voltage constraints in an active distribution grid. However, the order of the optimization problem is high and the computation times are substantial. Ref. [10] notes that with decentralized control, a global optimum may not be reached because each agent considers only its own objectives. Distributed control is more suited than centralized control to active distribution networks [11]. In [12], a distributed generator dispatching scheme for voltage support in distribution feeders was studied. Ref. [13] proposed a voltage regulation algorithm assuming remote terminal units at each DG and feeder capacitor. In [14] and [15], a voltage control protocol for a load tap changer and a DG was investigated; however, certain important voltage control devices were not included. Refs. [16] and [17] studied integrated control methods for active and reactive power for photovoltaic generators. However, only local control and external commands from PV inverters were studied, and optimizing the voltage over the entire network was not considered.

Voltage optimization algorithms must be adaptive in an active distribution network. In [1820], a genetic algorithm was applied to solve a voltage control problem. In [21], evolutionary particle swarm optimization was used, and in [22] and [23], a local learning algorithm combined with nonlinear programming was investigated. However, these algorithms require large amounts of data, have communication delays, and are subject to communication blocks.

In this study, a multi-agent-based method for distributed cooperative control of the voltages in active distribution networks is investigated. In this approach, the OLTC, the outputs of the reactive compensation devices and the DGs are adjusted according to the network state to prevent voltage limit violations, minimize voltage deviations, and maximize the DG active power outputs in the distribution network with various loads and feeders. Curve fitting is used to approximate the relations between voltage and power, and these curves are used to determine the control actions. The proposed method reduces the amount of data transmitted between agents, shortens the computation times, and finds a global minimum. The effectiveness of the proposed distributed cooperative voltage control scheme and curve-fitting method are verified through simulations.

2 Simplified power flow model

Computations of power flow require data for the entire network, and thus these computations are more applicable to centralized control. The simplified power flow method [2426] neglects the quadratic terms of the relation between power and voltage variations, which weakens the coupling between nodes. Because of the distributed characteristic of active distribution networks and the necessity of rapid calculations, the simplified power flow method was used in this study.

The typical structure of a distribution feeder is radial; a simple radial feeder is shown in Fig. 1.

Fig. 1
figure 1

A simple radial distribution feeder

In Fig. 1, if the active and reactive load power levels of a node \(j\) change by \(\Delta P_{j}\) and \(\Delta Q_{j}\), respectively, then for any upstream node \(i\), the following voltage relation holds:

$$U_{{i,{\text{new}}}}^{2} = U_{{i,{\text{old}}}}^{2} - 2\left( {RS_{i} \times \Delta P_{j} + XS_{i} \times \Delta Q_{j} } \right)$$
(1)

where \(U_{{i,{\text{new}}}}\) is the voltage at node \(i\) after the change; \(U_{{i,{\text{old}}}}\) the voltage at node \(i\) before the change; and \(RS_{i}\), \(XS_{i}\) the voltage sensitivities [14]. Similarly, if the active and reactive load power levels of a node \(m\) change by \(\Delta P_{m}\) and \(\Delta Q_{m}\), respectively, then for any downstream node \(i\):

$$U_{{i,{\text{new}}}}^{2} = U_{{i,{\text{old}}}}^{2} - 2\left( {RS_{m} \times \Delta P_{m} + XS_{m} \times \Delta Q_{m} } \right)$$
(2)

The node voltages and the DG power levels must satisfy the following constraints:

$$U_{\text{minlmt}} \le U_{i} \le U_{\text{maxlmt}}$$
(3)
$$0 \le P_{\text{DG}} \le P_{\hbox{max} }$$
(4)
$$Q_{\hbox{min} } \le Q_{\text{DG}} \le Q_{\hbox{max} }$$
(5)

where \(U_{\text{minlmt}}\), \(U_{\text{maxlmt}}\) are the lower and upper voltage limits of the network respectively; \(U_{i}\) the voltage at node \(i\); \(P_{\hbox{max} }\) the maximum DG active power output; and \(Q_{\hbox{max} }\), \(Q_{\hbox{min} }\) the maximum and minimum reactive power outputs of the DG, respectively.

3 Cooperative voltage control structure

3.1 Overall structure of the multi-agent system

Each feeder is divided into several feeder control sections (FCSs). An FCS agent is created for each FCS to control the devices in that FCS. A hybrid hierarchical structure, as shown in Fig. 2, is used. An OLTC agent is created to manage the network and has direct control over each feeder. The FCS agents in the same feeder form a distributed control structure, and they are equal in status. Serial links are used for communication.

Fig. 2
figure 2

Overall structure of the cooperative voltage control system

When a radial feeder has several branches, as in the feeder shown in Fig. 2, the serial link sequence is determined by the reactive sensitivities of the DGs in the feeder. If \(XS_{1} \le XS_{2} \le XS_{3}\), then the serial link order is OLTC, DG1, DG2, DG3.

3.2 OLTC agent

The OLTC agent maintains transformer tap information and controls operations based on the network status. This agent measures the bus voltage and the transformer tap position and receives messages from the FCS agents.

A change in the transformer tap position changes the voltage at all of the nodes on the low-voltage side. The tap position before a change is denoted by \(t_{0}\), where the set of possible positions is {−4, −3, −2, −1, 0, 1, 2, 3, 4}, the highest and lowest voltages of the network are denoted by \(U_{\hbox{max} 0}\) and \(U_{\hbox{min} 0}\), respectively, the tap position after a change is denoted by \(t_{1}\), and the new highest and lowest voltages in the network are denoted by \(U_{\hbox{max} 1}\) and \(U_{\hbox{min} 1}\), respectively. The following relations can be obtained for the highest and lowest voltages before and after a tap change:

$$U_{\hbox{max} 1} = \left( {\frac{{1 + t_{0} \times 1.25\,\% }}{{1 + t_{1} \times 1.25\,\% }}} \right)U_{\hbox{max} 0}$$
(6)
$$U_{\hbox{min} 1} = \left( {\frac{{1 + t_{0} \times 1.25\,\% }}{{1 + t_{1} \times 1.25\,\% }}} \right)U_{\hbox{min} 0}$$
(7)

If a change in the transformer tap position is required, the OLTC optimizes the operation according to (8):

$${\text{min}}\; J_{T} = \left[ {\left( {U_{\hbox{max} 1} - 1} \right)^{2} + \left( {1 - U_{\hbox{min} 1} } \right)^{2} } \right]$$
(8)

However, if

$$U_{\hbox{max} 0} - U_{\hbox{min} 0} > U_{\text{maxlmt}} - U_{\text{minlmt}}$$
(9)

then it is impossible to meet the condition in (1) for any position of the tap, and thus changing the transformer tap is infeasible.

3.3 FCS agents

FCS agents measure the voltage at the node to which they are assigned, the DG power output, and the power outputs of the voltage control devices in their FCS. The FCS agents adjust the output power of the DG and the voltage control devices.

The FCS agents calculate and monitor all of the voltages in their assigned section using the line parameters and the load information for their respective FCSs. The FCS agents compare the voltages for their assigned FCS and the voltages received from downstream FCS agents to obtain maximum and minimum values and send this information to the next upstream agent. This step is repeated until the information reaches the OLTC agent. The OLTC agent compares the voltage values received from the feeders with the measured bus voltage to find the highest and lowest voltages in the network.

4 Curve-fitting voltage control method

4.1 Status of the network

When the voltages of all of the nodes in the network are within the specified limits, the control system is in the normal mode. Active and reactive power/voltage control actions are taken by the FCS agents with minimal delay, and long-term estimates of the effects of transformer tap changes are made for the optimization process. If a node voltage exceeds the limits, the control system switches to the emergency mode and appropriate actions are taken.

4.2 Cooperative reactive power/voltage control

Reactive power sources in a distribution network include shunt capacitors, DG converters, and other reactive compensation devices. The objective function is expressed by (10):

$${\text{min}}\,\;J_{\text{CQ}} = \sum\limits_{k = 1}^{M} {(U_{k} - 1)^{2} }$$
(10)

where \(M\) is the number of nodes in the feeder.

The objective function in (10) was chosen to optimize voltage and improving the voltage stability. Most existing algorithms include all of the line parameters for the feeder. However, this approach results in long computation times in the leader control unit, resulting in long communication delays, and creates a high probability of communication blocks. Furthermore, the use of computing resources is inefficient because the capacities of other agents are not used.

The proposed cooperative control method distributes the computation tasks among the FCS agents in a given feeder. The FCS agents store the line parameters and the load information for their assigned FCS, so the optimal solution for a section may not be the optimal solution for the entire feeder. From (1) and (2), if \(\Delta P = 0\), then \(U_{{i,{\text{new}}}} = \sqrt {U_{{i,{\text{old}}}}^{2} - 2XS_{z} \times \Delta Q}\) (\(z\) = \(i\) or \(m\)). It can be shown that for \(x \to 0\), \(\left( {1 + x} \right)^{a} - 1\) and \(a \times x\) are equivalent (infinitesimal). Thus, because \(XS_{z} \times \Delta Q\) is much smaller than \(U_{{i,{\text{old}}}}\),

$$\begin{aligned} U_{{i,{\text{new}}}} &= \sqrt {U_{{i,{\text{old}}}}^{2} - 2 \times XS_{z} \times \Delta Q}\\ & = \, U_{{i,{\text{old}}}} \times \sqrt {1 - \frac{{2 \times XS_{z} \times \Delta Q}}{{U_{{i,{\text{old}}}}^{2} }}} \\ &\approx \, U_{{i,{\text{old}}}} \times \left[ {\left( {0.5 \times \frac{{2 \times XS_{z} \times \Delta Q}}{{U_{{i,{\text{old}}}}^{2} }}} \right) + 1} \right] \\ &= \,\Delta Q \times \frac{{XS_{z} }}{{U_{{i,{\text{old}}}} }} + U_{{i,{\text{old}}}} \hfill \\ \end{aligned}$$

Hence, the relation between the node voltage and the variation \(\Delta Q\) in the reactive power output of a voltage control device is approximately linear. The objective function for an FCS is \(J_{\text{FCS}} = \sum\limits_{k = 1}^{N} {(U_{k} - 1)^{2} }\), where \(N\) is the number of nodes of the FCS. The variables \(U_{k}\) and \(\Delta Q\) are approximately linearly related, so the objective function \(J_{\text{FCS}}\) is approximately quadratic in \(\Delta Q\). The FCS agent uses the least squares method (LSM) to fit a quadratic function to the relation between \(J_{\text{FCS}}\) and the reactive power output of the voltage control device. The function coefficients for all of the devices are used to find an optimal solution, which reduces the amount of data that must be communicated. Thus, the communication delays [27] and the possibility of communication blocks are reduced.

As shown in Fig. 3, the OLTC agent sends requests for reactive power/voltage control. If the FCS agent that receives the request is not executing any other voltage adjustment operation, it accepts the request. Otherwise, it sends a refusal message to the OLTC agent. The FCS agents are arranged in order of increasing reactive power/voltage sensitivity, so the further from the OLTC agent the FCS agent is in the chain, the larger the sensitivity of the node that the FCS agent controls. Thus, cooperative control by the FCS agents starts with the last FCS agent in the chain.

Fig. 3
figure 3

Communication in the cooperative reactive power/voltage control architecture

A flow chart of the distributed cooperative control process is shown in Fig. 4.

Fig. 4
figure 4

Algorithm for cooperative reactive power/voltage control

The process is illustrated in the following with an example of a feeder with 3 FCSs.

1) Agents FCS1, FCS2, and FCS3 are the FCS agents for sections 1, 2, and 3, respectively. Agent FCS3 sends the information on the reactive power, including the maximum and minimum reactive power outputs \(Q_{\text{DG3max}}\) and \(Q_{\text{DG3min}}\), respectively, and the present reactive power output \(Q_{\text{set3}}\) to the other FCS agents in the feeder, that is, agents FCS2 and FCS1.

2) Each FCS agent in the feeder (agents FCS3, FCS2, and FCS1) uniformly selects n values \(Q_{3 - 1}\), …, \(Q_{3 - i}\), …, \(Q_{3 - n}\) from the interval [\(Q_{\text{DG3min}}\),\(Q_{\text{DG3max}}\)], where \(n\) is the data fitting number. The data fitting data number \(n\) must be sufficiently large to ensure the accuracy of the curve fitting, so \(n > 3\). In addition, \(n\) is limited by the computational capabilities of the FCS agents. A large value of \(n\) would result in more computations. It is assumed that

$$\left\{ \begin{array}{l} \Delta P = 0 \hfill \\ \Delta Q = - (Q_{3 - i} - Q_{\text{set3}} ) \hfill \\ \end{array} \right.$$
(11)

Each FCS agent uses (1)–(2) to calculate the voltages at the nodes in its section for the current values of \(\Delta P\) and \(\Delta Q\) and then calculates the deviations of these voltages from a nominal voltage:

$$J_{{{\text{FCS}} - i}} = \sum\limits_{k = 1}^{N} {\left( {U_{k} - 1} \right)^{2} }$$
(12)

where \(N\) is the number of nodes in the FCS. The values of \(J_{{{\text{FCS}} - 1}}\), …, \(J_{{{\text{FCS}} - i}}\),…, \(J_{{{\text{FCS}} - n}}\) corresponding to \(Q_{3 - 1}\), …, \(Q_{3 - i}\), …, \(Q_{3 - n}\), respectively, are computed using (12). Then, the LSM is used to fit a quadratic function (three coefficients) to the relation between \(J_{\text{FCS}}\) and \(Q_{3}\). For example, for agent FCS1, \(J_{\text{FCS}} = a_{0 - 1} + a_{1 - 1} Q_{3} + a_{2 - 1} Q_{3}^{2}\), where \(a_{0 - 1}\), \(a_{1 - 1}\), and \(a_{2 - 1}\) are the three coefficients.

3) Agent FCS1 sends the values of \(a_{0 - 1}\), \(a_{1 - 1}\), and \(a_{2 - 1}\) to agent FCS3, and agent FCS2 sends the values of its parameters, \(a_{0 - 2}\), \(a_{1 - 2}\), and \(a_{2 - 2}\), to agent FCS3. Agent FCS3 receives the six parameters, adds them to its parameters, \(a_{0 - 3}\), \(a_{1 - 3}\), and \(a_{2 - 3}\), and sums the three sets of parameters to obtain \(a_{{ 0 {\text{all}}}}\), \(a_{{ 1 {\text{all}}}}\), and \(a_{{ 2 {\text{all}}}}\):

$$\left\{ {\begin{array}{*{20}c} {a_{{ 0 {\text{all}}}} = a_{0 - 1} + a_{0 - 2} + a_{0 - 3} } \\ {a_{{ 1 {\text{all}}}} = a_{1 - 1} + a_{1 - 2} + a_{1 - 3} } \\ {a_{{ 2 {\text{all}}}} = a_{2 - 1} + a_{2 - 2} + a_{2 - 3} } \\ \end{array} } \right.$$
(13)

Then, the objective function is approximated using the sums of the coefficients:

$${\text{min}}\;J_{\text{CQ}} = \sum\limits_{k = 1}^{M} {\left( {U_{k} - 1} \right)^{2} } = a_{{ 0 {\text{all}}}} + a_{{ 1 {\text{all}}}} Q_{3} + a_{{ 2 {\text{all}}}} Q_{3}^{2}$$
(14)

Based on the objective function and the nature of the quadratic function, the optimal reactive power output setting of agent FCS3, denoted by \(Q_{\text{setop3}}\), is calculated:

$$Q_{\text{setop3}} = - \frac{{a_{{ 1 {\text{all}}}} }}{{2a_{{ 2 {\text{all}}}} }}$$
(15)

If \(Q_{\text{setop3}} > Q_{\text{DG3max}}\) or \(Q_{\text{setop3}} < Q_{\text{DG3min}}\), then agent FCS3 alone cannot achieve the required voltage control. Agent FCS3 sets the reactive power output of the sources its section, i.e., section 3, to \(Q_{\text{DG3max}}\) or \(Q_{\text{DG3min}}\) as appropriate and sends a message to agent FCS2 that the control task has not been completed. If \(Q_{\text{DG3min}} < Q_{\text{setop3}} < Q_{\text{DG3max}}\), then agent FCS3 sets the reactive power outputs of the sources in section 3 to \(Q_{\text{setop3}}\) (if \(Q_{\text{set3}} = Q_{\text{setop3}}\), no action is taken) and sends a message to agent FCS2 that the control task has been completed.

4) Agent FCS2 receives the message from agent FCS3. If the message is “incomplete”, then agent FCS2 follows the steps taken by agent FCS3 in step 1 to find the optimal reactive power output \(Q_{\text{setop2}}\), sets the reactive power outputs of the sources under its control and sends the appropriate message. If the control task was accomplished by agent FCS3, then agent FCS2 takes no action except for sending the “complete” message to the next upstream agent. This process is repeated until the first agent in the chain, FCS1, completes its operations. Then, agent FCS1 transmits a message to the OLTC agent on the status of the voltage control.

4.3 Cooperative active power/voltage control

The objective function for controlling active power/voltage is expressed by (16):

$${\text{min }}J_{\text{CP}} = P_{\text{cut}}$$
(16)

where \(P_{\text{cut}}\) is the reduction in active power of the DGs.

Similar to the cooperative reactive power/voltage control strategy, the relation between the node voltage and the change in active power \(\Delta P\) for a DG is approximately linear, and the FCS agent uses the LSM to approximate the relation between the voltage of the node to which the DG is connected and the active power output of the DG with a linear function. The process of cooperative active power/voltage control is similar to that for reactive power/voltage control. Using the same example as in the previous section, the steps of the process are as follows:

1) Agent FCS3 sends the maximum and minimum values of the active power output, \(P_{\text{DG3max}}\) and \(P_{\text{DG3min}}\), respectively, and the present active power output \(P_{\text{set3}}\) to agents FCS2 and FCS1.

2) Each FCS agent in the feeder uniformly selects n values, \(P_{3 - 1}\), …, \(P_{3 - i}\), …, \(P_{3 - n}\), from the interval [\(P_{\text{DG3min}}\),\(P_{\text{DG3max}}\)]. It is assumed that

$$\left\{ \begin{array}{l} \Delta P = - (P_{3 - i} - P_{\text{set3}} ) \hfill \\ \Delta Q = 0 \hfill \\ \end{array} \right.$$
(17)

Each agent calculates the voltage at the node to which the DG is connected, denoted by \(U_{{{\text{DG}} - i}}\), for the given values of \(\Delta P\) and \(\Delta Q\). The values of \(U_{{{\text{DG}} - 1}}\), …, \(U_{{{\text{DG}} - i}}\), …, \(U_{{{\text{DG}} - n}}\), are calculated using \(P_{3 - 1}\), …, \(P_{3 - i}\), …, \(P_{3 - n}\), respectively. The LSM is used to fit a linear function (two coefficients) to the values of \(P_{3}\) and \(U_{\text{DG}}\). For agent FCS1,

$$U_{\text{DG}} = b_{0 - 1} + b_{1 - 1} P_{3}$$
(18)

where \(b_{0 - 1}\) and \(b_{1 - 1}\) are the two coefficients. The agents each solve the following linear equations for \(P_{3}\):

$$b_{0 - 1} + b_{1 - 1} P_{3} = U_{\text{maxlmt}}$$
(19)
$$b_{0 - 2} + b_{1 - 2} P_{3} = U_{\text{maxlmt}}$$
(20)
$$b_{0 - 3} + b_{1 - 3} P_{3} = U_{\text{maxlmt}}$$
(21)

3) Each FCS agent sends the parameter values to agent FCS3. If the minimum solution \(P_{3\hbox{min} }\) is larger than \(P_{\text{DG3min}}\), agent FCS3 sets the active power output of the sources in section 3 to \(P_{\text{DG3min}}\) and sends a message to agent FCS2 that the active power/voltage control task is complete. Otherwise, agent FCS3 sets the active power output of the sources in FCS3 to the minimum and sends a message to agent FCS2 that the active power/voltage control task has not been completed.

4) Agent FCS2 receives the message from agent FCS3. Agent FCS2 continues the cooperative control process if the message is “incomplete” or sends a “complete” message to the next upstream agent. This process is repeated until the first FCS agent in the chain, agent FCS1, completes its operations. Then, agent FCS1 transmits the status of the voltage control.

If a DG is non-dispatchable, it is not used for voltage control, and the FCS agent assigned to that DG only monitors the node voltages and relays messages.

5 Case study

5.1 Network description

The following examples demonstrate the effectiveness of the proposed cooperative control scheme. A 10 kV distribution network was simulated using the electrical network simulation software PSCAD™/EMTDC™ (Manitoba HVDC Research Centre Inc., Winnipeg, Canada). A diagram of the network is shown in Fig. 5.

Fig. 5
figure 5

Example network

The network has three feeders and 40 nodes in all. The OLTC transformer parameters are 110 ± 4 × 1.25%/10.5 kV. There are 6 DGs in the network, one each at nodes 5, 9, 20, 25, 29, and 40. The maximum active power outputs of DG1 to DG6 are 0.21, 0.21, 0.21, 0.15, 0.15, and 0.1 MW, respectively. The maximum reactive power outputs of all six DGs are 0.01 Mvar. The numbers of shunt capacitors at the 6 nodes are 8, 2, 5, 9, 5, and 0, respectively, and the capacity of each capacitor is 0.01 Mvar.

5.2 Simulation results for the normal mode

In the normal mode, the highest and lowest voltages of the network are both within the limits, and voltage optimization is feasible using cooperative reactive power/voltage control. The process is shown in Fig. 6

Fig. 6
figure 6

Simulation results for the normal mode

.

As shown in Fig. 6a, all of the voltages in the network were within the limits. Cooperative reactive power/voltage control started at 0.05 s in all of the feeders. In feeder 1, agents FCS3, FCS2, and FCS1 performed their actions in sequence. The optimized solutions from agents FCS3, FCS2, and FCS1 are shown in Fig. 6b-d. The lower three curves show the quadratic functions that the FCS agents fitted, representing the relation between the changes in voltage in their section and the reactive power output of the voltage control device in their section. The top curves are the quadratic functions resulting from the summed parameters. The top curves in Figs. 6b and 7c decreased monotonically, the outputs of the voltage control devices in sections 2 and 3 were set to the maximum, and agent FCS1 continued the cooperative control. It can be observed in Fig. 6d that agent FCS1 computed that the minimum deviation in the voltages at the nodes in Feeder 1 would be achieved for Q = 0.0292 Mvar. The outputs of the voltage control devices in FCS3 and FCS2 were set to 0.0292 Mvar, and the voltage optimization for feeder 1 was accomplished. The actions of the FCS agents in feeders 2 and 3 were similar to those in feeder 1. It can be observed in Fig. 6a that after the optimization, the variance in the voltages at the nodes in feeder 1 was reduced.

Fig. 7
figure 7

Simulation results for a load increase

Figure 6e shows the voltages at the network nodes before and after voltage optimization, at 0 and 0.3 s, respectively. The voltages were closer to the nominal voltage following optimization.

5.3 Simulation results for a load increase

The highest and lowest voltages and the deviations in the node voltages for a load increase are shown in Fig. 7a.

The loads in feeder 1 increased at 1 s, the voltages decreased, and the deviations in the node voltages increased, as shown in Fig. 7a. The lowest voltage in the network decreased below the lower limit, and the cooperative reactive power/voltage control strategy was executed in feeder 1. All of the reactive sources in feeder 1 were connected in less than 1.4 s, and the lowest voltage of the network was increased to satisfy the limits. The OLTC agent received “incomplete” messages from the FCS agents in feeder 1. Thus, the OLTC agent changed the tap position by −1 at 1.43 s to increase the voltage. As a result of these actions, all of the node voltages returned to within the limits, the deviations in the node voltages decreased, and the control system returned to the normal mode. The voltages at the network nodes before and after control was exercised and are shown in Fig. 7b. It can be observed from the “no operations” curve that the voltages were lower and the voltages of nodes 13-20 and node 28 were below the lower limit. The “after operations” curve represents the voltages at the nodes in the network following the control actions taken at 2 s. The voltages were closer to the nominal value following these actions.

5.4 Simulation results for a load decrease

The loads in feeder 1 decreased at 0.6 s, and the excess active power from the DGs flowed upstream to the bus, and consequently the highest voltage of the network exceeded the upper limit, as shown in Fig. 8a. To decrease the DG active power as little as possible, the transformer tap position was changed first. The OLTC agent determined that changing the tap position by +3 was optimal. However, the tap position of the OLTC transformer can be changed by only one step at a time. Thus, The OLTC agent changed the tap position by +1. Following the change in the tap position at 0.7 s, all of the node voltages returned to within the limits and the deviations in the node voltages decreased. Active power/voltage control by the FCS agents was not required. Following these actions, the control system returned to the normal mode.

Fig. 8
figure 8

Simulation results for a load decrease

The voltages at the network nodes before and after the control actions are shown in Fig. 8b. The “no operations” curve represents the voltages at the nodes in the network after the load decreased and before the control actions were taken. It can be observed that the voltages were much higher and those at nodes 18–20 exceeded the upper limits. The “after operations” curve represents the voltages at the nodes in the network following the aforementioned control actions, which were implemented at 2 s. The voltages were closer to the nominal voltage following the change in the tap position.

5.5 Simulation results for mixed load changes

The loads in feeder 1 decreased and the loads in feeder 2 increased at 0.07 s, and thus the lowest voltage in the network decreased below the lower limit and the highest voltage in the network exceeded the upper limit, as shown in Fig. 9a. Changing the tap position was infeasible. Thus, the OLTC agent sents messages to the FCS agents for feeders 1 and 2, allowing them to start cooperative active power/voltage control.

Fig. 9
figure 9

Simulation results for mixed load changes

The FCS3 agent in feeder 1 reduced the active power output of the DG at node 20, as shown in Fig. 9b. The three FCS agents in feeder 1 performed calculations, and the solution from agent FCS3, 0.2080 MW, was the smallest and the only feasible solution. Thus, the output active power of the DG at node 20 was set to the value provided by agent FCS3. In feeder 2, all of the reactive sources were connected. The OLTC received a “complete” message from feeder 1 and an “incomplete” message from feeder 2. However, changing the tap position remained infeasible, so the OLTC agent did not execute voltage control.

Following the control actions, all of the node voltages returned to within the limits, and the deviations in the node voltages decreased. The voltages at the nodes before and after the control actions are shown in Fig. 9c. It can be observed from the “no operations” curve that the voltages at the nodes in feeder 1 were higher and the voltages at the nodes in feeder 2 were lower. The voltages at node 9 and nodes 17–20 exceeded the upper limits and the voltages at nodes 27–29 were below the lower limits. The “after operations” curve shows the voltages at the nodes in the network at 0.2 s. The voltages were closer to the nominal voltage following the control actions.

6 Conclusion

In this study, a distributed cooperative voltage control strategy for an active distribution network was developed. The cooperative voltage control structure uses a hybrid, hierarchical multi-agent system with agents defined for the distribution transformer and the DGs. Given the characteristics of feeders in active distribution networks, the communication system of the proposed structure uses serial links, which simplifies the communication system, reduces the cost of the communication system, and is suited to the proposed curve-fitting algorithm. The proposed voltage control method decentralizes the computation task and fully uses the computing resources of all of the agents. By fitting quadratic or linear functions, the amounts of data transmitted, the communication delays, and possibility of communication blocks are greatly reduced.