RS系のアルゴリズムと有名なのも少し入ってます.
main.py
にてシミュレーション回数(trial),ステップ数(step),腕の本数(K)を設定してください.
def main():
trial = 1000
step = 1000
K = 2
simulator.py
のself.policy
で検証したいアルゴリズムを入れてください.
self.policy
が辞書型になっているのはRS, RS-OPT, SRS, SRS-OPTの際にℵを設定できるようにするためです(l.57 setting参照してもらえると).
- RS(ℵ=p_max)
- RS-OPT
- RS-CH
- SRS(ℵ=p_max)
- SRS-OPT
- SRS-CH
- ThompsonSampling
- UCB1
- UCB1-Tuned
python main.py
結果のCSVファイルとパラメータを記載したテキストファイルをlogフォルダに保存する.
.
├── log
│ └── datetime(例:202209200909)
│ ├── xx.csv(例:RS.csv)
│ ├── yy.csv
│ └── zz.csv
グラフのタイトルとプロットしたいCSVが格納されているフォルダ名(例:202209200909)を指定してグラフのプロットを行います. 生成したグラフはCSVと同じ階層にcsv_plot.pngという名前で保存されます.
python plot.py [グラフのtitle] [プロットしたいCSVが格納されているフォルダ名]
(Decimalなし)SRS系のアルゴリズムでたまに確率がNanになります
ちょお待ちを.