AMIDOL is designed to support models in a number of scientific, physical, social, and hybrid domains by allowing domain experts to construct meta-models in a novel way, using visual domain specific ontological languages (VDSOLs). These VDSOLs utilize an underlying intermediate abstract representation to give formal meaning to the intuitive process diagrams scientists and domain experts normally create. AMIDOL then provides translations from these VDSOLs into an intermediate representation which can be transformed as appropriate to compose models, apply optimizations, and translate them into executable representations allowing AMIDOL's inference engine to execute prognostic queries on reward models and communicate results to domain experts.
You'll need to:
install the sbt
build tool and a recent version of the
Oracle JDK for building the backend component
install the npm
build tool for building the UI component
install the python
interpreter and pip
package manager,
then the pysces
and numpy
packages (by doing
pip install pysces numpy
) for the PySCeS backend
install the python3
interpreter and pip3
package manager,
then the scipy
and matplotlib
packages (by doing
pip3 install scipy matplotlib
) for the SciPy backends
install Julia and then install JSON
, DiffEqBiological
,
DifferentialEquations
, Plots
, and DiffEqMonteCarlo
(this is done from
the Julia REPL running import Pkg; Pkg.add("<pkg-to-install>")
)
Once you have done all of this, build and run the system with:
$ git clone https://github.com/GaloisInc/AMIDOL.git && cd AMIDOL
AMIDOL$ sbt run
This opens a back-end web server on http://localhost:8080/ . NOTE: This system was only meant for use/tested on Google Chrome. This version of the system does not support other browsers.
Example models can be found in this repository under the examples
directory. These are JSON
files meant to be loaded into the web browser UI, with the cloud-shaped upload button in the
upper-right. User-drawn models can also be downloaded with the adjacent download button.