Numerical Optimization of Switching Ripples in the Double Dual Boost Converter through the Evolutionary Algorithm L-SHADE

: Power-electronics based converters are essential circuits in renewable energy applications such as electricity generated with photovoltaic panels. The research on the ﬁeld is getting increasing attention due to climate change problems and their possible attenuation with the use of renewable energy. Mathematical models of the converters are being used to optimize several aspects of their operation. This article is dedicated to optimizing (through the mathematical model and an evolutionary algorithm) the operation of a state-of-the-art converter. The converter, which is composed of two parts or phases, is controlled by pulse width modulation with two switching signals (one for each phase). The converter provides by itself low switching ripple in both the output voltage and the input current, which is beneﬁcial for renewable energy applications. In the traditional operation, one of the switching signals has an algebraic dependence on the other one. This article proposes a new way to select the duty cycle for both signals. In the proposed method, duty cycles of both phases are considered independent of each other; this provides an extra degree of freedom; on the other hand, this produce that the possible combinations of duty cycles which produce a certain voltage gain is inﬁnite, it becomes a problem with inﬁnite possible solutions. The proposed method utilizes the a linear success-history based adaptive di ﬀ erential evolution with linear population reduction, also called L-SHADE algorithm for simplicity, to ﬁnd the two duty cycles that achieve the desired voltage gain and to minimize the converters switching ripple. The obtained results are compared with the former operation of the converter; the proposed operation achieves a lower output voltage ripple while achieving the desired operation (voltage gain).


Introduction
One of the essential components of renewable energy generation systems is the power-electronics based converters [1], referred to in different ways, such as voltage regulators, power sources, switched-mode power supplies (SMPS), etc. Converters are electronics circuits composed mainly by switches (transistors and diodes) and energy-storage components (inductors and capacitors) [2]. They are used to customize the electrical energy according to the application; for example, a photovoltaic (PV) panel produces direct current or "dc" electricity, the same type of electricity than in batteries, but electric appliances require alternating current or "ac" electricity. Then a dc-to-ac converter can be used; they are usually called inverters.
The research on power electronics is getting increasing interest due to the climate change problem. A possible solution for the climate change problem is the use of renewable energy. The industry is pushing to cheaper generation systems, which is usually achieved by optimizing renewable energy generation systems. Designers of power converters develop and utilizes mathematical models to optimize several aspects of the converter's operation. Among the different types of converters, there are the dc-dc, dc-ac, ac-dc, and ac-ac converters. This article is focused on a dc-dc converter, particularly in a circuit that was recently introduced to the literature, the double dual boost converter (DDBC) [3].
The aforementioned circuit is a step-up or boost converter, their output voltage level is larger than the input, their main benefits, compared to other similar converters in the literature are: (i) it provides a larger voltage gain [3], which is a requirement in some applications, such as renewable energy generation systems, in which the output voltage from photovoltaic panels, can be in the order of 20 V dc, and the grid voltage may be 220 V ac, (ii) it has larger efficiency than the traditional boost converter, especially when the electrical current increases [3], and finally, the advantage in which this article is focused (iii) it provides a reduced variation on the state variables due the switching action of transistors, which is usually referred as switching ripple or chattering, state variables are ideally constant in steady-state, in the practice, they have a ripple caused by the switching action of transistors, and the differential equations that describes the behavior of the converter [3][4][5].
The reduction of switching ripples in this converter, which was introduced in [4], is thanks to a special selection of the duty cycles of transistors, the converter is driven with two switching signals, and the control is based on the selection of the duty cycles, which is defined as the time period in which each transistor is closed, divided over the total switching period, this type of control which changes the width of the switching pulses or switching functions, this is called pulse width modulation (PWM).
The former operation of the DDBC consists of making one switching signal to depend (algebraically) on the other [4]. However, if duty cycles are independent, the output voltage ripple and the input current ripple can be minimized while ensuring the required voltage gain of the converter. Nevertheless, there is an infinite number of combinations to achieve the desired voltage gain. Therefore, this article proposes to find the optimal combination of duty cycles by implementing an evolutionary algorithm. The objective of doing so is to achieve the desired voltage-gain (as well as in the former operation), and, at the same time, to further minimize the input current ripple.
Recently, evolutionary algorithms have been used to effectively solve optimization problems. For instead the differential evolution (DE) algorithm [6], the JADE algorithm [7], success-history based adaptive DE (SHADE) [8], and a recently proposed algorithm called success-history based adaptive differential evolution algorithm with linear population reduction (L-SHADE) [9], etc. The capabilities of those algorithms have been proved in different applications. For example, the parameter estimation of solar cells [10], the optimization of wave energy converter arrays [11], the optimal design of high-power mode converters [12], the pulse width modulation PMW optimization for single-phase voltage source inverter [13], and others [14][15][16].
Further optimization approaches, such as particle swarm optimization (PSO) [17] and genetic algorithm [18], have also been used to solve optimization problems related to power electronics converters. For example, [19] presents the application of the PSO to find the optimal parameters of a Type-III controller, which improved the operation of an interleaved boost converter. Another example is [20], which presented the optimization of a proportional-integral PI controller applied to a four-phase interleaved boost converter. The PI controller gains were optimally found by using the PSO algorithm [20,21] presented a minimization of a PWM converter switching frequency by using GA [21]. Finally, [22] presented a capability improvement of the maximum power point tracking for a photovoltaic system, also by using the PSO algorithm. More associated applications are described in [13][14][15][16].
Although there is a wide range of optimization techniques, not all of them are suitable for constrained and complex optimization problems since they present several drawbacks, such as getting stuck into local optima and unbalance exploration-exploitation strategy. Therefore, this article proposes a new way to select the duty cycle for both switching signals in the DDBC based on the L-SHADE algorithm.
L-SHADE is a prominent evolutionary method proposed to improve the SHADE algorithm by implementing a linear population size reduction technique. The L-SHADE approach has proved its competitive capabilities in multiple constrained applications, such as in optimal power flow solutions [23], in optimal placement of wind turbines for wind farms [24], and applications for economic dispatch problems [25]. Therefore, the L-SHADE method is adopted in this research to achieve the desired voltage gain and minimize the output voltage ripple and the input current ripple. Numerical optimization is performed while the obtained results are compared with the former operation of the converter. Experimental results demonstrate that the proposed strategy achieves a lower output voltage ripple for the full operating range.
The rest of this manuscript is organized as follow: the second section introduced a mathematical model of converters; the third section describes the mathematical model of the double dual boost converter under analysis; in Section 4, the implemented evolutionary method is introduced, Section 5 presents the proposed strategy, Section 6 reports the obtained results. The conclusions are discussed in Section 7.

Mathematical Model of Converters
This section briefly discusses how to obtain the mathematical model of a converter. The DDB converter is composed of two boost switching stages. Then this section starts with an explanation of the traditional boost converter; and the way to obtain its mathematical model with the averaging technique. Figure 1a shows the basic boost converter; it is composed of one inductor L, one capacitor C, and two transistors s and s; each transistor has an anti-parallel diode. This version of the circuit is usually called a synchronous rectified boost converter or a bidirectional boost converter. The line over the name of s indicates it is a logical complement of s. That means that when s is equal to one (the transistor is closed), s is equal to zero (transistor is open) and vice-versa. The converter has a single switching function.
Mathematics 2020, 8, 1911 3 of 19 Although there is a wide range of optimization techniques, not all of them are suitable for constrained and complex optimization problems since they present several drawbacks, such as getting stuck into local optima and unbalance exploration-exploitation strategy. Therefore, this article proposes a new way to select the duty cycle for both switching signals in the DDBC based on the L-SHADE algorithm.
L-SHADE is a prominent evolutionary method proposed to improve the SHADE algorithm by implementing a linear population size reduction technique. The L-SHADE approach has proved its competitive capabilities in multiple constrained applications, such as in optimal power flow solutions [23], in optimal placement of wind turbines for wind farms [24], and applications for economic dispatch problems [25]. Therefore, the L-SHADE method is adopted in this research to achieve the desired voltage gain and minimize the output voltage ripple and the input current ripple. Numerical optimization is performed while the obtained results are compared with the former operation of the converter. Experimental results demonstrate that the proposed strategy achieves a lower output voltage ripple for the full operating range.
The rest of this manuscript is organized as follow: the second section introduced a mathematical model of converters; the third section describes the mathematical model of the double dual boost converter under analysis; in Section 4, the implemented evolutionary method is introduced, Section 5 presents the proposed strategy, Section 6 reports the obtained results. The conclusions are discussed in Section 7.

