Jason Interrupts
Reproducibility package for the experiments presented in A reasoning cycle interrupt system for improving BDI agents' responsiveness (AAMAS 2027).
1. DOWNLOAD
Download the reproducibility archive:
https://underreview.doubleblind.cloudns.nz/JasonInterrupts/reproducibility.zip
On Ubuntu 24.04, download and extract it with:
wget https://underreview.doubleblind.cloudns.nz/JasonInterrupts/reproducibility.zip
unzip reproducibility.zip
cd JasonInterrupts
If the archive extracts to a differently named folder, enter the folder containing run.sh.
2. REQUIREMENTS
- Operating system: Ubuntu 24.04
- Java: OpenJDK 17
The deployment script checks for Arduino CLI, the Arduino AVR core, and the NECK library, installing them when absent. It may request sudo privileges to install Arduino CLI.
3. PROJECT STRUCTURE (important files)
4. RUNNING THE EXPERIMENTS
To run the experiment on Standard Jason, on a terminal and on the root folder, type:
./run_1-StandardJason.sh
To run the experiment on Interruptible Jason, on a terminal and on the root folder, type:
./run_2-InterruptJason.sh
The script checks and installs OpenJDK-17
It might be necessary to switch Java version to it. If so, run the command bellow and select it (you can change it back after)
sudo update-alternatives --config java
5. LOGS
Complete execution logs are saved on the file mas-0.log
Running
grep "Detected" mas-0.log will show the lines where an interrupt happened
After the experiment execution, many files with .dat extensions are created. The most important one are those with *ExecutionTimes*
Running
statistics_column.py3 < *ExecutionTimes*.dat Allows to quickly get important statistics about them
7. REPRODUCIBILITY NOTES
- Intended environment: Ubuntu 24.04 with Java 17.