CEC2017 benchmark suite using Rao-2 optimization algorithm
Project description
CEC2017-Rao2
CEC2017 benchmark suite implementation using the Rao-2 optimization algorithm.
Description
This package provides an implementation of the CEC2017 benchmark functions optimized using the Rao-2 algorithm. The CEC2017 suite consists of 30 benchmark functions for single-objective optimization, and this implementation allows for easy experimentation and comparison of optimization algorithms.
Installation
From PyPI
pip install cec2017-rao2
From GitHub
pip install git+https://github.com/LakshyMaheshwari/CEC2017-using-Rao-2-.git
From Source
git clone https://github.com/LakshyMaheshwari/CEC2017-using-Rao-2-.git
cd CEC2017-using-Rao-2-
pip install -e .
Quick Start
from cec2017_rao2.runner import run_experiment
# Run function 1 in 10 dimensions
run_experiment(
func_id=1,
dimension=10,
lb=-100,
ub=100,
pop_size=30,
max_fes=100000,
runs=51
)
Project Structure
cec2017_rao2/
├── algorithms/ # Optimization algorithms (Rao-2)
├── functions/ # Benchmark functions
│ └── cec2017/ # CEC2017 specific functions and data
├── utils/ # Utility functions
└── visualization/ # Plotting and visualization tools
Requirements
- Python >= 3.7
- numpy
- scipy
- matplotlib
Usage
Running Experiments
Use the provided main.py script for interactive experimentation:
python main.py
Select a function ID (1-30) and the system will run the appropriate experiments.
Using the Library
Import and use individual components:
from cec2017_rao2.algorithms.rao2 import rao2
from cec2017_rao2.functions.core import evaluate
License
This project is licensed under the MIT License - see the LICENSE file for details.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Citation
If you use this code in your research, please cite:
@software{cec2017_rao2,
author = {Lakshya Maheshwari},
title = {CEC2017-Rao2: CEC2017 benchmark suite using Rao-2 optimization},
url = {https://github.com/LakshyMaheshwari/CEC2017-using-Rao-2-},
version = {0.1.0},
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cec2017_rao2-0.1.0.tar.gz.
File metadata
- Download URL: cec2017_rao2-0.1.0.tar.gz
- Upload date:
- Size: 3.6 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1b38c1cd232ace5f13c6552d46299b44a417b76b586690d86996547b26fd76ec
|
|
| MD5 |
9c4a437ecf32167544d896609b86ecc5
|
|
| BLAKE2b-256 |
e3bf317f7b0b33d923d5a53f9cb62d6fab65cc35bd538ce6cabf71ae9c875f8f
|
File details
Details for the file cec2017_rao2-0.1.0-py3-none-any.whl.
File metadata
- Download URL: cec2017_rao2-0.1.0-py3-none-any.whl
- Upload date:
- Size: 3.8 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a37b1e3d8c91ef6ab0ef2f1110befddaa53da1c67f2bed0d3708bbb48c52cbb7
|
|
| MD5 |
067dce4a768e849876390720b6d362b9
|
|
| BLAKE2b-256 |
4c8a0d163e100949d1d10191805caecfc2a7334669d9e237a5a7dfdd6470e18f
|