psoanalysis

Numerical analysis of Particle Swarm Optimization (PSO) and numerical experiments demonstrating the practicability of the method

https://github.com/konstantinriedl/psoanalysis

Science Score: 49.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in README
  • Academic publication links
    Links to: springer.com
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.6%) to scientific vocabulary

Keywords

class classification derivative-free-optimization global-optimization high-dimensional illustration machine-learning metaheuristics non-convex-optimization numerical-analysis optimization particle-swarm-optimization
Last synced: 6 months ago · JSON representation

Repository

Numerical analysis of Particle Swarm Optimization (PSO) and numerical experiments demonstrating the practicability of the method

Basic Info
  • Host: GitHub
  • Owner: KonstantinRiedl
  • License: mit
  • Language: MATLAB
  • Default Branch: main
  • Homepage:
  • Size: 4.73 MB
Statistics
  • Stars: 3
  • Watchers: 1
  • Forks: 1
  • Open Issues: 0
  • Releases: 0
Topics
class classification derivative-free-optimization global-optimization high-dimensional illustration machine-learning metaheuristics non-convex-optimization numerical-analysis optimization particle-swarm-optimization
Created about 4 years ago · Last pushed over 2 years ago
Metadata Files
Readme License Citation

README.md

PSOAnalysis

Numerical analysis of Particle Swarm Optimization

PSO is a multi-agent metaheuristic derivative-free optimization method capable of globally minimizing nonconvex and nonsmooth functions in high dimensions. It was initially introduced by Kennedy and Eberhart in the 1990s.

Version 1.2

Date 31.05.2023


R e f e r e n c e

On the Global Convergence of Particle Swarm Optimization Methods

https://link.springer.com/article/10.1007/s00245-023-09983-3

by

  • Hui   H u a n g   (University of Graz),
  • Jinniao   Q i u   (University of Calgary),
  • Konstantin   R i e d l   (Technical University of Munich & Munich Center for Machine Learning)

D e s c r i p t i o n

MATLAB implementation, which illustrates PSO and the influence of its parameters, and tests the method on a competitive high-dimensional and well understood benchmark problem in the machine learning literature.

For the reader's convenience we describe the folder structure in what follows:

BenchmarkFunctions * objective_function.m: objective function generator * ObjectiveFunctionPlot1/2d.m: plotting routine for objective function

VarianceandEnergyBasedCBOAnalysis * analyses: convergence and parameter analyses of PSO * PSONumericalExample.m: testing script * PSOParametersPhaseTransition.m: Phase transition diagrams for parameter analysis * results: folder to save numerical results * plotphasetransitiondiagram: plotting routine for phase diagrams * PhaseTransitionDiagramsmsigma2: folder for phase transition diagrams for m and sigma2 * PSO: code of PSO optimizer * computeyalpha.m: computation of consensus point * Sbeta.m: function to compare current with in-time best position * PSOupdate: one PSO step * PSO.m: PSO optimizer * PSOmachinelearning.m: PSO optimizer for machine learning applications * visualizations: visualization of the CBO dynamics * PSODynamicsIllustration.m: Illustration of the PSO dynamics * PSOIllustrative.m: Illustration of the PSO at work

NN: machine learning experiments with PSO as optimization method for training * architecture * NN.m: forward pass of NN * evalaccuracy.m: evaluate training or test accuracy * compperformance.m: compute and display loss and training or test accuracy * data: data and function to load data * ScriptsforPSO * MNISTClassificationPSO.m: script training the NN for MNIST with PSO * results/PSO: folder to save numerical results * plottrainingtestingaccuracy: plotting routine for performance plots * CNN: folder for CNN results * ShallowNN: folder for shallow NN results * plotlossandtestingaccuracyPSON100/1000: plotting routine for performance plots


C i t a t i o n

bibtex @article{huang2023global, title={On the global convergence of particle swarm optimization methods}, author={Huang, Hui and Qiu, Jinniao and Riedl, Konstantin}, journal={Applied Mathematics \& Optimization}, volume={88}, number={2}, pages={30}, year={2023}, publisher={Springer} }

Owner

  • Name: Konstantin Riedl
  • Login: KonstantinRiedl
  • Kind: user
  • Company: Technical University of Munich

Doctoral Student in Mathematics at Chair for Applied Numerical Analysis, Department of Mathematics, Technical University of Munich

GitHub Events

Total
Last Year

Committers

Last synced: about 2 years ago

All Time
  • Total Commits: 11
  • Total Committers: 1
  • Avg Commits per committer: 11.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 3
  • Committers: 1
  • Avg Commits per committer: 3.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Konstantin Riedl k****l@y****e 11
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: about 2 years ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels