whatisgithub

What is immortal-jellyfish-algorithm?

langzhong36/immortal-jellyfish-algorithm — explained in plain English

Analysis updated 2026-06-24

16PythonAudience · researcherComplexity · 3/5LicenseSetup · easy

In one sentence

The Immortal Jellyfish Algorithm is a nature-inspired optimization method that searches for near-optimal solutions to engineering and math problems by cycling through four exploration phases modeled on a jellyfish's lifecycle.

Mindmap

mindmap
  root((IJA))
    Four phases
      Polyp broad search
      Strobilation diversify
      Medusa focus best
      Senescence refine
    Implementations
      Python primary
      C++ version
      Java version
    Benchmarks
      8 test functions
      5 competing algorithms
      Convergence charts
    Use cases
      Parameter tuning
      Scheduling problems
      Engineering optimization
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Tune configuration parameters or hyperparameters for an engineering or machine learning system where the optimal value cannot be calculated directly.

USE CASE 2

Run comparative benchmarks against PSO, GWO, WOA, and other well-known optimizers to choose the best algorithm for your problem.

USE CASE 3

Use the included benchmark test functions to validate a custom optimization algorithm against a standard baseline.

What is it built with?

PythonC++Java

How does it compare?

langzhong36/immortal-jellyfish-algorithmadya84/ha-world-cup-2026afk-surf/safeclipper
Stars161616
LanguagePythonPythonPython
Setup difficultyeasyeasymoderate
Complexity3/52/53/5
Audienceresearchergeneraldeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 30min
Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

So what is it?

The Immortal Jellyfish Algorithm (IJA) is an optimization method inspired by the biology of Turritopsis dohrnii, a jellyfish species that can revert from its adult form back to an earlier life stage, cycling through phases indefinitely. The algorithm uses this lifecycle as a model for searching through possible solutions to a mathematical problem, shifting its behavior across four phases as the search progresses. In the first phase (Polyp), the algorithm explores broadly using a pattern called Levy flight, which mixes short local steps with occasional long jumps. In the second phase (Strobilation), it diversifies its candidate solutions. In the third phase (Medusa), it focuses candidate solutions toward the best positions found so far, using a formula inspired by how light intensity decreases with distance from a source. In the fourth phase (Senescence), it refines solutions with small Gaussian adjustments. This class of algorithm is used in engineering and research to find near-optimal values for problems where you cannot simply calculate the best answer directly: configuration tuning, scheduling, parameter fitting, and similar tasks where you must search a large space of possible inputs. The repository includes implementations in Python, C++, and Java, with the Python version being the primary one. It includes eight benchmark test functions for evaluating the algorithm, comparison implementations of five other well-known optimizers (PSO, DE, GWO, WOA, SCA), and experiment scripts that run 30 independent trials across all algorithms and functions to produce convergence charts, ranking heatmaps, and distribution plots. Recommended settings are a population of 100 and 2000 maximum iterations. The code is MIT-licensed.

Copy-paste prompts

Prompt 1
I want to use the Immortal Jellyfish Algorithm to tune hyperparameters for a neural network. Show me how to define a custom fitness function and run the optimizer with a population of 100.
Prompt 2
Run the IJA Python implementation against the included benchmark functions and plot convergence curves comparing it to PSO and GWO.
Prompt 3
Help me adapt the IJA to a job scheduling problem where I need to minimize total completion time across 20 tasks on 5 machines.
Prompt 4
Explain what Levy flight does in the Polyp phase of the IJA and how the Medusa phase convergence formula differs from standard particle swarm.

Frequently asked questions

What is immortal-jellyfish-algorithm?

The Immortal Jellyfish Algorithm is a nature-inspired optimization method that searches for near-optimal solutions to engineering and math problems by cycling through four exploration phases modeled on a jellyfish's lifecycle.

What language is immortal-jellyfish-algorithm written in?

Mainly Python. The stack also includes Python, C++, Java.

What license does immortal-jellyfish-algorithm use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is immortal-jellyfish-algorithm to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is immortal-jellyfish-algorithm for?

Mainly researcher.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.