dewi-kadita: A Python Library for Idealized Fish Schooling Simulation with Entropy-Based Diagnostics
Sandy H. S. Herho, Iwan P. Anwar, Faruq Khadami, Alfita P. Handayani, Karina A. Sujatmiko, Kamaluddin Kasim, Rusmawan Suwarman, Dasapta E. Irawan
TL;DR
Dewi-kadita delivers an open-source framework for simulating three-dimensional fish schooling via the Couzin zone-based model and augments traditional metrics with seven entropy-based diagnostics to form the Oceanic Schooling Index (OSI). The approach combines a rigorous 3D agent-based formulation, NLERP-based orientation updates, and stochastic perturbations within a toroidal domain, with extensive validation across four canonical phases. The implementation emphasizes performance (Numba JIT speedups) and interoperability (NetCDF4 CF output), enabling reproducible, scalable analyses and cross-domain integration. The entropy framework provides richer, orthogonal characterization of collective states beyond polarization and rotation alone, enabling robust state classification and phase detection in time series. Overall, the work establishes a standardized, extensible computational toolset for marine collective behavior research with practical implications for ecological modeling and bio-inspired engineering.
Abstract
Collective motion in fish schools exemplifies emergent self-organization in active matter systems, yet computational tools for simulating and analyzing these dynamics remain fragmented across research groups. We present dewi-kadita, an open-source Python library implementing the three-dimensional Couzin zone-based model with comprehensive entropy diagnostics tailored for marine collective behavior research. The library introduces seven information-theoretic metrics -- school cohesion entropy, polarization entropy, depth stratification entropy, angular momentum entropy, nearest-neighbor entropy, velocity correlation entropy, and school shape entropy -- that characterize distinct organizational features inaccessible to classical order parameters. These metrics combine into an Oceanic Schooling Index (OSI) providing a single scalar measure of collective disorder. Validation across four canonical configurations (swarm, torus, dynamic parallel, highly parallel) confirms correct reproduction of known phase behaviors: the swarm maintains disorder with polarization $P < 0.1$ and OSI $\approx 0.71$, while the highly parallel state achieves $P = 0.998$ with OSI $= 0.24$ and velocity correlation entropy vanishing to zero. The entropy framework successfully discriminates the torus and dynamic parallel configurations that exhibit comparable order parameter magnitudes through different organizational mechanisms. Numba just-in-time (JIT) compilation accelerates pairwise interaction calculations by $10$--$100\times$, enabling simulations of $150$--$250$ agents over $1000$--$2000$ time steps within five minutes on standard workstation hardware. NetCDF4 output ensures interoperability with oceanographic analysis tools. The library addresses the need for standardized, reproducible infrastructure in collective behavior modeling analogous to established molecular dynamics codes.
