IVISIT: An Interactive Visual Simulation Tool for system simulation, visualization, optimization, and parameter management
Andreas Knoblauch
TL;DR
IVISIT introduces a Python-based interactive visualisation tool designed for system simulation, parameter management, optimization, and dynamic visualization. The paper details the architecture around core interfaces and a SQLite-backed persistence layer, plus a parser for in-code widget definitions, enabling rapid prototyping. It then presents six examples, ranging from a Hello World demo to LIF neuron visualizations, interactive data generation and classification, and CNN MNIST training with Keras, illustrating the framework's versatility for teaching and research in neural computation and machine learning. The work emphasizes practical impact through teaching tools, rapid labeling utilities, psychophysical experiments, and ML experimentation, all released under the MIT license.
Abstract
IVISIT is a generic interactive visual simulation tool that is based on Python/Numpy and can be used for system simulation, parameter optimization, parameter management, and visualization of system dynamics as required, for example,for developing neural network simulations, machine learning applications, or computer vision systems. It provides classes for rapid prototyping of applications and visualization and manipulation of system properties using interactive GUI elements like sliders, images, textboxes, option lists, checkboxes and buttons based on Tkinter and Matplotlib. Parameters and simulation configurations can be stored and managed based on SQLite database functions. This technical report describes the main architecture and functions of IVISIT, and provides easy examples how to rapidly implement interactive applications and manage parameter settings.
