Renewable EnergyPublished Paper4 citations

QPSO-Tuned PI Controller for SEPIC

Quantum-behaved particle swarm optimization for automatic PI controller tuning in SEPIC converters. 40-60% faster MPPT convergence, 70% less steady-state oscillation.

Full Citation
Quantum-behaved particle swarm optimization tuned PI controller for SEPIC converter in photovoltaic applications
Bulletin of Electrical Engineering and Informatics (BEEI) · 2025 · 4 citations

The Problem

PI (Proportional-Integral) controllers are the workhorse of power electronics — simple to implement, well-understood, and computationally cheap. But their performance depends entirely on two parameters: Kp (proportional gain) and Ki (integral gain). In photovoltaic MPPT applications, poorly tuned gains cause slow convergence to the maximum power point, steady-state oscillation that wastes harvested energy, or instability during irradiance transients.

Manual tuning via Ziegler-Nichols or trial-and-error works for a single operating point, but PV systems operate across a wide range of irradiance and temperature conditions. A PI controller tuned for peak sun may oscillate under cloud cover. One tuned for stability may respond too slowly to fast-moving shading. The problem calls for adaptive tuning — and metaheuristic optimization offers a path.

Particle Swarm Optimization (PSO) can search the Kp-Ki parameter space for optimal values, but standard PSO requires tuning its own hyperparameters (inertia weight, cognitive/social coefficients) and can converge prematurely to local optima. Quantum-behaved PSO (QPSO) addresses both issues by replacing velocity-based updates with a quantum-inspired probability distribution, eliminating velocity terms entirely and improving global search capability.

The System

The SEPIC (Single-Ended Primary Inductor Converter) is a DC-DC converter topology that can step voltage up or down — advantageous for PV systems where the array voltage varies with irradiance. Unlike a buck converter (step-down only) or boost converter (step-up only), the SEPIC handles the full range of PV operating voltages, making it a flexible choice for MPPT applications.

The QPSO algorithm models each particle as a quantum state rather than a classical point-mass with velocity. Instead of updating position via velocity, QPSO samples from a probability distribution centered on a local attractor point — the weighted average of the particle's personal best and the swarm's global best. This quantum-inspired update naturally explores the search space more broadly, reducing premature convergence risk.

The objective function for the optimization combines three weighted criteria: (1) integral of time-weighted absolute error (ITAE) for tracking performance, (2) overshoot penalty for stability, and (3) steady-state oscillation amplitude for energy efficiency. The QPSO runs offline in MATLAB/Simulink, producing tuned Kp-Ki pairs for different irradiance conditions, which are then implemented in the real-time PI controller.

Simulation scenarios cover four operating conditions: uniform irradiance (1000 W/m^2), partial shading (800/600 W/m^2 split), rapid transient (1000->400 W/m^2 step), and temperature variation (25C to 50C). Each scenario tests both convergence speed and steady-state stability.

System Architecture
1
PV Array Model
Single-diode model with irradiance and temperature inputs
2
SEPIC Converter
Buck-boost topology, 20 kHz switching, coupled inductor
3
PI Controller
Kp and Ki tuned by QPSO, error = V_ref - V_actual
4
QPSO Optimizer
Offline parameter search with ITAE + overshoot + ripple cost
5
MPPT Reference
P&O generates V_ref, PI controller tracks it

Results

The QPSO-tuned PI controller achieved 40-60% faster convergence to the maximum power point compared to manually-tuned PI controllers (Ziegler-Nichols method). Under partial shading, where the P-V curve shifts abruptly, the tuned controller settled to the new MPP in under 150 ms — fast enough to capture energy during brief irradiance windows between cloud passages.

Steady-state power oscillation was reduced by approximately 70% compared to manually tuned controllers. The ITAE-based cost function penalizes both slow convergence and persistent oscillation, producing gain values that balance responsiveness against stability. Across all four simulation scenarios, the QPSO-tuned gains maintained stable operation without requiring retuning.

The offline optimization approach means the computational cost of QPSO is paid once during design, not during real-time operation. The resulting PI controller is as lightweight as any fixed-gain implementation — only two multiply-add operations per control cycle — making it suitable for embedded deployment on low-cost microcontrollers.

Controller Performance Comparison (normalized)
MethodSpeedOscillationStability
QPSO-tuned PI (this work)10030100
Ziegler-Nichols PI6010070
PSO-tuned PI805085
Manual trial-and-error PI408060
Higher = better for convergence and stability; lower = better for oscillation. All values normalized to Ziegler-Nichols baseline = 100 (oscillation) / 60 (speed).

Implementation

The QPSO optimizer is implemented in MATLAB as a standalone function that takes the Simulink SEPIC model as the objective function evaluator. Each QPSO iteration runs a Simulink simulation with the candidate Kp-Ki values, computes the cost function from the output waveforms, and updates particle positions via the quantum-inspired update rule.

The Simulink model includes: PV array (single-diode model with irradiance/temperature inputs), SEPIC converter (switching model at 20 kHz), PI controller (Kp-Ki gain block), P&O MPPT reference generator, and resistive load. Scope blocks capture voltage, current, and power waveforms for post-simulation analysis.

Key MATLAB files include: `qpso_optimizer.m` (QPSO algorithm with quantum update rule), `cost_function.m` (ITAE + overshoot + ripple calculation), `run_simulation.m` (Simulink model wrapper), and `plot_comparison.m` (generates the QPSO vs. Ziegler-Nichols vs. PSO comparison charts).

Technology Stack
Language
MATLAB/Simulink
Platform
MATLAB R2023b + Simulink + Simscape Electrical