Skip to content
This repository has been archived by the owner on Jul 16, 2024. It is now read-only.

V1.1.3 Release Notes

Jacco Geul edited this page Feb 24, 2014 · 1 revision

Major Changes

Multiobjective Optimization

Support for multiobjective optimization has improved radically. The notion of crowding distance operator is now used to rank individuals in a population (methods get_best_idx and get_worst_idx use it to select individuals). Pareto fronts are computed via simple-to-use methods and the migration operator has been updated to insert migrants according to the crowding distance criteria. The class population now has a get_domination_list and a get_domination_count method to help coding multiobjective algorithms.

Improvements on the generalized migration operator

The generalized migration operator has been enriched. A new selection policy killing the individuals selected has been implemented (the idea is that if a population is able to express a certain chromosome it will be able to do that again, and killing the emigrant could therefore help in exploitation in an archipelago). Also, the migration operator is now able to cope with multiobjective problems, helping to subdivide big populations into smaller ones, thus reducing the known high computational cost of evaluating the crowding distances .... Also, the migration history is now logging only successfully migrating individuals, rather than all migrants.

New Algorithms

NSGA-II has been added to the PaGMO/PyGMO arsenal (supporting only continuous problem in this initial version). The record breaking algorithm Differential Evolution with p-best crossover has been implemented. The Self adaptive differential evolution, is now called jDE, as in the original paper. Other small interface improvements have been carried out to other algorithms

Problems

The multiobjective problem suite has been fixed (it was buggy in previous versions) and and the GTOP database problem cassini_1 can now also be instantiated as a multiobjective problem.

Minor Changes

  • Warning at import fixed (only works 4 python 2.7.2)
  • Monotonic Basin Hopping (algorithm.mbh class in PyKEP) now logging infeasible solution when screen output is active.
  • The boolean kwarg memory is introduced in algorithms such as cmaes with an internal state to preserve the internal state between successive algoritmic calls. This substitutes the obsolete kwarg restart which was confusing.
  • The migration history log has changed so that only solutions that were succesfully accepted in the receiving island are logged.
Clone this wiki locally