The AIMM simulator emulates a cellular radio system roughly following 5G concepts and channel models. The intention is to have an easy-to-use and fast system written in pure Python with minimal dependencies. It is especially designed to be suitable for interfacing to AI engines such as tensorflow
or pytorch
, and it is not a principal aim for it to be extremely accurate at the level of the radio channel. The simulator was developed for the AIMM project (https://aimm.celticnext.eu) by Keith Briggs (https://keithbriggs.info).
The full documentation is at https://aimm-simulator.readthedocs.io/en/latest/.
- Python 3.8 or higher https://python.org.
- NumPy https://numpy.org/.
- Simpy https://pypi.org/project/simpy/.
- If real-time plotting is needed, matplotlib https://matplotlib.org.
Three ways are possible:
-
The simplest way, direct from PyPI:
pip install AIMM-simulator
. This will not always get the latest version. -
Download the wheel, typically
dist/aimm_simulator-2.x.y-py3-none-any.whl
from github, and runpip install <wheel>
. -
Alternatively, the package can be installed by downloading the complete repository (using the green
<> Code ⌄
button) as a zip, unpacking it, and then doingmake install_local
from inside the unpacked zip.
After installation, run a test with python3 examples/basic_test.py
.
The diagram below (not visible on pypi.org) shows the main classes in the code and the relationships between them.