Mathematical Model of Converters
This section briefly discusses how to obtain the mathematical model of a converter. The DDB converter is composed of two boost switching stages. Then this section starts with an explanation of the traditional boost converter; and the way to obtain its mathematical model with the averaging technique. Figure 1a shows the basic boost converter; it is composed of one inductor L, one capacitor C, and two transistors s and s ; each transistor has an anti-parallel diode. This version of the circuit is usually called a synchronous rectified boost converter or a bidirectional boost converter. The line over the name of s indicates it is a logical complement of s. That means that when s is equal to one (the transistor is closed), s is equal to zero (transistor is open) and vice-versa. The converter has a single switching function. The circuit's operation can be explained in the following manner. There is a switching function s1, that drives the operation by closing and opening transistors (which are electronic switches). When the transistor s1 closes, the circuit behaves like the equivalent circuit shown in Figure 1b, in which the transistor was substituted by wire since it operates as a wire when it is closed, allowing the current to flow, the transistor s position is indicated in gray, but it is off and is not draining any current, since it is open. Similarly, when the transistor s1 opens, the circuit behaves like the equivalent circuit shown in Figure 1c.
Each switching state has a different mathematical model, which can be obtained by applying the Kirchhoffs voltage and current laws; for example, the switching state in Figure 1b is repeated in Figure 2, emphasizing the voltage loop of the inductor and current node of the capacitor. The circuit's operation can be explained in the following manner. There is a switching function s 1 , that drives the operation by closing and opening transistors (which are electronic switches). When the transistor s 1 closes, the circuit behaves like the equivalent circuit shown in Figure 1b, in which the transistor was substituted by wire since it operates as a wire when it is closed, allowing the current to flow, the transistor s position is indicated in gray, but it is off and is not draining any current, since it is open. Similarly, when the transistor s 1 opens, the circuit behaves like the equivalent circuit shown in Figure 1c.
Each switching state has a different mathematical model, which can be obtained by applying the Kirchhoffs voltage and current laws; for example, the switching state in Figure 1b is repeated in Figure 2, emphasizing the voltage loop of the inductor and current node of the capacitor.  The voltage (and current) in passive components (inductors and capacitors) follow the passive sign convention. The passive sign convention can be summarized by saying that variables in Figure  2c have all positive signs. In other words, positive current in a passive component get into their positive voltage terminal, if any of those variables are in the other direction, means the value is negative.
The Kirchhoff voltage law establishes that the sum of voltages in a closed loop is equal to zero. The Kircchoff voltage law is evaluated when following the closed-loop; in Figure 2a, we can follow the closed-loop indicated by red arrows and then to sum the voltage in the loop, to finally make the sum equal to zero; this leads to (1). (1) Note that the sign assigned of the terms in (1), coincides to the sign of the voltage which the closed-loop (red arrows) find the element, Figure 1 doesn't contain all variables in each component (voltage, current, the name of the element, value, etc.), for convenience, but it contains an arrow in the inductor and a plus sign in the capacitor to provide the reference to evaluate the passive sign convention shown in Figure 2c.
The Kirchhoff current law establishes that the sum of currents getting into a node is equal to zero, or in other words, the sum of currents getting into a node is equal to the sum of current getting out from the same node. The Kirchhoff current law is evaluated into a node; it can be evaluated in any of both nodes of the capacitor (see Figure 2b). In this case, the Kirchhoff current law is evaluated in the upper node for convenience; this leads to (2).
Note that the signs assigned in (2) are negative since both currents are getting out from the node. The dynamical model of the circuit can be obtained by evaluating the voltage in the inductor and the current through the capacitor. The inductor and the capacitor are the energy storage devices, and their voltage and current are expressed in terms of the following differential equations (3): Equations (1) and (2) can be rewritten in terms of (3) as (4). Figure 3 shows the second switching state, the equivalent circuit of the converter when the transistor is open. The Kirchhoff voltage law establishes that the sum of voltages in a closed loop is equal to zero. The Kircchoff voltage law is evaluated when following the closed-loop; in Figure 2a, we can follow the closed-loop indicated by red arrows and then to sum the voltage in the loop, to finally make the sum equal to zero; this leads to (1). − Note that the sign assigned of the terms in (1), coincides to the sign of the voltage which the closed-loop (red arrows) find the element, Figure 1 doesn't contain all variables in each component (voltage, current, the name of the element, value, etc.), for convenience, but it contains an arrow in the inductor and a plus sign in the capacitor to provide the reference to evaluate the passive sign convention shown in Figure 2c.
The Kirchhoff current law establishes that the sum of currents getting into a node is equal to zero, or in other words, the sum of currents getting into a node is equal to the sum of current getting out from the same node. The Kirchhoff current law is evaluated into a node; it can be evaluated in any of both nodes of the capacitor (see Figure 2b). In this case, the Kirchhoff current law is evaluated in the upper node for convenience; this leads to (2).
Note that the signs assigned in (2) are negative since both currents are getting out from the node. The dynamical model of the circuit can be obtained by evaluating the voltage in the inductor and the current through the capacitor. The inductor and the capacitor are the energy storage devices, and their voltage and current are expressed in terms of the following differential equations (3): Equations (1) and (2) can be rewritten in terms of (3) as (4). Figure 3 shows the second switching state, the equivalent circuit of the converter when the transistor is open. From Figure 3, similarly to Figure 2, the equations of the inductor voltage and capacitor current can be obtained; in this case, those equations (similar to (4)) for Figure 3 would be (5).
Finally, the mathematical model of the switched system, the circuit in Figure 1, which is actually a dynamic system which stays as Figure 1b during the time when the transistor is closed, and then changes to Figure 1c during the time the transistor is open. The model can be obtained by averaging [2] both models with a function called duty cycle d, or duty ratio; it is defined as the ratio between the time in which the transistor is on (closed), divided over the full switching period TS, the inverse of the switching frequency fS.
The average voltage in the inductor can be expressed as (6).
( ) Being T1, the time in which the transistor is closed, and T2 the time in which the transistor is open, it is considered that TS = T1 + T2, and by using the aforementioned definition of the duty cycle, it would be defined as d = T1/TS. Equation (6) can be explained with Figure 4; at the bottom of Figure 4, the switching function s is a digital function that indicates when the transistor is closed or open, when the transistor is closed (s function is high), the voltage across the inductor is equal to vg (see Figure 2). In the other case, then the transistor is open (s function is low), the voltage across the inductor is vg-vC (see Figure 3). The average voltage across the inductor is marked as gray. From Figure 4, the average voltage across the inductor can be expressed as (6). In Equation (6), the area under the curve is calculated and then divided over the total switching period Ts. When the voltage across the inductor terminals is positive, the current rises, and then the voltage is negative, the current falls; this leads to the traditional triangular waveform of the inductor current; from this Figure, it is also logical that vg-vC must be a negative value in the equilibrium; otherwise the From Figure 3, similarly to Figure 2, the equations of the inductor voltage and capacitor current can be obtained; in this case, those equations (similar to (4)) for Figure 3 would be (5).
Finally, the mathematical model of the switched system, the circuit in Figure 1, which is actually a dynamic system which stays as Figure 1b during the time when the transistor is closed, and then changes to Figure 1c during the time the transistor is open. The model can be obtained by averaging [2] both models with a function called duty cycle d, or duty ratio; it is defined as the ratio between the time in which the transistor is on (closed), divided over the full switching period T S , the inverse of the switching frequency f S .
The average voltage in the inductor can be expressed as (6).
Being T 1 , the time in which the transistor is closed, and T 2 the time in which the transistor is open, it is considered that T S = T 1 + T 2 , and by using the aforementioned definition of the duty cycle, it would be defined as d = T 1 /T S . Equation (6) can be explained with Figure 4; at the bottom of Figure 4, the switching function s is a digital function that indicates when the transistor is closed or open, when the transistor is closed (s function is high), the voltage across the inductor is equal to v g (see Figure 2). In the other case, then the transistor is open (s function is low), the voltage across the inductor is v g − v C (see Figure 3). The average voltage across the inductor is marked as gray. From Figure 4, the average voltage across the inductor can be expressed as (6). In Equation (6), the area under the curve is calculated and then divided over the total switching period Ts.
Mathematics 2020, 8,1911 5 of 19 From Figure 3, similarly to Figure 2, the equations of the inductor voltage and capacitor current can be obtained; in this case, those equations (similar to (4)) for Figure 3 would be (5).
Finally, the mathematical model of the switched system, the circuit in Figure 1, which is actually a dynamic system which stays as Figure 1b during the time when the transistor is closed, and then changes to Figure 1c during the time the transistor is open. The model can be obtained by averaging [2] both models with a function called duty cycle d, or duty ratio; it is defined as the ratio between the time in which the transistor is on (closed), divided over the full switching period TS, the inverse of the switching frequency fS.
The average voltage in the inductor can be expressed as (6).
( ) Being T1, the time in which the transistor is closed, and T2 the time in which the transistor is open, it is considered that TS = T1 + T2, and by using the aforementioned definition of the duty cycle, it would be defined as d = T1/TS. Equation (6) can be explained with Figure 4; at the bottom of Figure 4, the switching function s is a digital function that indicates when the transistor is closed or open, when the transistor is closed (s function is high), the voltage across the inductor is equal to vg (see Figure 2). In the other case, then the transistor is open (s function is low), the voltage across the inductor is vg-vC (see Figure 3). The average voltage across the inductor is marked as gray. From Figure 4, the average voltage across the inductor can be expressed as (6). In Equation (6), the area under the curve is calculated and then divided over the total switching period Ts. When the voltage across the inductor terminals is positive, the current rises, and then the voltage is negative, the current falls; this leads to the traditional triangular waveform of the inductor current; from this Figure, it is also logical that vg-vC must be a negative value in the equilibrium; otherwise the Ts s Figure 4. Important waveforms to calculate the average voltage across the inductor, the switching function s, the voltage function at the inductor terminals, and the and the inductor current with a zoom-in to observe the ripple.
When the voltage across the inductor terminals is positive, the current rises, and then the voltage is negative, the current falls; this leads to the traditional triangular waveform of the inductor current; from this Figure, it is also logical that v g − v C must be a negative value in the equilibrium; otherwise the inductor current would rise infinitely, this conclusion can be mathematically obtained when calculating the equilibrium point.
The average voltage in the inductor can be expressed as (7), which is equivalent to (6), and the average current through the capacitor can be expressed as (8).
Similarly to Equation (6), Equation (8) can be explained with Figure 5; at the bottom of Figure 5, the switching function s is a digital function that indicates when the transistor is closed or open, when the transistor is closed (s function is high), the current through the capacitor is i o , it is discharging the capacitor, and then it is considered negative (see Figure 2). In the other case, then the transistor is open (s function is low), the current through the capacitor i L − i o (see Figure 3). The average current through the capacitor is marked as gray. From Figure 5, the average current through the capacitor can be expressed as (8).
Mathematics 2020, 8,1911 6 of 19 inductor current would rise infinitely, this conclusion can be mathematically obtained when calculating the equilibrium point. The average voltage in the inductor can be expressed as (7), which is equivalent to (6), and the average current through the capacitor can be expressed as (8).
Similarly to Equation (6), Equation (8) can be explained with Figure 5; at the bottom of Figure 5, the switching function s is a digital function that indicates when the transistor is closed or open, when the transistor is closed (s function is high), the current through the capacitor is io, it is discharging the capacitor, and then it is considered negative (see Figure 2). In the other case, then the transistor is open (s function is low), the current through the capacitor iL-io (see Figure 3). The average current through the capacitor is marked as gray. From Figure 5, the average current through the capacitor can be expressed as (8). Figure 5. Important waveforms to calculate the average current through the capacitor, the switching function s, the current through capacitor function, and the capacitor's voltage, with a zoom-in to observe the ripple.
From Equations (7) and (8), important information can be obtained, for example, the equilibrium or steady-state, by zeroing the derivatives in (7) and (8), Equations (9) and (10) are obtained. Those equations represent the equilibrium point of the system.
Note that uppercase letters indicate the steady-state value of variables, which occur when the derivatives of the state variables are equal to zero since the equilibrium has been reached. Important variables can be obtained from (9) and (10), for example, the output voltage Vo, which in this case, is the same as the voltage VC across the capacitor C, from (9), it can be calculated as (11): Furthermore, the current through the inductor L, which is called iL, can be calculated by zeroing the derivative in (8), from (10), the expression would be (12).
The current Io can be defined in terms of the ohms law, considering the load resistance R. It still hasn't been determined for the Double Dual Boost Converter (DDBC), since it involves two capacitors and the input voltage, as shown in the next section. From Equations (7) and (8), important information can be obtained, for example, the equilibrium or steady-state, by zeroing the derivatives in (7) and (8), Equations (9) and (10) are obtained. Those equations represent the equilibrium point of the system.
Note that uppercase letters indicate the steady-state value of variables, which occur when the derivatives of the state variables are equal to zero since the equilibrium has been reached.
Important variables can be obtained from (9) and (10), for example, the output voltage V o , which in this case, is the same as the voltage V C across the capacitor C, from (9), it can be calculated as (11): Mathematics 2020, 8, 1911 7 of 20 Furthermore, the current through the inductor L, which is called i L, can be calculated by zeroing the derivative in (8), from (10), the expression would be (12).
The current I o can be defined in terms of the ohms law, considering the load resistance R. It still hasn't been determined for the Double Dual Boost Converter (DDBC), since it involves two capacitors and the input voltage, as shown in the next section.
Equations (7) and (8) are the large signal dynamic model of the converter; Equations (11) and (12) defines the equilibrium operation point or steady-state.

The Double Dual Boost Converter DDBC and Their Mathematical Model
The converter understudy, the DDBC [3,4] is shown in Figure 6; Figure 6b shows the circuit schematic; it is built with two power stages with equal parameter (equal inductance in inductors, equivalent capacitance in capacitors, and equal duty cycles). Each power stage is similar to the circuit studied in Section 2; for convenience, we can call the upper boost to the power stage made by s 1 , s 1 , L 1 , and C 1 , and the lower boost to the power stage made by s 2 , s 2 , L 2 and C 2 .

The Double Dual Boost Converter DDBC and Their Mathematical Model
The converter understudy, the DDBC [3,4] is shown in Figure 6; Figure 6b shows the circuit schematic; it is built with two power stages with equal parameter (equal inductance in inductors, equivalent capacitance in capacitors, and equal duty cycles). Each power stage is similar to the circuit studied in Section 2; for convenience, we can call the upper boost to the power stage made by s1, s̅ 1, L1, and C1, and the lower boost to the power stage made by s2, s̅ 2, L2 and C2.  Figure 6a shows the block diagram of the pulse width modulation (PWM) method, and Figure  6c shows important waveforms for both the PWM and the analog circuit, the PWM is based on two triangular carrier signals Tri-1, and Tri-2, and the modulation signal D which represents the duty cycles, carriers have the same magnitude (usually 1) and a 180° phase shift among each other, those three signals are shown in the bottom of Figure 6c.
In order to differentiate the signals that correspond to each switching stage, Tri-1 is shown as a continuous line, and Tri-2 is shown as a dotted line in, as shown in Figure 6a, the comparison of the signal D and both triangular carriers produce the switching function of each boost stage s1 and s2, which are shown in Figure 6c over the triangular carriers.
The switching function s1 is shown as a continuous line to indicate it correspond to the comparison of D and the carrier Tri-1. The transistor s1 is activated (a logic 1) when the signal D is larger (over) the signal Tri-1, this turn the transistor s1 on; in the other case, when the signal D is smaller (under) the signal Tri-1, the switching function (and the transistor with the same name) s1, are off (a zero logic). The same effect happens with the signal s2, which is shown as a dotted line to indicate it correspond to the comparison of the signal D with the triangular carrier Tri-2.
The switching action allows the circuit operation but also makes the current through inductors L1 and L2 to rise and fall. Inductor currents are signals iL1 and iL2 in Figure 6c; their behavior is explained with the basic Equation (3), the current increases when the voltage across the inductor terminals is positive and falls when their voltage is negative.
The circuit's output voltage can be determined by using the Kirchhoff voltage law (KVL). The output voltage is vo = vC1 + vC2 -vg, considering each boost stage behaves as the one analyzed in Section  Figure 6a shows the block diagram of the pulse width modulation (PWM) method, and Figure 6c shows important waveforms for both the PWM and the analog circuit, the PWM is based on two triangular carrier signals Tri-1, and Tri-2, and the modulation signal D which represents the duty cycles, carriers have the same magnitude (usually 1) and a 180 • phase shift among each other, those three signals are shown in the bottom of Figure 6c.
In order to differentiate the signals that correspond to each switching stage, Tri-1 is shown as a continuous line, and Tri-2 is shown as a dotted line in, as shown in Figure 6a, the comparison of the signal D and both triangular carriers produce the switching function of each boost stage s 1 and s 2 , which are shown in Figure 6c over the triangular carriers.
The switching function s 1 is shown as a continuous line to indicate it correspond to the comparison of D and the carrier Tri-1. The transistor s 1 is activated (a logic 1) when the signal D is larger (over) the signal Tri-1, this turn the transistor s 1 on; in the other case, when the signal D is smaller (under) the signal Tri-1, the switching function (and the transistor with the same name) s 1 , are off (a zero logic). The same effect happens with the signal s 2 , which is shown as a dotted line to indicate it correspond to the comparison of the signal D with the triangular carrier Tri-2.
The switching action allows the circuit operation but also makes the current through inductors L 1 and L 2 to rise and fall. Inductor currents are signals i L1 and i L2 in Figure 6c; their behavior is explained with the basic Equation (3), the current increases when the voltage across the inductor terminals is positive and falls when their voltage is negative.
The circuit's output voltage can be determined by using the Kirchhoff voltage law (KVL). The output voltage is v o = v C1 + v C2 − v g , considering each boost stage behaves as the one analyzed in Section 2, the voltage across capacitors can be expressed as (11), and the output voltage (in steady-state) and output current of the DDBC can be described as (13).
Note that two duty cycles are involved in Equation (13), D 1 and D 2 ; this is related to the use of two switching stages in Figure 6, D 1 is the duty cycle of transistor s 1 (and the inverse of s 1 ) while D 2 is the duty cycle of transistor s 2 (and the inverse of s 2 ).
The circuit's input current can also be found using the Kirchhoff current law (KCL); the input current is i g = i L1 + i L2 − i o . The output current and voltage are nearly constant in steady-state, their ripple is negligible, and then, the input current ripple is dominantly contributed by the ripple in inductors current.
Finally, the input current signal is shown at the top of Figure 6c; as it can be seen, the ripple is basically the summation of ripples in i L1 and i L2 , but the magnitude of the ripple is smaller than the ripple magnitude in individual inductors, this tanks to the 180 • shift on the triangular carriers most of the time ripple signals have a cancelation mechanism (one is negative while the other is positive), this allows the input current ripple to be smaller than the ripple in individual inductors.
There is actually an ideal operating point in which the input current ripple is zero; this operation point is shown in Figure 7, in which the duty cycle signal D is equal to 0.5. Note that two duty cycles are involved in Equation (13), D1 and D2; this is related to the use of two switching stages in Figure 6, D1 is the duty cycle of transistor s1 (and the inverse of s̅ 1) while D2 is the duty cycle of transistor s2 (and the inverse of s̅ 2).
The circuit's input current can also be found using the Kirchhoff current law (KCL); the input current is ig = iL1 + iL2 -io. The output current and voltage are nearly constant in steady-state, their ripple is negligible, and then, the input current ripple is dominantly contributed by the ripple in inductors current.
Finally, the input current signal is shown at the top of Figure 6c; as it can be seen, the ripple is basically the summation of ripples in iL1 and iL2, but the magnitude of the ripple is smaller than the ripple magnitude in individual inductors, this tanks to the 180° shift on the triangular carriers most of the time ripple signals have a cancelation mechanism (one is negative while the other is positive), this allows the input current ripple to be smaller than the ripple in individual inductors.
There is actually an ideal operating point in which the input current ripple is zero; this operation point is shown in Figure 7, in which the duty cycle signal D is equal to 0.5. For the DDBC, it is well known that the input current ripple is zero, only when D = 0.5, and traditionally there is no way to change this operation point. A new method to operate the DDBC was recently introduced to the literature [4]. Figure 8 shows the operation in that strategy, in the operation point in which the input current ripple is zero. The new method allows selecting the operating point in which the input current ripple is zero. Figure 7. The DDBC during the zero-input current-ripple, (a) PWM block diagram, (b) circuit schematic, and (c) important waveforms of the PWM strategy and the circuit operation.
For the DDBC, it is well known that the input current ripple is zero, only when D = 0.5, and traditionally there is no way to change this operation point. A new method to operate the DDBC was recently introduced to the literature [4]. Figure 8 shows the operation in that strategy, in the operation point in which the input current ripple is zero. The new method allows selecting the operating point in which the input current ripple is zero.
For the DDBC, it is well known that the input current ripple is zero, only when D = 0.5, and traditionally there is no way to change this operation point. A new method to operate the DDBC was recently introduced to the literature [4]. Figure 8 shows the operation in that strategy, in the operation point in which the input current ripple is zero. The new method allows selecting the operating point in which the input current ripple is zero.

