Skip to content

Commit

Permalink
Update new version 2.4.0
Browse files Browse the repository at this point in the history
  • Loading branch information
thieu1995 committed Mar 22, 2022
1 parent 3b5d3a4 commit 3bfb333
Show file tree
Hide file tree
Showing 4 changed files with 48 additions and 7 deletions.
31 changes: 31 additions & 0 deletions ChangeLog.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,34 @@
# Version 2.4.0

### Update

+ Add mealpy's support functions in terminal: help(mealpy), dir(mealpy)
+ Add logger module (Logger class)
+ Add validator module (Validator class)
+ Change in Optimizer class:
+ remove function get_global_best_global_worst_solution()
+ replace save_optimization_process() by track_optimize_step() and track_optimize_process()
+ update input of Problem and Termination object in Optimizer.
+ add logger
+ add validator and update all algorithms
+ update function: get_special_solutions()
+ rename function: crossover_arthmetic_recombination() to crossover_arithmetic()
+ rename function: get_fitness_position() to get_target_wrapper()
+ rename function: update_fitness_population() to update_target_wrapper_population()

+ A default method: generate_position() in Problem class.
+ Due to nature's characteristics of different problems, 2 methods can be designed for Optimizer to fit the problem
are generate_position() and amend_position(). Both methods are moved from Optimizer
class to Problem class, the create_solution() in Optimizer class will call these methods to create a new solution.
+ Update History and Problem class
+ design default amend_position function in Problem class
+ parameter: obj_weight changed to obj_weights
+ add parameter: save_population to control
+ Add Pareto-like Sequential Sampling (PSS) to math_based group


---------------------------------------------------------------------

# Version 2.3.0

### Update
Expand Down
3 changes: 3 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@

include README.md ChangeLog.md LICENSE

global-exclude *.py[cod]



16 changes: 11 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Meta-Heuristic Algorithms using Python (MEALPY)
[![GitHub release](https://img.shields.io/badge/release-2.3.0-yellow.svg)](https://github.com/thieu1995/mealpy/releases)
[![GitHub release](https://img.shields.io/badge/release-2.4.0-yellow.svg)](https://github.com/thieu1995/mealpy/releases)
[![Wheel](https://img.shields.io/pypi/wheel/gensim.svg)](https://pypi.python.org/pypi/mealpy)
[![PyPI version](https://badge.fury.io/py/mealpy.svg)](https://badge.fury.io/py/mealpy)
[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3711948.svg)](https://doi.org/10.5281/zenodo.3711948)
Expand All @@ -20,14 +20,15 @@
* MEALPY is a largest python module for the most of cutting-edge nature-inspired meta-heuristic
algorithms and is distributed under GNU General Public License (GPL) V3 license.

* Current version: 2.3.0, Total algorithms: 154 (original + variants), 87 original algorithms (8 dummy algorithms)
* Current version: 2.4.0, Total algorithms: 155 (original + variants), 88 original algorithms (8 dummy algorithms)
* Different versions of mealpy in term of passing hyper-parameters. So please careful check your version before
using this library. (All releases can be found here: [Link](https://pypi.org/project/mealpy/#history))
* mealpy < 1.0.5
* 1.1.0 < mealpy < 1.2.2
* 2.0.0 <= mealpy <= 2.1.2
* mealpy == 2.2.0
* mealpy >= 2.3.0 (From this version, algorithms can solve discrete problem)
* mealpy == 2.3.0
* mealpy == 2.4.0 (From this version, algorithms can solve discrete problem)

* The goals of this framework are:
* Sharing knowledge of meta-heuristic fields to everyone without a fee
Expand Down Expand Up @@ -77,7 +78,7 @@
Install the [current PyPI release](https://pypi.python.org/pypi/mealpy):
```code
pip uninstall mealpy
pip install mealpy==2.3.0
pip install mealpy==2.4.0
```

### Examples
Expand All @@ -97,7 +98,8 @@ problem_dict1 = {
"lb": [-100, ] * 30,
"ub": [100, ] * 30,
"minmax": "min",
"verbose": True,
"log_to": None,
"save_population": False,
}

## Run the algorithm
Expand Down Expand Up @@ -618,6 +620,10 @@ Code: [Link](https://github.com/thieu1995/mealpy/blob/master/examples/applicatio
* **PFA - Pathfinder Algorithm**
* **BasePFA**: Yapici, H., & Cetinkaya, N. (2019). A new meta-heuristic optimizer: Pathfinder algorithm. Applied Soft Computing, 78, 545-568.

* **PSS - Pareto-like Sequential Sampling**
* **OriginalPSS**: Shaqfa, M., & Beyer, K. (2021). Pareto-like sequential sampling heuristic for global optimisation. Soft Computing, 25(14), 9077-9096.


### Q

* **QSA - Queuing Search Algorithm**
Expand Down
5 changes: 3 additions & 2 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,16 +12,17 @@ def readme():
README = f.read()
return README


setup(
name="mealpy",
version="2.3.0",
version="2.4.0",
author="Thieu",
author_email="nguyenthieu2102@gmail.com",
description="A collection of the state-of-the-art Meta-heuristic Algorithms in Python (mealpy)",
long_description=readme(),
long_description_content_type="text/markdown",
url="https://github.com/thieu1995/mealpy",
download_url="https://github.com/thieu1995/mealpy/archive/v2.3.0.zip",
download_url="https://github.com/thieu1995/mealpy/archive/v2.4.0.zip",
packages=find_packages(exclude=['*tests', 'examples*']),
include_package_data=True,
classifiers=[
Expand Down

0 comments on commit 3bfb333

Please sign in to comment.