- MongoDB, 'message_store' database with collection of 'task_events'.
- PRISM - https://github.com/bfalacerda/prism
- Clone of this repository with the files in the folder models.
- PRISM path should be modified. Look for ##SPECIFY LOCATION##
- Choose any array of test dates, from the possible dates.
- Run roscore.
- Run mongodb store
- Run fhc.py for finite horizon control.
- Run rhc.py for receding horizon control.
- Run rule_based_*.py for rule based controls.
While running these files, the following scripts are called:
- generate_samples.py will generate test points.
- probabilistic_rewards.py generates the rewards and task model probabilities.
- bcth_prism_model.py generates the prism script for model checking.
- read_adversary.py reads the policies generated by prism.
- In fhc.py and rhc.py simulation is done by obtaining the prism model, finding the next state and action taken from the current state from the optimal policy picked and accumalating these results across all the test points.