Tags: HugoFara/pylinkage
Tags
Beta version 0.5.2. Regular update. [Added] - You can see the best score and best dimensions updating in ``trials_and_errors_optimization``. [Changed] - The optimizers tests are 5 times quicker (~1 second now) and raise less false positive. - The sidebar in the documentation make navigation easier. - A bit of reorganization in optimizers, it should not affect users.
Beta version 0.5.1. This version mainly brings a progress during the trials and errors optimization, which is useful enough to publish a patch. [Added] - The trials and errors optimization now have a progress bar (same kind of the one in particle swarm optimization), using the [tqdm](https://pypi.org/project/tqdm/). [Changed] - [matplotlib](https://matplotlib.org/) and tqdm are now required.
Beta version 0.5.0! End of alpha development! The package is now robust enough to be used by a mere human. This version introduces a lot of changes and simplifications, so everything is not perfect yet, but it is complete enough to be considered a beta version. Git tags will no longer receive a "-alpha" mention. [Added] - It is now possible and advised to import useful functions from pylinkage.{object}, without full path. For instance, use ``from pylinkage import Linkage`` instead of ``from pylinkage.linkage import Linkage``. - Each module had his header improved. - The ``generate_bounds`` functions is a simple way to generate bounds before optimization. - The ``order_relation`` arguments of ``particle_swarm_optimization`` and ``trials_and_errors_optimization`` let you choose between maximization and minimization problem. - You can specify a custom order relation with ``trials_and_errors_optimization``. - The ``verbose`` argument in optimizers can disable verbosity. - ``Static`` joints can now be defined implicitely. - The ``utility`` module provides two useful decarators ``kinematic_minimization`` and ``kinematic_optimizatino``. They greatly simplify the workflow of defining fitness functions. - Versionning is now done thanks to bump2version. [Changed] - The ``particle_swarm_optimization`` ``eval_func`` signature is now similar to the one ot ``trials_and_errors`` optimization. Wrappers are no longer needed! - The ``trials_and_errors_optimization`` function now asks for bounds instead of dilatation and compression factors. - In ``trials_and_errors_optimization`` absolute step ``delta_dim`` is now replaced by number of subdivisions ``divisions``. [Fixed] - After many hours of computations, default parameters in ``particle_swarm_optimization`` are much more efficient. With the demo ``fourbar_linkage``, the output wasn't even convergent some times. Now we have a high convergence rate (~100%), and results equivalent to the ``trials_and_errors_optimization`` (in the example). - ``variator`` function of ``optimizer`` module was poorly working. - The docstrings were not displayed properly in documentation, this is fixed.
Alpha version 0.4.1. This version brings readable documentation with Sphinx. It also restores the legend when linkage is drawn. [Added] - The legend in ``visualizer.py`` is back! - Documentation published to GitHub pages! It is contained in the ``docs/`` folder. - ``setup.cfg`` now include links to the website. [Changed] - Examples moved from ``pylinkage/examples/`` to ``docs/examples/``. - Tests moved from ``pylinkage/tests/`` to ``tests/``.
Prerelease version 0.4.0. This version includes more tests for optimizers, visualization enhancements, and fix an important bug introduced in 0.3.0. Due to a problem in flake8 validation it is not the PyPi version. Complte changelog. [Added] - The ``bounding_box`` method of geometry allow to compute the bounding box of a finite set of 2D points. - You can now customize colors of linkage's bars with the ``COLOR_SWITCHER`` variable of ``visualizer.py``. - ``movement_bounding_box`` in ``visualizer.py`` to get the bounding box of multiple loci. - ``parameters`` is optional in ``trials_and_errors_optimization`` (former ``exhaustive_optimization``) - ``pylinkage/tests/test_optimizer.py`` for testing the optimizers, but it is a bit ugly as for now. [Fixed] - ``set_num_constraints`` in ``Linkage`` was misbehaving due to update 0.3.0. - Cost history is no longer plotted automatically after a PSO. [Changed] - ``exhaustive_optimization`` is now known as ``trials_and_errors_optimizattion``. - Axis on linkage visualization are now named "x" and "y", and no longer "Points abcsices" and "Ordinates". - A default view of the linkage is displayed in ``plot_static_linkage``. - Default padding in linkage representation was changed from an absolute value of 0.5 to a relative 20%. - Static view of linkage is now aligned with its kinematic one. - ``get_pos`` method of ``Linkage`` is now known as ``get_coords`` for consistency. - Parameters renamed, reorganized and removed in ``particle_swarm_optimization`` to align to PySwarms. - ``README.md`` updated consequently to the changes. [Removed] - Legacy built-in Particle Swarm Optimization, to avoid confusions. - We do no longer show a default legend on static representation.
Alpha version 0.4.0. This version includes more tests for optimizers, visualization enhancements, and fix an important bug introduced in 0.3.0. Complete changelog. [Added] - The ``bounding_box`` method of geometry allow to compute the bounding box of a finite set of 2D points. - You can now customize colors of linkage's bars with the ``COLOR_SWITCHER`` variable of ``visualizer.py``. - ``movement_bounding_box`` in ``visualizer.py`` to get the bounding box of multiple loci. - ``parameters`` is optional in ``trials_and_errors_optimization`` (former ``exhaustive_optimization``) - ``pylinkage/tests/test_optimizer.py`` for testing the optimizers, but it is a bit ugly as for now. - Flake 8 validation in tox.ini. [Fixed] - ``set_num_constraints`` in ``Linkage`` was misbehaving due to update 0.3.0. - Cost history is no longer plotted automatically after a PSO. [Changed] - ``exhaustive_optimization`` is now known as ``trials_and_errors_optimizattion``. - Axis on linkage visualization are now named "x" and "y", and no longer "Points abcsices" and "Ordinates". - A default view of the linkage is displayed in ``plot_static_linkage``. - Default padding in linkage representation was changed from an absolute value of 0.5 to a relative 20%. - Static view of linkage is now aligned with its kinematic one. - ``get_pos`` method of ``Linkage`` is now known as ``get_coords`` for consistency. - Parameters renamed, reorganized and removed in ``particle_swarm_optimization`` to align to PySwarms. - ``README.md`` updated consequently to the changes. [Removed] - Legacy built-in Particle Swarm Optimization, to avoid confusions. - We do no longer show a default legend on static representation.
This version introduces more syntactic sugar for optimization paramet… …ers. We also fixed bug where animations were not saved entirely. [Added] - ``Joint`` objects now have a ``get_constraints`` method, consistent with their ``set_constraints`` one. - ``Linkage`` now has a ``get_num_constraints`` method. - Code vulnerabilities checker - Walktrough example has been expanded and now seems to be complete. [Changed] - ``Linkage``'s method ``set_num_constraints`` behaviour changed! You should now add ``flat=False`` to come back to the previous behaviour. - ``pylinkage/examples/fourbar_linkage.py`` expanded and finished. - The ``begin`` parameter of ``article_swarm_optimization`` is no longer mandatory. ``linkage.get_num_constraints()`` will be used if ``begin`` is not provided. - More flexible package version in ``environment.yml`` - Output file name now is now formatted as "Kinematic {linkage.name}" in ``plot_kinematic_linkage`` function of ``pylinkage/visualizer.py`` - Python 3.6 is no longer tested in ``tox.ini``. Python 3.9 is now tested. [Fixed] - When linkage animation was saved, last frames were often missing in``pylinkage/visualizer.py``, function ``plot_kinematic_linkage``.
Making life of users easier! Expanded README.md with a walktrough. Package has been uploaded to PyPi. More tests, checks, etc...
PSO imrpovments and better package formatting. DEPRECATED: the PSO legacy algorithm is now unused. ADDED: - exceptions are now in a exceptions.py file. - PSO is now much more effective. - bounds can be specified for PSO. - PSO now uses random initial positions when bounds are specified. - hyperstaticity calculation in linkage.py (yet to be tested). - swarm_tiled_repr for PSO vizualization in pylinkage/vizualiser.py FIXED: - Various vizualisation problems of PSO. - tox.ini (tox now build without error) - CHANGELOG typos - circle method of Pivot in pylinkage/linkage.py was not working. IMPROVED: - Python style and docstrings in files.
PreviousNext