離散行動を複数持つQ関数の作成
1 view (last 30 days)
Show older comments
rlFiniteSetSpec を使い、複数の離散行動を持つQ関数を作成したいのですが、
InputとDimensionの数が合わずエラーが返されてしまいます。
現在コードは下記のようにしているのですが、
DimensionをInputの数に合わせる方法はないでしょうか。
初歩的な質問となってしまいますが、
教えていただけますと幸いです。
%Actionに関するコード抜粋
NA = 5;
actInfo =rlFiniteSetSpec(NA);
actPath = [
featureInputLayer(NA,'Normalization','none','Name','action')
fullyConnectedLayer(50,'Name','CA1')]
0 Comments
Accepted Answer
Hiro Yoshino
on 20 Oct 2020
rlFiniteSetSPec の引数はInputの数では無く、実際に取り得る値を指定します
actionが1つならば、それが取り得る離散値をベクトルで渡します
actionが複数ならば、cellを使ってあり得る組み合わせのベクトルを渡します
このあたりに詳細が書いてあります
3 Comments
Hiro Yoshino
on 21 Oct 2020
cellの扱い等を理解が怪しいのでMATLAB入門を受講されることをおススメします:
selectable_actions=[1,2,3,4,5];
上のようにするのがドキュメンテーション通りです(恐らく、セルを使っても動作はしますが)
observationの数が3つっぽいのですが、NS = 4?そのあたりは大丈夫ですか?
obsInfo =rlNumericSpec([4 1]);
かなと思います。
いずれにしても、ドキュメンテーションに書いてありますので、よく読まれる事をおススメします。
https://jp.mathworks.com/help/reinforcement-learning/ref/rl.util.rlnumericspec.html#mw_dd97f7de-8690-4904-9211-08eb0123352b
More Answers (0)
See Also
Categories
Find more on 時系列、シーケンス、およびテキストを使用した深層学習 in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!