History

v0.0.11-alpha

This is the initial release of iwopy - ready for testing.

So far not many models have been transferred from the Fraunhofer IWES in-house predecessor iwes-opt, they will be added in the following versions. We are just getting started here!

Enjoy - we are awaiting comments and issues, thanks for testing.

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.0.11

v0.0.12-alpha

  • Benchmarks:

    • New benchmark rosenbrock added

  • Tests:

    • Extended tests for pygmo and pymoo

  • Fixes:

    • Bugs fixed with discretization

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.0.12

v0.0.13-alpha

  • Wrappers:

    • Introducing SimpleObjective and SimpleConstraint, for functions of simple numeric types like f(x, y, ...)

  • Examples:

    • New example: electrostatics, solvable with IPOPT, GA, PSO

  • Notebooks:

    • Work on examples.ipynb: Adding section on simple function minimization

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.0.13

v0.0.14-alpha

  • Notebooks:

    • Work on examples.ipynb: Adding electrostatics example

  • Core:

    • OptResults can now be printed

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.0.14

v0.0.15-alpha

  • Utils:

    • RegularDiscretizationGrid now with interpolation parameter: None, nearest or linear

  • Wrappers:

    • New wrapper: LocalFD, Local Finite Difference. Calculates function derivatives by applying local finite difference rules. Currently orders 1 and 2 are implemented, more could be added later.

  • Optimizers:

    • New optimizer: GG, Greedy Gradient. A pretty straight forward gradient based local optimizer that projects out (or reverses) directions of constraint violation. Mostly implemented for the purpose of testing gradients, but maybe worth a try also for problem solving.

  • Examples:

    • electrostatics: New optional constraint MinDist, forcing charges to keep a minimal distance. Also adding a script that demonstrates how to solve this problem using NLOPT via pygmo, and another for solving the problem using the GG algorithm.

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.0.15

v0.1.0-alpha

  • Bug fixes

  • Updated documentation

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.1.0

v0.1.1-alpha

  • Tests:

    • pygmo: Increased ngen and npop, intended for osx systems to pass tests

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.1.

v0.1.2-alpha

  • Tests:

    • pygmo: Fixing test such that it passes on all systems

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.1.2

v0.1.3-alpha

  • Core:

    • Support for multi objective optimizations

    • Splitting OptResults into SingleObjOptResults and MultiObjOptResults

  • Interfaces:

    • pymoo: Adding nsga2

  • Examples:

    • New: multi_obj_chain, demonstrating multi objective optimization using pymoo’s NSGA2

  • Notebooks:

    • New: multi_obj_chain.ipynb, demonstrating multi objective optimization using pymoo’s NSGA2

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.1.3

v0.1.4-alpha

  • Interfaces:

    • Improved: pymoo now supports mixed int/float problems and algorithm MixedVariableGA

    • Changed: pymooalgorithms now selectable via same name as in package, i.e., GA, PSO, NSGA2, MixedVariableGA

  • Examples:

    • New: mixed, demonstrating how to solve a mixed int/float problem with pymoo

  • Notebook:

    • New: mixed, demonstrating how to solve a mixed int/float problem with pymoo

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.1.4

v0.1.5-alpha

  • Small bug fixes

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.1.5

v0.1.6-alpha

  • Interfaces

    • New interface to scipy: Calling the scipy.optimize.minimize function

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.1.6

v0.1.7-beta

  • Utils

    • New import_module utility, dynamically loading packages and modules

  • Interfaces

    • Improved dynamic imports of pygmo and pymoo

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.1.7

v0.1.8-beta

  • Bug fixed in setup.cfg

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.1.8

v0.1.9-beta

  • Bug fixes

    • Fixes for bugs in tests for Python 3.7 and 3.11

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.1.9

v0.2-beta

  • Interfaces:

    • Improved pymoo: Dynamical derivation from classes from optional package import

  • Documentation:

    • Completely new sphinx style

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.2

v0.2.1

  • Documentation improvements

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.2.1

v0.2.2

  • Restricting numpy to <2, due to dependencies

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.2.2

v0.2.3

  • Recovering support for Python 3.7

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.2.3

v0.3

  • removing restriction numpy <2, since now latest numpy is supported again by indirect dependency autograd

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.3

v0.3.1

  • Added factories for allowing automatized setups

Full Changelog: https://github.com/FraunhoferIWES/iwopy/commits/v0.3.1