ゼミのお話/一覧/N本腕バンディットチャレンジ/N本腕バンディットプログラム例
2018-04-16 (月) 15:53:00 (1500d)
- 人間が10回バンディットゲームを行い,毎回バンディット結果を表示するプログラム
- ソース:player.c
#include <stdio.h> #include <stdlib.h> #include "bandit.h" /* ダウンロードしてきたファイル */ int main(){ int i, select_arm, num_arm; double reward, total_reward=0.0; init_bandit(); /* 初期化 */ num_arm = get_arm_num(); /* バンディットの腕の数を取得 */ printf("バンディットの腕の数は%dです\n",num_arm); for(i=0 ; i<10 ; i++){ /* 10試行行う */ do{ /* 腕の選択 */ printf("腕を選択してください[1-%d]:",num_arm); scanf("%d", &select_arm); reward=bandit(select_arm); }while(reward == -1.0); /* bandit の返り値が異常(-1.0)を示している.*/ total_reward += reward; printf("%d試行:報酬は%lfです\n", i+1, reward); } printf("獲得報酬: %lf\n", total_reward); return 0; }
- コンパイル方法:bandit00に対するプログラム
- gcc -o game player.c bandit00.o
- ソース:player.c