Skip to content

Commit 683c6de

Browse files
committed
Update .rst docs
1 parent 87af2c7 commit 683c6de

2 files changed

Lines changed: 91 additions & 2 deletions

File tree

docs/source/pygad.rst

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -496,7 +496,8 @@ Other Attributes
496496
- ``generations_completed``: Holds the number of the last completed
497497
generation.
498498

499-
- ``population``: A NumPy array holding the initial population.
499+
- ``population``: A NumPy array that initially holds the initial
500+
population and is later updated after each generation.
500501

501502
- ``valid_parameters``: Set to ``True`` when all the parameters passed
502503
in the ``GA`` class constructor are valid.
@@ -525,7 +526,7 @@ Other Attributes
525526
fitness of the most recent population is saved in the
526527
``last_generation_fitness`` attribute. The fitness of the population
527528
exactly preceding this most recent population is saved in the
528-
``last_generation_fitness`` attribute. This
529+
``previous_generation_fitness`` attribute. This
529530
``previous_generation_fitness`` attribute is used to fetch the
530531
pre-calculated fitness instead of calling the fitness function for
531532
already explored solutions. `Added in PyGAD

docs/source/releases.rst

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1774,6 +1774,94 @@ Release Date 08 July 2025
17741774
retrieving the best solution for multi-objective problems.
17751775
https://github.com/ahmedfgad/GeneticAlgorithmPython/pull/331
17761776

1777+
.. _pygad-360:
1778+
1779+
PyGAD 3.6.0
1780+
-----------
1781+
1782+
1. Support passing a class to the fitness, crossover, and mutation.
1783+
https://github.com/ahmedfgad/GeneticAlgorithmPython/issues/342
1784+
1785+
2. A new class called ``Validation`` is created in the new
1786+
``pygad/utils/validation.py`` script. It has a method called
1787+
``validate_parameters()`` to validate all the parameters passed
1788+
while instantiating the ``pygad.GA`` class.
1789+
1790+
3. Refactoring the ``pygad.py`` script by moving a lot of functions and
1791+
methods to other classes in other scripts.
1792+
1793+
4. The ``summary()`` method was moved to ``Helper`` class in the
1794+
``pygad/helper/misc.py`` script.
1795+
1796+
5. The validation code in the ``__init__()`` method of the ``pygad.GA``
1797+
class is moved to the new ``validate_parameters()`` method in the
1798+
new ``Validation`` class in the new ``pygad/utils/validation.py``
1799+
script. Moreover, the ``validate_multi_stop_criteria()`` method is
1800+
also moved to the same class.
1801+
1802+
6. The GA main workflow is moved into the new ``GAEngine`` class in the
1803+
new ``pygad/utils/engine.py`` script. Specifically, these methods
1804+
are moved from the ``pygad.GA`` class to the new ``GAEngine`` class:
1805+
1806+
1. run()
1807+
1808+
2. run_loop_head()
1809+
1810+
3. run_select_parents()
1811+
1812+
4. run_crossover()
1813+
1814+
5. run_mutation()
1815+
1816+
6. run_update_population()
1817+
1818+
7. initialize_population()
1819+
1820+
8. cal_pop_fitness()
1821+
1822+
9. best_solution()
1823+
1824+
10. round_genes()
1825+
1826+
7. The ``pygad.GA`` class now extends the two new classes
1827+
``utils.validation.Validation`` and ``utils.engine.GAEngine``.
1828+
1829+
8. The version of the ``pygad.utils`` submodule is upgraded from
1830+
``1.3.0`` to ``1.4.0``.
1831+
1832+
9. The version of the ``pygad.helper`` submodule is upgraded from
1833+
``1.2.0`` to ``1.3.0``.
1834+
1835+
10. Update the elitism after the evolution ends to fix issue where the
1836+
best solution returned by the ``best_solution()`` method is not
1837+
correct.
1838+
https://github.com/ahmedfgad/GeneticAlgorithmPython/issues/337
1839+
1840+
11. Fix a bug in calling the ``numpy.reshape()`` function. The parameter
1841+
``newshape`` is removed since it is no longer supported started from
1842+
NumPy ``2.4.0``.
1843+
https://numpy.org/doc/stable/release/2.4.0-notes.html#removed-newshape-parameter-from-numpy-reshape
1844+
1845+
12. A minor change in the documentation is made to replace the
1846+
``newshape`` parameter when calling ``numpy.reshape()``.
1847+
1848+
13. Fix a bug in the ``visualize/plot.py`` script that causes a warning
1849+
to be given when the plot leged is used with single-objective
1850+
problems.
1851+
1852+
14. A new method called ``initialize_parents_array()`` is added to the
1853+
``Helper`` class in the ``pygad/helper/misc.py`` script. It is
1854+
usually called from the methods in the ``ParentSelection`` class in
1855+
the ``pygad/utils/parent_selection.py`` script to initialize the
1856+
parents array.
1857+
1858+
15. | Add more tests to test:
1859+
| 1) Operators (crossover, mutation, and parent selection).
1860+
| 2) The ``best_solution()`` method.
1861+
| 3) Parallel processing.
1862+
| 4) The ``GANN`` module.
1863+
| 5) The plots created by the ``visualize``.
1864+
17771865
PyGAD Projects at GitHub
17781866
========================
17791867

0 commit comments

Comments
 (0)