人工知能に関する断創録

このブログでは人工知能のさまざまな分野について調査したことをまとめています(更新停止: 2019年12月31日)

強化学習

テトリスの学習

強化学習を使ったおもちゃとして、今回はテトリスをやってみようと思う。テトリスの場合、迷路より状態行動空間が大きくなるため状態の一般化がかかせない。つまり、状態行動価値の表現をテーブルではなく、線形関数やニューラルネットにする必要がある。テ…

PCクラスタ上での強化学習 探査率の影響

MPIで一番簡単な方式を実装した。 127X127の迷路問題 簡単のためマスター1つ、スレーブ1つで構成 スレーブからマスターへの行動価値テーブルの送信は2000エピソードごとに行う マスターは送られてきたテーブルを結合する テーブルの結合は更新回数で重みづけ…

強化学習の応用事例 続き

強化学習がどんな応用に使われるか列挙してみる。 セルラー通信システムの周波数帯の動的割り当て 在庫管理・生産ラインの最適化 ジョブショップスケジューリング エレベータ群制御 電力網の分散学習制御 インターネットバナーの最適化 コンパイラの命令スケ…

強化学習の応用事例

今年の合宿では強化学習がどんな応用に使われていて、どのようなことが期待できるのかを簡単に発表した。そのまとめ。強化学習の特徴は次のようにまとめられる*1。 設計者が「何をすべきか」をエージェントに報酬という形で指示しておけば「どのように実現す…

PCクラスタ上での強化学習 Qテーブルの結合

共有メモリ型の方もまだ問題があるが、分散メモリ型の方を少し考えた。クラスタ上で並列に強化学習を行う場合に最も問題となるのは、別々に学習したQテーブルをうまく結合できるかという点だと思う。というわけで実験してみた。結果が次のグラフ。PC1とPC2で…

報酬の例2

Skinnerは、特定のクラスの条件性強化子に対して「般性強化子」という用語を使った。おそらく般性強化子の最もよい例はお金であろう。この強化子が、社会で働いている人の行動を維持していることは明白である。もし雇用者が、もう一切給料を払わないと言えば…

報酬の例

