Revision history for PDL-Opt-Simplex-Simple

2.004	2024-12-10T10:20:47-08:00
	- Updated ParticleSwarm.pm:
	  * Modified _initParticles to scale random velocity
	  * Updated documentation for -randStartVelocity parameter
	  * Added comment to _randInRangePDL function

	- Updated Simplex/Simple.pm:
	  * Improved comments in _build_enabled_var_list function
	  * Minor formatting fix in _clamp_minmax function
	- add PDL::Opt::Simplex dependency, closes #5

2.003	2024-07-21T15:49:34-07:00
	- bugfix: work-around NaNs that may arise in ::Simplex::Core.
	  this bugfix is slightly different from the previous one,
	  both are needed.

2.002	2024-07-20T19:09:36-07:00
	- bugfix: work-around NaNs that may arise in Particle Swarm

2.001	2024-04-20T22:02:43-07:00
	- bugfix: add workers as a valid option
	- add parallel worker test

2.0	2024-04-20T21:33:12-07:00
	- Add support for parallel Simplex and ParticleSwarm workers
	- Catch SIGINT to  provide the best values so far, and then return as
	  if the simulation finished (without crashing).
	- ParticleSwarm: Pre-seed "best" values if initialGuess is provided
	- Simplex: move tolerance to simplex opts
	- bugfix: Only clamp or round variables if the variables are enabled
	- bugfix: Fix an undef dereference of best_minima

1.8	2023-08-16T19:18:42-07:00
	- Implement the PDL::Opt::ParticleSwarm optimization algorithm to
	  optimize PDL's.  The function and log callback calling convention is
	  intentionally similar PDL::Opt::Simplex.  Code written to optimize
	  using Simplex can be trivially converted to optimize with Particle
	  Swarm.
	- Implement PDL::Opt::ParticleSwarm::Simple as a subclass of
	  PDL::Opt::Simplex::Simple.  Again, the calling convention for log and
	  function callbacks is very similar, only the optimization-specific
	  options differ.
	- PDL::Opt::Simplex::Simple: do a better job clamping min/max values
	  during optimization so the Simplex algorithm doesn't try to work out
	  of bounds.
	- PDL::Opt::Simplex::Simple: fixed a major perturb_scale bug
	- Lots of POD updates, now we achieve 100% POD coverage
	- Added many more tests
	- Auto-sort MANIFEST as suggested by @mohawk2
	- Fixup t/{pod-coverage.t,pod.t,manifest.t} to pass RELEASE_TESTING=1

1.7	2022-11-15T19:12:30-08:00
	- Reverted fix from 1.6 and increased PDL version requirement to 2.56
	  per @mohawk.

1.6	2022-11-13T22:37:33-08:00
	- Hopefully fixed ->sclr regression reported by some testers.

1.5	2022-11-10T18:46:56-08:00
	- Added option to reduce simplex search space (reduce_search)
	- Fixed min/max clipping bug when handling PDL-valued variables
	- Updated C<log> hash.  Added {best_minima} and {best_vars}.
	- Fixed {minima}, which is now the same as {best_minima} for backwards
	  compatiblity because {minima} was invalid.

1.4	2022-06-18T18:37:08-07:00
	- Updated documentation, usecase examples and links.
	- Fixed version regression, cpan saw 1.3.1 as 1.003001 but
	- previous versions were seen as 1.3 so 1.003 looked smaller. oops.

1.3.1	2022-06-18T17:39:57-07:00
	- Fixed srand handling, added git repo info

1.3	2022-06-17T18:21:05-07:00
	- Use die to cancel if simplex is not making progress.

1.2	2022-06-14T17:33:09-07:00
	- Flagged PDL srand issue

1.1	2022-06-10T14:02:46-07:00
	- First public release, released on an unsuspecting world.  This release
	- has lots of great documentation.

1.0	2021-11-17T20:21:53-08:00
	- Initial internal release