Metadata-Version: 2.1
Name: aefaalgo
Version: 0.0.4
Summary: Python package for AEFA: Artificial electric field algorithm for global optimization
Home-page: UNKNOWN
Author: Sakshi Bhatia
Author-email: sakshisb@yahoo.com
License: MIT
Keywords: Optimization,Soft computing,Artificial intelligence,Electric force
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENSE.txt

# AEFA

AEFA is a Python library for AEFA: Artificial electric field algorithm, a novel algorithm for solving non-linear optimization problems.
The paper for the same can be found here at: http://www.sciencedirect.com/science/article/pii/S2210650218305030

## Installation

Use the package manager [pip](https://pip.pypa.io/en/stable/) to install aefaalgo.

```bash
pip install aefaalgo
```

## Usage

```python
from aefaalgo.aefa_optimize import aefa

# returns optimum fitness value and space coordinates
aefa().optimize(N, max_iter, func_num)
 Keyword arguments:
N: number of particles in search space

max_iter: number of iterations

func_num: Specifies the function to be optimized

Optional Keyword Arguments: 
tag: specifies whether we want maxima or minima.
0 by default for maximization. Specify tag=1 for minimization.

Rpower: exponent for the normalized distance between the particles.
Default value 1

FCheck: This factor ensures that only 2-6% charges apply force to others in the last iterations.
Set to True by default. 

show_plot: True if you want to visualize convergence to the optimum, False otherwise and default.

```

## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

## License
[MIT](https://choosealicense.com/licenses/mit/)