i g (t)=i L1 (t)+i L2 (t)-i out (t) I g =I L1 +I L2 -I out t
Tri-1 Tri-2 The principle of the technique is choosing (in contrast to the traditional operation) different inductors and different duty cycles, the relation of inductors and duty cycles in [4], is a constant parameter k.
The ideal operation corresponds only to a specific duty cycle, or voltage gain, which can be expressed by (13), but several factors may change the operating point; for example, if a photovoltaic panel gets shaded by a cloud, their voltage drops and the converter must increase the duty cycle to compensate the input drop and have a larger voltage gain to regulate the output voltage, and then the input current ripple seems as indicated in Figure 9, the input current ripple is still smaller than in individual inductors, but the operation is better, as the ripple is smaller. The principle of the technique is choosing (in contrast to the traditional operation) different inductors and different duty cycles, the relation of inductors and duty cycles in [4], is a constant parameter k.
The ideal operation corresponds only to a specific duty cycle, or voltage gain, which can be expressed by (13), but several factors may change the operating point; for example, if a photovoltaic panel gets shaded by a cloud, their voltage drops and the converter must increase the duty cycle to compensate the input drop and have a larger voltage gain to regulate the output voltage, and then the input current ripple seems as indicated in Figure 9, the input current ripple is still smaller than in individual inductors, but the operation is better, as the ripple is smaller. The operation of the DDBC with reduced input current ripple can be summarized in the following manner, the duty cycle D of the converter is given to each power stage as (14).
Inductors and capacitors have the same relation k in the following manner (15). The operation of the DDBC with reduced input current ripple can be summarized in the following manner, the duty cycle D of the converter is given to each power stage as (14).
Inductors and capacitors have the same relation k in the following manner (15).
The large signal dynamic Equations are: From the dynamic Equations (16) to (19) the steady state can be written as: where I o is the output current, as defined in (13) along with the output voltage, from Equation (13) voltage gain equation, which is the relation of output voltage divided over the input voltage can be written as (22).
The input current ripple is particularly important for the application under study. The amplitude of the input current ripple can be calculated as the larges value obtained from (23) or (24): where f S is the switching frequency of the converter.

