Rasim (RAdio network SIMulator) is a simple time-slot-based simulator for cognitive radio networks. Rasim.jl is port of rasim to Julia. I created the port mainly because the performance (simulation time) I was getting in Python was not satisfactory for my graduation project.
As I added new features for my proposed algorithm, Rasim.jl became more complicated than and a successor of Rasim.
The current dependency list is:
and Winston if you want to draw plots right after simulation.
How to run
Firstly set the parameter set you want to simulate by modifying
Params.jl, which is used like more or less a config file. Do not forget to modify parameters generated by
genparam() function. Then add your agents along project files and import them from Rasim by modifying
Rasim.jl. Lastly, add your agents to array
agent_types. If you want to make a single run, just import
Params from a script and call
p is the parameter set you configure (a variable of type
ParamT). IF you want to run a set of simulations parallelly, use
RunParallel.jl but don't forget to modify the first line to match number of your machine's CPU cores and set
batch_run parameter to
Params.jl. You can also run Rasim.jl over a network of machines by writing a small Julia script.