{"id":18401694,"url":"https://github.com/borealisai/raps","last_synced_at":"2025-04-12T17:50:02.339Z","repository":{"id":173760774,"uuid":"645064245","full_name":"BorealisAI/raps","owner":"BorealisAI","description":"Code for the paper \"Causal Bandits without Graph Learning\"","archived":false,"fork":false,"pushed_at":"2023-05-26T02:39:47.000Z","size":585,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-02-16T03:35:58.830Z","etag":null,"topics":["bandit-algorithms","causality"],"latest_commit_sha":null,"homepage":"http://arxiv.org/abs/2301.11401","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BorealisAI.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-05-24T21:02:23.000Z","updated_at":"2024-08-08T15:00:36.000Z","dependencies_parsed_at":null,"dependency_job_id":"dc8bd82a-cbce-4b87-b94f-f97efe9d1977","html_url":"https://github.com/BorealisAI/raps","commit_stats":null,"previous_names":["borealisai/raps"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BorealisAI%2Fraps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BorealisAI%2Fraps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BorealisAI%2Fraps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BorealisAI%2Fraps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BorealisAI","download_url":"https://codeload.github.com/BorealisAI/raps/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248610362,"owners_count":21132920,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bandit-algorithms","causality"],"created_at":"2024-11-06T02:39:39.550Z","updated_at":"2025-04-12T17:50:02.313Z","avatar_url":"https://github.com/BorealisAI.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Randomized Parent Search in Causal Bandits\n\nThis codebase contains implementation of experiments for the [\"Causal\nBandits without Graph Learning\"](https://arxiv.org/abs/2301.11401) paper.\n\n### Installation\n\nThe `raps` package was developed using Python 3.9 and compatibility with other\nPython versions is not guaranteed. First, clone the repository with the\nsubmodules using `git clone --recurse-submodules` command. After that, to\ninstall simply run\n```{bash}\npip install -e raps\n```\n\n### Running Instructions\n\nInstalling the package automatically adds the `raps` script to the $PATH\nvariable. This script could be run to obtain the results of experiments\nmeasuring the regret, for example:\n```{bash}\nraps --logdir logdir/tree-p3d2n20.01 --num-parents 3 --domain-size 2 \\\n    --num-nodes 20 --nruns 10\n```\nThis adds 10 tasks to the task spooler. Task spooler can be installed using\n`brew install task-spooler` or `sudo apt install task-spooler`.  If you're\nusing a Linux system, then be sure to pass `--laucher tsp` argument to the\nscript as on Linux the command to launch task spooler is different. You can\ncontrol the number of tasks run at the same, for example, to launch all 10 runs\nat the same time use `ts -S 10` or `tsp -S 10` if on Linux. The progress bars\nof the runs could be watched by running `./watch-runs first last` where `first`\nand `last` are the first and last indices of the tasks in task spooler.\nAlternatively, you can use SLURM to manage the runs, for this pass `--launcher\nslurm` argument to the script.\n\nRunning the script generates pickle files with matplotlib figure and\nexperiment objects. Later figure objects are used in the corresponding\njupyter notebook in the directory notebooks to obtain the final figure\naggregating the result from multiple runs of the same experiment.\n\nFor the experiments that test our theoretical findings regarding\nthe number of interventions performed by RAPS see\n`notebooks/num-interventions.ipynb` jupyter notebook.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fborealisai%2Fraps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fborealisai%2Fraps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fborealisai%2Fraps/lists"}