Skip to content

Personalised behaviour model that (i) is based on the concept of learning from feedback and guidance and (ii) incorporates learned user models that estimate a user's engagement and expected performance in an activity.

License

Notifications You must be signed in to change notification settings

migrave/migrave_personalised_behaviour_model

Repository files navigation

migrave_personalised_behaviour_model

Personalised behaviour model that (i) is based on the concept of learning from feedback and guidance and (ii) incorporates learned user models that estimate a user's engagement and expected performance in an activity.

The behaviour model is implemented in the context of sequence learning game, thus the implementation is based on this source.

For further explanation please refer to this paper

M. Stolarz, A. Mitrevski, M. Wasil, and P. G. Plöger, 
“Personalised Robot Behaviour Modelling for Robot-Assisted Therapy in the Context of Autism Spectrum Disorder,” 
in RO-MAN Workshop on Behavior Adaptation and Learning for Assistive Robotics (BAILAR), 2022.

Pipeline

The packages used for data collection and preprocessing are as follows:

Requirements:

numpy == 1.22.3
scikit-learn == 1.0.2
tensorflow == 2.8.0
pandas == 1.4.1

Usage

  • To preprocess the data use the jupyter notebooks available in data_preprocessing:

    • To extract expected engagement please use engagement_extraction/extractor.ipynb
    • To merge game performance and engagement data (obtained from the previous step) please use final/merger.ipynb
    • To cluster the users based on the merged game performance and engagement data (obtained in the previous step) please use clustering/clustering.ipynb. Bear in mind, that the output of this script should be used for training the user models.
  • To run training of the user models:

    python3 user_models_training.py
    

Additionally, to plot the combined figures for both user models use the scripts engagement_plotter.py and performance_plotter.py in user_model/output/model_plotter.

  • To run training of the behaviour model:

    python3 behaviour_model_training.py
    

    The parameters for behaviour model training can be set in behaviour_model_params.py. After the successful training, please run the following script in order to generate statistical analysis from all the runs (behaviour_model directory):

    python3 results_merger.py
    

    Extra scripts for plotting the training results can be found in behaviour_model/results_plotting.

About

Personalised behaviour model that (i) is based on the concept of learning from feedback and guidance and (ii) incorporates learned user models that estimate a user's engagement and expected performance in an activity.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published