L-SHADE Algorithm
The L-SHADE is a prominent evolutionary method proposed to improve the Success-History based Adaptive DE algorithm by implementing a linear population size reduction technique. Its general procedure starts by randomly initializing a population P G of N individuals. After that, control parameters M CR and M F are initialized to generate the scaling factor F and the crossover rate CR by the following equations: In Equation (25), the symbol ⊥ denotes a terminal value, which locks CR to zero until the search ends in order to slow down convergence.
Equations (25) and (26) are part of the success-history adaptation mechanism used by L-SHADE. In this mechanism, the historical memory of successful parameter settings is recorded to generate new parameter configurations based on the values that have performed well in the past.
Since L-SHADE is an extended version of DE, it also incorporates the three main operators of an evolutionary algorithm: mutation, crossover, and selection. Thus, after the automatic adjustment of the control parameters CR and F, the mutation process is carried out to generate a mutant vector by Equation (27): From Equation (27), x pbest is randomly selected from the N × p best individuals so far in the population, while x r1 and x r2 are randomly selected individuals from the population such that they differ from each other. The mutant vector v is used to generate a trial vector u by implementing a binomial crossover as follows: Here, rand is a random value from the interval (0, 1). On the other hand, j denotes the index of the decision variable and j rand is a randomly selected index from (1, D) where D is the dimensionality of the optimization problem.
In the selection process, the best elements are selected to be part of the next generation. The selection considers a comparison between the trial vector u against its corresponding individual x such that the element with the best fitness value remains for the next generation. The selection is defined as: The improved strategy of L-SHADE is primarily based on a simple deterministic method that linearly reduces the population size through the course of generations by applying the following equation: Here, N G+1 is the size of the population at generation G + 1. The initial population is N init while N min is the size of the population at the end of the generations. The current number of objective function evaluations is NFE, and the maximum number of objective function evaluations is MAX_NFE. Since the number of individuals is decreasing over time, in every generation, the worst N G − N G+1 individuals are eliminated from the population.

Proposed Strategy
The proposed strategy is based on the same structure as the converter under study [4], but instead of having a constant relation among duty cycles, they are considered independent from each other; the relation among inductors is still constant since their inductance cannot be changed in a cheap and practical manner, during the operation, the relation among inductors is named k L to distinguish it from the relation among duty cycles k D , which is not constant but variable.
The problem when considering k D as a variable, or duty cycles as independent values, is that there is an infinite possible combination of duty cycles that combined provide a desired voltage gain, which can be observed from (22). If D 1 is reduced, the reduction on the first factor can be compensated with an increment on the second one. The key finding of this research is that among those infinite combinations, there is one that offers the minimum input current ripple. Then, the converter can operate in a better manner, with the same design. The ripple Equations (23) and (24) must be rewritten to differentiate between k L (constant relation among inductors) and k D (variable relation) among duty cycles. New equations are (31) and (32).
The voltage gain can still be expressed in the same way, as (33).
The L-SHADE evolutionary algorithm was used to select k D and D to minimize the input current ripple. The objective function is proposed as (34) to optimize the chosen values of k D and D.
Due there exist two different time periods in which the switching ripple at the input current can reach a maximum amplitude, the objective function minimizes the maximum of two different values. Additionally, the proposed model should include some constraints to achieve the voltage gain. The mathematical expression of the input current ripple contains switching period, and the search space contemplates the values of D and k D that can be used. Considering this, the mathematical model can be expressed as (34).
Subject to From Equation (35), a tolerance t is considered in the required gain. The tolerance is contemplated as 1% of G.

Implementation of L-SHADE in the Proposed Strategy
In the proposed strategy, the L-SHADE method is used to find D and k D values that minimize the input current ripple. In the process, every particle represents a variable decision vector in which a combination of values for D and k D is proposed as a possible solution. Under such considerations, the particle x i is represented as follows.
The fitness of every particle x i can be calculated by the fitness function defined in Equation (34). Hence, we can reformulate Equation (34) as in Equation (39).
Additionally, a penalty function is implemented to calculate the fitness values of the individuals from the population. The penalty function increases the fitness values of the particles that have violated the required constraint. This mechanism avoids unfeasible candidate solutions, steering the search through promising solutions. The definition of the penalty function is presented in (40).
From Equation (40), the constant factor w controls the penalty value. On the other hand, c {0, 1} indicates if the constraint has been violated or not. The variables x i1 and x i2 are D and k D , respectively. Equation (41) defines the fitness function described in Equation (39) when the penalty function from Equation (40) is included in the optimization process.
In the beginning, N particles are initialized within limits specified by (36) and (37). After that, the particles are evaluated using the fitness function given by Equation (41). Later, the particles are updated by implementing the L-SHADE method, where the solutions with the best fitness values are chosen to build the next generation. The iterative process continues while the maximum number of generations g max has not been attained. Algorithm 1 summarizes the described optimization process.

Numerical Experiments
The performance of the proposed strategy has been evaluated by implementing several experiments, where distinct voltage gain values G are contemplated to compare the former method against the proposed technique. The G values vary from 4.5 to 7.6 to comprise significant sample values.
To set the best parameter values for the optimization process, different population sizes were tested. Table 1 shows the obtained results using a population of 20, 30, 40, and 50 individuals for the full operating range. The best outcomes are highlighted in boldface.  G  20  30  40  50  G  20  30  40  50  4 From Table 1, the results reveal that the best values are reached using a population of 50 individuals. These outcomes were as expected since the larger the population, the highest the probability of finding better solutions. Of course, a trade-off must be satisfied in which the size of the population does not affect the computational cost.

