{"id":13601200,"url":"https://github.com/jkomiyama/banditlib","last_synced_at":"2025-04-11T03:32:39.592Z","repository":{"id":14894258,"uuid":"17618051","full_name":"jkomiyama/banditlib","owner":"jkomiyama","description":"Multi-armed bandit simulation library","archived":false,"fork":false,"pushed_at":"2023-11-09T17:04:35.000Z","size":216,"stargazers_count":137,"open_issues_count":0,"forks_count":44,"subscribers_count":8,"default_branch":"master","last_synced_at":"2024-11-07T04:39:47.738Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jkomiyama.png","metadata":{"files":{"readme":"README.markdown","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2014-03-11T04:09:03.000Z","updated_at":"2024-08-28T19:39:06.000Z","dependencies_parsed_at":"2024-01-06T12:16:00.994Z","dependency_job_id":"85b505a3-ea04-4118-8fb6-3ca5289fea53","html_url":"https://github.com/jkomiyama/banditlib","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jkomiyama%2Fbanditlib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jkomiyama%2Fbanditlib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jkomiyama%2Fbanditlib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jkomiyama%2Fbanditlib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jkomiyama","download_url":"https://codeload.github.com/jkomiyama/banditlib/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248335579,"owners_count":21086622,"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":[],"created_at":"2024-08-01T18:00:58.226Z","updated_at":"2025-04-11T03:32:34.578Z","avatar_url":"https://github.com/jkomiyama.png","language":"C++","funding_links":[],"categories":["C++"],"sub_categories":["[Tools](#tools-1)","Tools","Speech Recognition"],"readme":"    BanditLib: a simple multi-armed bandit library \n    \n    .-. .-')     ('-.         .-') _  _ .-') _            .-') _                   .-. .-')   \n    \\  ( OO )   ( OO ).-.    ( OO ) )( (  OO) )          (  OO) )                  \\  ( OO )  \n    ;-----.\\   / . --. /,--./ ,--,'  \\     .'_   ,-.-') /     '._ ,--.      ,-.-') ;-----.\\  \n    | .-.  |   | \\-.  \\ |   \\ |  |\\  ,`'--..._)  |  |OO)|'--...__)|  |.-')  |  |OO)| .-.  |  \n    | '-' /_).-'-'  |  ||    \\|  | ) |  |  \\  '  |  |  \\'--.  .--'|  | OO ) |  |  \\| '-' /_) \n    | .-. `.  \\| |_.'  ||  .     |/  |  |   ' |  |  |(_/   |  |   |  |`-' | |  |(_/| .-. `.  \n    | |  \\  |  |  .-.  ||  |\\    |   |  |   / : ,|  |_.'   |  |  (|  '---.',|  |_.'| |  \\  | \n    | '--'  /  |  | |  ||  | \\   |   |  '--'  /(_|  |      |  |   |      |(_|  |   | '--'  / \n    `------'   `--' `--'`--'  `--'   `-------'   `--'      `--'   `------'  `--'   `------'  \n\n- - -\n1\\. [About](#about)  \n2\\. [Environment](#environment)  \n3\\. [Quick run](#quick)  \n4\\. [Misc](#misc)  \n- - -\n\n\n\u003ca name=\"about\"\u003e\u003c/a\u003e\n\n## 1\\. About\n  This is a C++ package for multi-armed bandit simulations. \n  This package is designed to be\n  1. Simple : easy to understand and extend, but not optimized for speed. \n  2. Independent : does not require external library.\n\n+ Arms:\n - Binary and Normal distribution of rewards (arms) are implemented.\n\n+ Policies:\n -  DMED for binary rewards [1]\n -  Epsilon-Greedy \n -  KL-UCB [2]\n -  MOSS [3]\n -  Thompson sampling for binary rewards [4]\n -  UCB [5]\n -  UCB-V [6]\n     \n\u003ca name=\"environment\"\u003e\u003c/a\u003e\n\n## 2\\. Environment\n  This program supports a linux/GNU C++ environment. We do not check windows/MacOSX.\n  \n  More formally, this program depends on:\n  - C++0x: modern C++ compiler (preferably GNU C++ (g++))\n  -  waf (included) [7]: build script\n  -  cmdline.h (included) [8]: command line parser\n  \n\u003ca name=\"quick\"\u003e\u003c/a\u003e\n\n## 3\\. Quick run\n  Type \n  \n    ./compile\n    ./build/main -r 10\n    \n  to run 10 simulation runs. The result of the runs will be written in out/example1.txt\n\n  This package also includes a simple plot tool (simpleplot.py) that is dependent on Python/Matplotlib.\n  If your environment is g++/Python ready, try\n  \n    ./example.sh\n\n\u003ca name=\"misc\"\u003e\u003c/a\u003e\n\n## 4\\. Misc\n  The implementation of the beta distribution sampler is from [9].\n  The logo was generated by using [10].\n  \n## References\n\n    [1] J. Honda, A. Takemura: An asymptotically optimal policy for finite support models in the multiarmed bandit problem.  Machine Learning 85(3) 2011, p.361-391\n    \n    [2] Aurélien Garivier, Olivier Cappé: The KL-UCB Algorithm for Bounded Stochastic Bandits and Beyond. COLT 2011: 359-376\n    \n    [3] J-Y. Audibert and S. Bubeck: Minimax Policies for Adversarial and Stochastic Bandits.  Proceedings of the 22nd Annual Conference on Learning Theory 2009\n    \n    [4] Thompson, William R: On the likelihood that one unknown probability exceeds another in view of the evidence of two samples. Biometrika, 25(3–4):285–294, 1933\n    \n    [5] Peter Auer, Nicolò Cesa-Bianchi and Paul Fische: Finite-time analysis of the multiarmed bandit problem.  Machine Learning 47 2002 p.235-256\n    \n    [6] J.-Y. Audibert, R. Munos, Cs. Szepesvári: Exploration-exploitation trade-off using variance estimates in multi-armed bandits. Theoretical Computer Science Volume 410 Issue 19 Apr. 2009 pp. 1876-1902\n    \n    [7] Waf - The meta build system: https://code.google.com/p/waf/\n    \n    [8] Hideyuki Tanaka: cmdline https://github.com/tanakh/cmdline\n    \n    [9] Joseph Mansfield: A comment on stackoverflow http://stackoverflow.com/questions/15165202/random-number-generat\n    \n    [10] Text to Ascii Art Maker: http://patorjk.com/software/taag/\n\n##Author\n  Junpei Komiyama (junpei.komiyama atmark gmail.com)\n  \n  This software is released under the MIT License, see LICENSE.txt.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjkomiyama%2Fbanditlib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjkomiyama%2Fbanditlib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjkomiyama%2Fbanditlib/lists"}