強化学習においての報酬とは現実の何にあたるのかという問題は少し気になる。例えば、強化学習と報酬(2002/11/20)とか報酬の自律生成(2003/2/18)で少し考えていた。強化学習を最適化アルゴリズムの一種と考えればそんなことどうでもよい問題(報酬はタス…

共有メモリ型並列計算機上での強化学習 学習時間が変だ・・・

共有メモリ型並列計算機上での強化学習 複数CPU(2003/8/1)の続き。前の結果を見ると、1スレッドと2スレッドの間は10倍遅くなっているが3スレッドにすると速くなっている。何か怪しかったけどさらにスレッドを増やして測定してみた。学習曲線は学習収束まで…

共有メモリ型並列計算機上での強化学習 複数CPU

共有メモリ型並列計算機上での強化学習(2003/7/23)の続き。同期を取っていたせいで実行速度が遅いと思っていたので、同期を全く取らないように修正し、収束するまでの時間を測定した。結果、1スレッド 6秒、2スレッド 約50秒、3スレッド 約24秒・・・何な…

共有メモリ型並列計算機上での強化学習

共有メモリ型並列計算機上での強化学習(2003/7/6)で間違いに気づいて同期を使うことになった。苦労してやっと実装したが、無茶苦茶遅くなった。並列計算しようと思ってスレッドを作るたび、実行速度が落ちるのが目に見えて分かる。どうやら同期に使ったmut…

共有メモリ型並列計算機上での強化学習

共有メモリ型並列計算機上での強化学習(2003/6/18)で1エージェントの収束に比べて、2エージェントの収束がやけに早いことが疑問だったが原因がわかった。各エージェントはスレッドで同じ関数を実行していたのだけど、エージェント1のスレッドだけに画面へ…

Omni OpenMP

OpenMPは共有メモリ型並列計算のライブラリ。これについていろいろ調べてたところ、フリーのOpenMPコンパイラであるOmni OpenMPというのを知った。早速、Linuxにインストールしようとしてあれこれやって時間をつぶしたが結局できなかった。また明日やるか・…

N本腕バンディット問題

をプログラムしてみた。N本腕バンディット問題(2002/9/6)でも実験したことあったけどコード、結果は載せなかったので再度取り上げる。N本腕バンディット問題を簡単に説明する。目の前にN本レバーがあるとし、各レバーを引くとお金(報酬)がもらえる。レバ…

共有メモリ型並列計算機上での強化学習 学習曲線

どのくらい高速化できるのか調べてみた。結果は次のグラフのようになった。10以上に増やしてもこの問題(197x197の迷路問題)ではこれ以上速くならなかった。他に、各エージェントの初期位置をランダムに配置するようにして実験してみた。こうすれば状態空間…

共有メモリ型並列計算機上での強化学習

(注)この結果は間違いでした。共有メモリ型並列計算機上での強化学習(2003/7/6)を参照。学習曲線を描いてみた。タスクは197x197の迷路問題。状態数は約40000、行動数は上、下、右、左の4つ。よってQテーブルは40000x4の二次元配列で表した。縦軸はスター…

共有メモリ型並列計算機上での強化学習

今日は、共有メモリ型並列計算機で強化学習を実装する前段階としてスレッドを使って逐次計算機上で実装してみた。構想しているのは下の図のような感じ。共有メモリ上にQテーブルがある。異なるプロセッサ(PE:Processing Elementと表記)上で動いているエー…

Acrobatアプレット

を書いた。acrobat.jar鉄棒の体操選手が脚を高く振り上げるのをシミュレーションしたようなもの。今回は参考ソースがなかったので前に作った倒立振子を参考に苦労して作った。特に運動方程式が複雑でかなり疲れた。棒の動きを見て、機械学習はすごいと改めて…

倒立振子制御問題

倒立振子アプレット(2002/10/26)は、Actor-Criticを使っていたけど今回はテーブル型Q学習を使った。グラフィックは面倒なのでなし。Q学習を使ったので探査率 epsilon の影響がかなり大きくなった。探査率を大きくしてランダムな行動を取らせる確率を高くす…

強化学習の並列化

最近、面白いと思うネタがあまりない。今日は強化学習に関する論文について整理しておくことにする(書いててもあまり面白くないが)。 A. M. Printista: A parallel implementation of Q-Learning based on communication with cache (PDF) 自分がやろうと…

Neuro-Dynamic Programming

Neuro-Dynamic Programming (Optimization and Neural Computation Series, 3)作者: Dimitri P. Bertsekas,John N. Tsitsiklis出版社/メーカー: Athena Scientific発売日: 1996/10/01メディア: ハードカバー クリック: 3回この商品を含むブログ (2件) を見る…

強化学習の並列化

空白期があったけどなんとなく再開。今年は強化学習の並列化というテーマで研究(になってればいいが)しようと思う。去年の強化学習のサーベイにより強化学習は非常に遅い点が問題となっていることがわかった。後でまとめるが「強化学習が遅い」といった場…

アドバイスあり強化学習

このアルゴリズムの位置づけは下の図のようになっていると思われる。アドバイスあり強化学習のアドバイスはニューラルネットの正解に相当すると思う。ニューラルネットは常に正解を必要とする。一方、アドバイスあり強化学習はニューラルネットに比べてわず…

Creating Advice-Taking Reinforcement Learners

Creating Advice-Taking Reinforcement Learners強化学習に教示を導入することによって高速化している。ここでの高速化は収束までのエピソード数(状態の知覚、行動、報酬の獲得が1エピソード)の短縮を意味している。強化学習は知識が全くないところから学…

強化学習の高速化

について考えたことのメモ。強化学習の応用にあたっての重要な問題点に学習速度が非常に遅いということがあげられていた。学習が遅い原因として状態・行動対の価値の評価を試行錯誤的に行うからだと認識している。今まで調べてきて学習の高速化に焦点をあて…

内部評価系の自己組織的形成

報酬の自律生成(2003/2/18)の続き。強化学習においてエージェント内部で報酬を自律生成させたい。手がかりがなかったのだが、それらしいのを見つけた。望月: 強化学習エージェントにおける多様な内部評価系の自己組織的形成, 1999神戸大学の修士論文のよう…

連想記憶

今年も輪講が始まった(2人しかいないので輪になっていないが・・・)。テーマは一応「連想記憶」ってことになった。強化学習を調べていたから忘れていたけど、連想機械アソシアトロン(2002/6/26)に興味があって調べていたことがあった。ニューラルネット…

RoboCup

RoboCupについてちょっと調べてみた。人工知能学会誌の2002年11月号にロボカップの小特集が組まれていた。ロボカップというのはロボットにサッカーをやらせるやつだけど、いくつかに分かれていて、シミュレーションリーグ、小型ロボットリーグ、中型ロボット…

報酬の学習

強化学習は心理学ではオペラント条件付けと呼ばれ、報酬は強化因子と呼ばれている。山脇さんの論文*1に強化因子、つまり報酬の種類として3つあげられていた。強化因子とは人を動かす力のあるものであり、嗜好品のような一次性強化因子、賞賛のような社会的強…

報酬の自律生成

強化学習のサーベイを行ったが、その中で一番面白いと思った論文は、山口: 強化信号のコミュニケーションに基づくマルチエージェント強化学習、 情報処理学会研究報告 知能と複雑系、 Vol.2000-ICS-121, pp.91-98, 2000何が面白いかというと強化学習における…

ピアジェの発達心理学

今日は、放送大学で「心的発達と教育・社会化」という認知科学の話がやっていた。発達というのは広辞苑によると、 個体がその生命活動において、環境に適応してゆく過程、人類の文化遺産の習得によって身体的、精神的に変化する過程、成長と学習との二要因を…