Population Population
A summary of the results from Table 1 can be observed in Figure 10. This figure shows the number of best-found solutions for every population size. From the figure, it is evident that the number of best-found solutions increases as the population grows. For an operating range of 32, a population size of 20 individuals reaches 8/32 best-found solutions, a population of 30 achieves 16/32, and a population of 40 gets 19/32. In contrast, a population of 50 reaches the best values for the complete operating range. A population bigger than 50 individuals was not reported in the experiments since it does not significantly improve the results but increase the computational cost. Therefore, we adopted a population size of 50 for the optimization process. Regarding the parameter configuration of the L-SHADE method, different values have been tested for MCR and MF in order to find the best parameter settings. In the experiments, we have included the configuration suggested by the authors of the L-SHADE algorithm, in which the best performance of the method was observed with 0.5 for both MCR and MF. Based on these parameters, we have considered higher and lower values than 0.5, such as 0.2 and 0.8. Thus, the experiments were conducted considering MCR unchanged while varying MF from 0.2 to 0.8. Similarly, the other experiments consider MF unchanged while varying MCR from 0.2 to 0.8. The obtained results were reported in Table 2, where the best outcomes are highlighted in boldface.    Table 2, where the best outcomes are highlighted in boldface.
The obtained results from Table 2 are summarized in Figure 11. From the figure, it can be observed that the best parameter configuration is the one suggested by the authors of the L-SHADE algorithm, in which the values of M CR and M F are both 0.5. Therefore, these are the adopted settings for the experiments.
In the penalty function, the constant factor w has also been tested using different values to select the best parameter. In this analysis, the factor w has been set to 1, 10, 20, 50, and 100 for the full operating range. The obtained results are listed in Table 3, in which the best outcomes are highlighted in boldface.
From Table 3, it is evident that the best value for the factor w is 10. The information from the table is condensed in Figure 12. This figure shows the number of best-found solutions for every configuration, considering the 32 operating points. As can be seen, the highest number of best-found solutions is reached when the constant factor w is 10. Therefore, this value has been adopted for the optimization process.
The experiments consider a standard converter whose parameters are presented in Table 4. The reported outcomes were obtained from 100 independent executions because the L-SHADE is a stochastic technique. In the test, a population of N = 50 individuals and a maximum number of generations g max = 300 is contemplated in every execution.
The obtained results from the former strategy and the proposed method are listed in Table 5. The best results are emphasized in boldface. A closer examination from Table 5 proves that the proposed method reaches the lowest input current ripple ∆i in in the complete operating range. Figure 13 illustrates the convergence of the L-SHADE algorithm to analyze its search performance. The figure shows the speed of the L-SHADE method in searching for the optimal solution when the operating point G = 7.5. From 100 independent executions, the convergence of the best-obtained input current ripple, the average, and the median of the 100 results is presented in Figure 13.
The Wilcoxon test has been employed to validate the obtained results. In the analysis, the discrepancy between the proposed and the former strategy is determined. The outcomes achieved from 100 independent executions in every operating point are contemplated as the proposed method's observations. On the other hand, the former strategy's obtained results are replicated 100 times because it reaches the same value for each operating point.
The p-values resulting from the Wilcoxon test are smaller than the significance level, achieving a p-value of 6.39E-05 in the complete range. The p-values are identical in the entire range since the 100 observations are smaller than the hypothesized median value in every configuration. This scenario generates equal p-values, suggesting a considerable discrepancy between both methods. In conclusion, the p-values corroborate the evidence against the null hypothesis, indicating a significant difference between the proposed and the former techniques for all the experiments. Thus, the statistical analysis supports the obtained results from Table 5, where the proposed strategy has proved that outperforms the former method.
The speed performance of the algorithms for the full operating range is presented as a complementary analysis. The test has been conducted on a PC with 8 GB of memory and an Intel ® Core i7 Processor (3.4 GHz).
Considering the full operating range, the test shows that the former approach's elapsed real-time varies from 0.00006 to 0.0001 s. In contrast, the proposed method fluctuates from 0.15 to 0.17 s. The variants in the elapsed time are due to the delays in the internal computation process.  In the penalty function, the constant factor w has also been tested using different values to select the best parameter. In this analysis, the factor w has been set to 1, 10, 20, 50, and 100 for the full operating range. The obtained results are listed in Table 3, in which the best outcomes are highlighted in boldface.   The experiments consider a standard converter whose parameters are presented in Table 4. The reported outcomes were obtained from 100 independent executions because the L-SHADE is a stochastic technique. In the test, a population of N = 50 individuals and a maximum number of generations gmax = 300 is contemplated in every execution. The obtained results from the former strategy and the proposed method are listed in Table 5. The best results are emphasized in boldface. A closer examination from Table 5 proves that the proposed method reaches the lowest input current ripple Δiin in the complete operating range.   We can conclude from the speed test that the former strategy is faster than the proposed method because our approach involves additional calculus to find the optimal D and k D combination, affecting the computational time. Nevertheless, the proposed method's needed execution time is less than one second, which is pretty fast if we consider that it significantly reduces the input current ripple just in a little more time.  Figure 13 illustrates the convergence of the L-SHADE algorithm to analyze its search performance. The figure shows the speed of the L-SHADE method in searching for the optimal solution when the operating point G = 7.5. From 100 independent executions, the convergence of the best-obtained input current ripple, the average, and the median of the 100 results is presented in Figure 13. The Wilcoxon test has been employed to validate the obtained results. In the analysis, the discrepancy between the proposed and the former strategy is determined. The outcomes achieved from 100 independent executions in every operating point are contemplated as the proposed method's observations. On the other hand, the former strategy's obtained results are replicated 100 times because it reaches the same value for each operating point.
The p-values resulting from the Wilcoxon test are smaller than the significance level, achieving a p-value of 6.39E-05 in the complete range. The p-values are identical in the entire range since the 100 observations are smaller than the hypothesized median value in every configuration. This

Conclusions
The traditional operation of the DDBC consists of making one switching signal to depend on the other. However, if duty cycles are independent, the output voltage ripple and the input current ripple can be minimized while ensuring the required voltage gain of the converter. Nevertheless, there is an infinite number of combinations to achieve the desired voltage gain. Therefore, this article has proposed a new way to select the duty cycle for both switching signals in the DDBC based on the L-SHADE algorithm. The L-SHADE method is adopted to achieve the desired voltage gain and minimize the output voltage ripple and the input current ripple.
The numerical optimization was performed considering 32 different operating points. The obtained results were compared with the former strategy of the double dual boost converter. Experimental results have demonstrated that the proposed approach achieves a considerably lower output voltage ripple for the full operating range. Funding: Rosas-Caro would like to thank the support of the Universidad Panamericana, through the program "Fomento a la Investigación UP 2020", and project "Análisis de convertidores duales dobles" UP-CI-2020-GDL-01-ING.

Conflicts of Interest:
The authors declare no conflict of interest.