Skip to content

Shegzimus/Improved-Whale-Optimization-Algorithm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Improved Whale Optimization Algorithm for Solar PV Parameter Estimation

Overview

This repository contains the implementation of an Improved Whale Optimization Algorithm (IWOA) developed for my Master's thesis research on solar photovoltaic (PV) model parameter estimation. The research focuses on enhancing the standard Whale Optimization Algorithm through six novel modifications that improve the balance between exploration and exploitation.

Research Contribution

Problem Statement

The extraction of parameters for solar photovoltaic models is a complex nonlinear, multivariable optimization problem. This research addresses this challenge by improving the Whale Optimization Algorithm.

Key Modifications

  1. Sinusoidal variation of the control parameter 'a' for better exploration
  2. Oscillatory behavior patterns to enhance convergence
  3. Logarithmic decrease strategies for exploitation phase
  4. Exponential decay mechanisms for fine-tuning
  5. Inverse relationship functions for parameter adaptation
  6. Quadratic decrease patterns for balanced search

Repository Structure

Improved-Whale-Optimization-Algorithm/
├── src/
│   ├── algorithms/          # Optimization algorithms
│   │   ├── IWOA.py         # Improved Whale Optimization Algorithm
│   │   ├── WOA.py          # Standard Whale Optimization Algorithm
│   │   ├── Diff Evo.py     # Differential Evolution Algorithm
│   │   └── Least Squares.py # Least Squares optimization
│   ├── models/             # PV modeling components
│   │   ├── IV_Model.py     # Current-Voltage model implementation
│   │   └── IV-Curve.py     # IV curve plotting and analysis
│   ├── experiments/        # Experimental scripts and results
│   │   ├── Laboratory.py   # Main experimental framework
│   │   ├── Test.py         # Testing procedures
│   │   └── Function_A*.py  # Function A modification experiments
│   └── utils/              # Utility functions
│       ├── FunctionUtil.py # Core utility functions
│       └── root_multiple.py # Base algorithm framework
├── docs/
│   └── papers/            # Research papers and publications
├── results/
│   ├── data/              # Experimental data and statistics
│   └── figures/           # Generated plots and visualizations
├── tests/                 # Unit tests
├── requirements.txt       # Python dependencies
└── README.md             # This file

Installation

  1. Clone the repository:
git clone <repository-url>
cd Improved-Whale-Optimization-Algorithm
  1. Install required dependencies:
pip install -r requirements.txt

Usage

Running the Improved Algorithm

from src.algorithms.IWOA import BaoWOA

# Initialize algorithm parameters
woa_params = {
    "epoch": 100,
    "pop_size": 50
}

root_params = {
    "print_train": True
}

# Create and run the algorithm
algorithm = BaoWOA(root_params, woa_params)
best_position, loss_history = algorithm._train__()

PV Model Parameter Estimation

from src.models.IV_Model import *

# Load PV module parameters and run estimation
# See IV_Model.py for detailed implementation

Experimental Results

The algorithm was validated through:

  • 10 benchmark functions for performance evaluation
  • Statistical analysis of convergence behavior
  • Comparative studies with standard WOA and other optimization algorithms

Key Findings

  • Improved convergence rate compared to standard WOA
  • Better balance between exploration and exploitation phases
  • Enhanced solution quality for multimodal optimization problems

Dependencies

  • numpy>=1.21.0 - Numerical computations
  • matplotlib>=3.5.0 - Plotting and visualization
  • pandas>=1.3.0 - Data manipulation
  • pvlib>=0.9.0 - PV modeling library
  • scipy>=1.7.0 - Scientific computing

Research Papers

The complete research findings are available in the docs/papers/ directory:

  • Improved_Parameter_Estimation_of_TD_PV_Models_FINAL.pdf - Complete thesis
  • Improved_Parameter_Estimation_of_TD_PV_Models__Article_.pdf - Research article

Index Terms

  • Photovoltaics
  • Parameter Estimation
  • Triple Diode
  • Whale Optimization
  • Metaheuristic Algorithms
  • Solar Energy

Contributing

This repository represents completed research work. For questions or collaborations, please refer to the contact information in the research papers.

License

This research code is provided for academic and research purposes. Please cite appropriately if used in your research.

Citation

If you use this work in your research, please cite the corresponding papers available in the docs/papers/ directory.

About

Source code for the thesis of my masters program

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages