Giter VIP home page Giter VIP logo

wandmalfarbe / glowworm-swarm-optimization-java Goto Github PK

View Code? Open in Web Editor NEW
3.0 3.0 1.0 34.88 MB

A Java implementation and visualization of the glowworm swarm optimization (GSO) algorithm invented by Krishnanand N. Kaipa and Debasish Ghose.

License: BSD 3-Clause "New" or "Revised" License

Shell 0.61% Java 99.39%
optimization-algorithms metaheuristics glow-worm swarm-intelligence swarm-intelligence-algorithms nature-inspired-computation visualization java javafx glowworm-swarm-optimization

glowworm-swarm-optimization-java's Introduction

Glowworm Swarm Optimization Java

A Java implementation and visualization of the glowworm swarm optimization (GSO) algorithm invented by Krishnanand N. Kaipa and Debasish Ghose for the capturing of multiple optima of multimodal functions.

A preview of the Java application with the peaks function.

This app was created as part of a seminar work and served as an aid to understand the glowworm swarm optimization. It is a simple visualization of the glowworm movement with the target function in the background. You can choose between several target functions from the paper:

  • Peaks
  • Rastrigin
  • Circles
  • Staircase
  • Plateaus
  • Sky Blue
  • Equal Peaks

The parameters population size, iterations, and the initial neighborhood range can be set in the graphical interface. Further parameters, e.g. the initial luciferin level, rho or gamma can easily be adjusted in the program code.

Preview GIF

An animated GIF of the GSO algorithm and the moving glowworms.

A preview of the Java application with the Hölder table function.

Credits

Known Bugs

  1. The new calculated position of the glowworms from the iteration t should be applied at iteration t+1 and not at the same iteration (see GSOAlgorithm.java, Lines 127 and 128).

License & Credit

This project is open source licensed under the BSD 3-Clause License. Please see the LICENSE file for more information.

If you use this app or the code in a presentation or lecture you could credit me like this:

Pascal Wagler (2017). "Glowworm Swarm Optimization Java" (https://github.com/Wandmalfarbe/Glowworm-Swarm-Optimization-Java)

Users of LaTeX are encouraged to cite with the following BibLaTeX entry:

@software{WaglerGlowwormSwarmOptimization2017,
  title = {Glowworm {{Swarm Optimization Java}}},
  url = {https://github.com/Wandmalfarbe/Glowworm-Swarm-Optimization-Java},
  abstract = {A Java implementation and visualization of the glowworm swarm optimization (GSO) algorithm invented by K.N. Krishnanand and Debasish Ghose.},
  author = {Wagler, Pascal},
  date = {2017-10-27}
}

glowworm-swarm-optimization-java's People

Contributors

wandmalfarbe avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

ravby

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.