強化学習におけるベルマンの方程式の導出


回答:


7

これは、その背後にあるクリーンで構造化された数学について疑問に思っているすべての人の答えです(つまり、ランダム変数が何であるかを知っている人々のグループに属し、ランダム変数が密度を持っていることを表示または仮定する必要がある場合、これはあなたのための答え;-)):

まず、マルコフ決定プロセスが有限数の報酬しか持たないようにする必要があります。つまり、密度の有限集合が存在し、それぞれが変数、つまりすべてのとマップについてような (すなわち、MDPの背後のオートマトンでは、無限に多くの状態が存在する可能性がありますが、状態間の無限の遷移に付随する可能性がある報酬分布のみが存在します)L1EL1Rxe(x)dx<eEF:A×SE

p(rt|at,st)=F(at,st)(rt)
L1

定理1:(すなわち、積分可能な実確率変数)とし、を別の確率変数とし、が共通密度を持ち、 XL1(Ω)YX,Y

E[X|Y=y]=Rxp(x|y)dx

証明:ステファンハンセンによってここで本質的に証明されました。

定理2:とし、をさらにランダム変数とし、が共通密度を持ち、 ここの範囲である。XL1(Ω)Y,ZX,Y,Z

E[X|Y=y]=Zp(z|y)E[X|Y=y,Z=z]dz
ZZ

証明

E[X|Y=y]=Rxp(x|y)dx    (by Thm. 1)=Rxp(x,y)p(y)dx=RxZp(x,y,z)dzp(y)dx=ZRxp(x,y,z)p(y)dxdz=ZRxp(x|y,z)p(z|y)dxdz=Zp(z|y)Rxp(x|y,z)dxdz=Zp(z|y)E[X|Y=y,Z=z]dz    (by Thm. 1)

置くと置くそれから、収束し、関数収束することを示すことができます(MDPには有限の報酬しかありません以下のままであるつもこと(単調収束定理の通常の組み合わせを使用して条件付き期待【の因数分解]のための定義式に収束を支配することによって)示すことができる(すなわち、積分) ここで、 Gt=k=0γkRt+kGt(K)=k=0KγkRt+kL1Gt(K)k=0γk|Rt+k|L1(Ω)

limKE[Gt(K)|St=st]=E[Gt|St=st]
E[Gt(K)|St=st]=E[Rt|St=st]+γSp(st+1|st)E[Gt+1(K1)|St+1=st+1]dst+1
使用、THM。上記の2、Thm。上の1、次に簡単疎外戦争、あるショーを使用して、そのすべての。ここで、方程式の両側に制限を適用する必要があります。制限を状態空間上の積分に引き込むために、いくつかの追加の仮定を行う必要があります。Gt(K)=Rt+γGt+1(K1)E[Gt+1(K1)|St+1=s,St=st]p(rq|st+1,st)=p(rq|st+1)qt+1KS

状態空間が有限(その後で合計が有限)またはすべての報酬がすべて正(単調収束を使用)またはすべての報酬が負(その後マイナス記号を前に置く)等式および再び単調収束を使用します)またはすべての報酬が制限されます(そして、支配的な収束を使用します)。次に(上記の部分/有限ベルマン方程式の両側にを適用することにより)S=SlimK

E[Gt|St=st]=E[Gt(K)|St=st]=E[Rt|St=st]+γSp(st+1|st)E[Gt+1|St+1=st+1]dst+1

そして残りは通常の密度操作です。

注:非常に単純なタスクでも、状態空間は無限になります!1つの例は、「ポールのバランスをとる」タスクです。状態は、本質的に極の角度(値で、数え切れないほど無限のセットです!)[0,2π)

注:人々は「生地にコメントするかもしれませんが、の密度を直接使用して、 '...しかし...私の質問は次のようになります:Gtp(gt+1|st+1,st)=p(gt+1|st+1)

  1. に密度があることを知っているのはなぜですか?Gt+1
  2. がと共通の密度を持っていることさえ知っているのはなぜですか?Gt+1St+1,St
  3. どうやって推測しますか?これはマルコフ特性だけではありません:マルコフ特性は周辺分布について何かを伝えるだけですが、これらは必ずしも分布全体を決定するわけではありません。p(gt+1|st+1,st)=p(gt+1|st+1)

10

時間後に、割引報酬の合計をしてみましょうなる: t
Gt=Rt+1+γRt+2+γ2Rt+3+...

状態で開始するユーティリティ値は、状態以降で実行されるポリシーの 割引報酬予想合計に相当し ます。 定義に直線性の法則 法則によりst
Rπs
Uπ(St=s)=Eπ[Gt|St=s]
=Eπ[(Rt+1+γRt+2+γ2Rt+3+...)|St=s]Gt
=Eπ[(Rt+1+γ(Rt+2+γRt+3+...))|St=s]
=Eπ[(Rt+1+γ(Gt+1))|St=s]
=Eπ[Rt+1|St=s]+γEπ[Gt+1|St=s]
=Eπ[Rt+1|St=s]+γEπ[Eπ(Gt+1|St+1=s)|St=s]総期待 定義により直線性の法則により
=Eπ[Rt+1|St=s]+γEπ[Uπ(St+1=s)|St=s]Uπ
=Eπ[Rt+1+γUπ(St+1=s)|St=s]

プロセス満たすマルコフプロパティと仮定:
確率状態で終わるの状態から開始したと取らアクション、 および 状態が状態から開始し、アクション実行し場合の 報酬、 Prssa
Pr(s|s,a)=Pr(St+1=s,St=s,At=a)
Rssa
R(s,a,s)=[Rt+1|St=s,At=a,St+1=s]

したがって、上記のユーティリティ方程式を次のようにことができます。
=aπ(a|s)sPr(s|s,a)[R(s,a,s)+γUπ(St+1=s)]

どこ; :確率的ポリシーに対して状態ときにアクションを実行する確率。決定論的ポリシーの場合、π(a|s)asaπ(a|s)=1


いくつかの注意事項:確率論的ポリシーでもの合計は1に等しいが、決定論的ポリシーでは、完全な重みを受け取るアクションが1つだけ(つまり、と残り)この用語は式から削除され、その結果、0重量を受ける。また、あなたが総期待の法則を使用行で、condtionalsの順序が逆になります。ππ(a|s)=1
ギラッドペレグ

1
私はこの答えが間違っていると確信しています:総期待の法則を含む直線まで方程式をたどりましょう。そして、左側はに依存しない右手側は一方でない式が正しければ... Ieが続いているため、彼らは正しいですか?その段階ですでにに対する何らかの積分が必要です。その理由はおそらく、(確率変数)とその分解(決定論的関数!)の違いを誤解しているためです...sssE[X|Y]E[X|Y=y]
Fabian Werner

@FabianWernerこれは正しくないことに同意します。Jie Shiからの答えは正しい答えです。
チューサー

@teucerこの答えは、「対称化」、つまりしかし、質問はJie Shisの回答と同じです。なぜ?は非常に複雑なRVであるため、これはマルコフ特性だけではありません。収束することさえありますか?もしそうなら、どこ?共通密度何ですか?この式は有限和(複雑な畳み込み)についてのみ知っていますが、無限の場合については?E[A|C=c]=range(B)p(b|c)E[A|B=b,C=c]dPB(b)E[Gt+1|St+1=st+1,St=st]=E[Gt+1|St+1=st+1]Gt+1p(gt+1,st+1,st)
ファビアンワーナー

@FabianWernerは、すべての質問に答えられるかどうかわからない。いくつかのポインタの下。の収束については、割引報酬の合計であるため、系列が収束すると仮定することは合理的です(割引係数はであり、収束する場所は実際には重要ではありません)。密度に関する懸念はありません(ランダム変数がある限り、いつでもジョイント密度を定義できます)。それが適切に定義されている場合にのみ問題になります。Gt+1<1
チューサー

8

これが私の証拠です。条件付き分布の操作に基づいているため、簡単に追跡できます。これがお役に立てば幸いです。

vπ(s)=E[Gt|St=s]=E[Rt+1+γGt+1|St=s]=srgt+1ap(s,r,gt+1,a|s)(r+γgt+1)=ap(a|s)srgt+1p(s,r,gt+1|a,s)(r+γgt+1)=ap(a|s)srgt+1p(s,r|a,s)p(gt+1|s,r,a,s)(r+γgt+1)Note that p(gt+1|s,r,a,s)=p(gt+1|s) by assumption of MDP=ap(a|s)srp(s,r|a,s)gt+1p(gt+1|s)(r+γgt+1)=ap(a|s)srp(s,r|a,s)(r+γgt+1p(gt+1|s)gt+1)=ap(a|s)srp(s,r|a,s)(r+γvπ(s))
これは有名なベルマン方程式です。


このコメント「…に注意してください」についてもう少し説明してもいいですか?なぜこれらのランダム変数と状態変数とアクション変数も共通の密度を持っているのでしょうか?もしそうなら、なぜあなたが使用しているこのプロパティを知っていますか?私は、それが有限の合計に当てはまることがわかりますが、ランダム変数が制限であれば... ??? Gt+1
ファビアンワーナー

ファビアンへ:最初にとは何かを思い出しましょう。。そのノートのみ直接に依存と以降キャプチャMDP(より正確には、すべての遷移情報は、および与えられた時点より前のすべての状態、アクション、および報酬から独立しています。同様に、はおよびのみに依存します。その結果、は、独立していGt+1Gt+1=Rt+2+Rt+3+Rt+2St+1At+1p(s,r|s,a)Rt+2t+1St+1At+1Rt+3St+2At+2Gt+1StAt、および与えられ、その行を説明します。RtSt+1
Jie Shi

申し訳ありませんが、それは「やる気を起こさせる」だけで、実際には何も説明していません。例:密度は?なぜあると確信していますか?これらのランダム変数に共通の密度あるのはなぜですか?合計が密度の畳み込みに変換されるので、には密度に無限の積分が必要です。密度の候補は絶対にありません!Gt+1p(gt+1|st+1,st)=p(gt+1|st+1)Gt+1
ファビアンワーナー

ファビアンへ:あなたの質問はありません。1.周辺分布の正確な形が必要ですか?私はそれを知りません、そして、我々はこの証明でそれを必要としません。2.なぜ?前に述べたように、とは与えられると独立しているためです。3.「共通密度」とはどういう意味ですか?共同配信という意味ですか?これらのランダム変数に共同分布がある理由を知りたいですか?このユニバースのすべてのランダム変数は、共同分布を持つことができます。これがあなたの質問なら、確率論の本を見つけて読むことをお勧めします。p(gt+1)p(gt+1|st+1,st)=p(gt+1|st+1)gt+1stst+1
傑市

この議論をチャットに移しましょう:chat.stackexchange.com/rooms/88952/bellman-equation
Fabian Werner

2

次のアプローチとは何ですか?

vπ(s)=Eπ[GtSt=s]=Eπ[Rt+1+γGt+1St=s]=aπ(as)srp(s,rs,a)Eπ[Rt+1+γGt+1St=s,At+1=a,St+1=s,Rt+1=r]=aπ(as)s,rp(s,rs,a)[r+γvπ(s)].

合計は、取得するために導入され 及びから。結局のところ、可能なアクションと可能な次の状態はになります。これらの追加の条件により、期待値の直線性はほぼ直接結果につながります。asrs

しかし、私の議論が数学的にどれほど厳密かはわかりません。私は改善のために開いています。


最後の行は、MDPプロパティのためにのみ機能します。
チューサー

2

これは、受け入れられた答えに対する単なるコメント/追加です。

私は完全な期待の法則が適用されている行で混乱していました。ここでは、総期待法の主な形式が役立つとは思わない。ここでは実際にそのバリアントが必要です。

場合は確率変数と、すべての期待が存在すると仮定され、次のアイデンティティが成り立ちます:X,Y,Z

E[X|Y]=E[E[X|Y,Z]|Y]

この場合、、およびです。それからX=Gt+1Y=StZ=St+1

E[Gt+1|St=s]=E[E[Gt+1|St=s,St+1=s|St=s]、マルコフの特性によりE[E[Gt+1|St+1=s]|St=s]

そこから、答えの残りの証拠をたどることができます。


1
CVへようこそ!質問への回答にのみ回答を使用してください。十分な評判(50)が得られたら、コメントを追加できます。
フランスロデンブルク

ありがとうございました。はい。評判が足りないためコメントできなかったので、答えに説明を追加すると役立つと思いました。しかし、私はそれを心に留めておきます。
メフディGolari

私は賛成しましたが、この答えには詳細がありません:がこのクレイジーな関係を満たしていても、条件付き期待値の因数分解にも当てはまることを保証する人はいません!つまり、Ntabgobaの答えの場合のように、左側は依存せず、右側は依存ます。この方程式は正しくありません!E[X|Y]s
ファビアンワーナー

1

Eπ()は通常、エージェントがポリシー従うことを前提とする期待を示します。この場合、は非決定的と思われます。つまり、状態ときにエージェントがアクションを実行確率を返します。ππ(a|s)as

小文字のは、ランダム変数置き換えているようです。2番目の期待値は無限の合計に置き換わり、将来のすべてのについてをたどり続けるという仮定を反映しています。は、次のタイムステップで予想される即時報酬です。2番目の期待値(なります)は、次の状態の期待値であり、状態でからをとる確率で重み付けされます。rRt+1πts,rrp(s,r|s,a)vπsas

したがって、期待値は、ここではとして一緒に表される遷移関数と報酬関数だけでなく、政策確率も考慮します。p(s,r|s,a)


ありがとう。はい、あなたはについて言及したものを(それは、アクション服用薬の確率だ正しい状態で)。π(a|s)as
アメリオバスケスレイナ

従わないのは、どの用語が2番目のステップでどの用語に正確に展開されるかということです(確率因数分解と周辺化には精通していますが、RLにはあまり精通していません)。ある展開される用語?つまり、前のステップで正確に何が次のステップで正確に何に等しいか?Rt
アメリオバスケスレイナ

1
それは次のようになり、小文字、交換された(おそらく、我々は従うことを続けることを前提に反映するために、確率変数を、第二の期待は無限の合計を置き換えるすべての将来のための)。は、次のタイムステップで予想される即時報酬であり、2番目の予想(なる)は、確率で重み付けされた次の状態の予想値です。状態で巻き取るのとったから、。rRt+1πtΣp(s,r|s,a)rvπsas
ショーンイースター

1

正しい答えがすでに与えられ、時間が経ったとしても、次のステップバイステップガイドが役立つと思いまし
た。期待値の線形性により、 をおよび変換し ます。 最初の部分のみの手順の概要を説明します。2番目の部分の後には、期待値の法則と同じ手順が続きます。E[Rt+1+γE[Gt+1|St=s]]E[Rt+1|St=s]γE[Gt+1|St=s]

E[Rt+1|St=s]=rrP[Rt+1=r|St=s]=arrP[Rt+1=r,At=a|St=s](III)=arrP[Rt+1=r|At=a,St=s]P[At=a|St=s]=sarrP[St+1=s,Rt+1=r|At=a,St=s]P[At=a|St=s]=aπ(a|s)s,rp(s,r|s,a)r

(III)は次の形式に従います:

P[A,B|C]=P[A,B,C]P[C]=P[A,B,C]P[C]P[B,C]P[B,C]=P[A,B,C]P[B,C]P[B,C]P[C]=P[A|B,C]P[B|C]


1

私はすでに受け入れられた答えがあることを知っていますが、おそらくより具体的な派生を提供したいと思います。@Jie Shiのトリックは多少理にかなっていますが、非常に不快に感じます:(。この仕事をするために時間の次元を考慮する必要があります。そして、期待が実際にあることに注意することが重要ですとだけではなく、無限の地平線全体を撮影しますから開始すると仮定し(実際、派生は開始時間に関係なく同じです。方程式を別の添字で汚染したくありません。) sst=0k

vπ(s0)=Eπ[G0|s0]G0=t=0T1γtRt+1Eπ[G0|s0]=a0π(a0|s0)a1,...aTs1,...sTr1,...rT(t=0T1π(at+1|st+1)p(st+1,rt+1|st,at)×(t=0T1γtrt+1))=a0π(a0|s0)a1,...aTs1,...sTr1,...rT(t=0T1π(at+1|st+1)p(st+1,rt+1|st,at)×(r1+γt=0T2γtrt+2))
上記の式がでも保持されることに注意、、宇宙の終わりまでは真になります(少し誇張されているかもしれません:))T
この段階で、私たちのほとんどは、上記が最終式にどのようにつながるかをすでに心に留めているべきだと思います-合計積の規則()を苦労して適用するだけです。内の各項に期待の線形性の法則を適用してみましょうabcabcaabbcc(r1+γt=0T2γtrt+2)

パート1

a0π(a0|s0)a1,...aTs1,...sTr1,...rT(t=0T1π(at+1|st+1)p(st+1,rt+1|st,at)×r1)

まあ、これはかなり些細なことで、関連するものを除いて、すべての確率が消えます(実際には合計1)。したがって、 r1

a0π(a0|s0)s1,r1p(s1,r1|s0,a0)×r1

パート2
推測してください。このパートはさらに簡単です。合計のシーケンスを再配置するだけです。

a0π(a0|s0)a1,...aTs1,...sTr1,...rT(t=0T1π(at+1|st+1)p(st+1,rt+1|st,at))=a0π(a0|s0)s1,r1p(s1,r1|s0,a0)(a1π(a1|s1)a2,...aTs2,...sTr2,...rT(t=0T2π(at+2|st+2)p(st+2,rt+2|st+1,at+1)))

そしてエウレカ!! 大きな括弧の内側で再帰的なパターンを回復します。これをと、を取得し およびパート2は γt=0T2γtrt+2vπ(s1)=Eπ[G1|s1]

γEπ[G1|s1]=a1π(a1|s1)a2,...aTs2,...sTr2,...rT(t=0T2π(at+2|st+2)p(st+2,rt+2|st+1,at+1))(γt=0T2γtrt+2)

a0π(a0|s0)s1,r1p(s1,r1|s0,a0)×γvπ(s1)

パート1 +パート2

vπ(s0)=a0π(a0|s0)s1,r1p(s1,r1|s0,a0)×(r1+γvπ(s1))

そして、今度は時間ディメンションを押し込み、一般的な再帰式を復元できます

vπ(s)=aπ(a|s)s,rp(s,r|s,a)×(r+γvπ(s))

最後の告白、私は上記の人々が総期待の法則の使用に言及しているのを見て笑った。だからここにいる


記号 ' 'はどういう意味ですか?はありません...a0,...,aa
Fabian Werner

別の質問:なぜ最初の方程式は本当ですか?私が知っている私たちの場合、確率変数の無限配列であろうしたがって、この変数(密度を知っている無限の量の変数で構成される)の密度を他の何か(つまり状態)と一緒に計算する必要があります。 ..正確にどのようにデュですか?すなわち、何ですか?E[f(X)|Y=y]=Xf(x)p(x|y)dxX(R0,R1,R2,........)p(r0,r1,....)
ファビアンヴェルナー

@FabianWerner。最初に脳を落ち着かせるために深呼吸をしてください:)。最初の質問に答えさせてください。。価値関数の定義を思い出すと、それは実際には割引された将来の報酬の合計です。将来の報酬のために無限の地平線を考慮する場合、無限の回数を合計する必要があります。報酬は状態からアクションを取得した結果です。報酬の数は無限であるためアクションの数は無限である必要があり、したがってです。a0,...,aa0a1,...,aa
カールソンユ

1
奇妙ながあることに同意すると仮定します(通常、数学の最初の学期の学生は、実際には無限の要素を含む構成と制限を混同する傾向があります)...私はまだ1つの簡単な質問があります。「はどのように定義されますか?私はこの式が有限量の和で何を意味するかを知っています...しかし、それらの無限に多くはありますか?この表現は何を理解しますか?aa1...a
ファビアンヴェルナー

1
インターネット。あなたの表現を定義するページや場所を紹介してもらえますか?そうでなければ、あなたは実際に何か新しいものを定義し、それはあなたが作った単なるシンボルであるため、それを議論する意味はありません(しかし、その背後には意味がありません)...あなたは私たちがそのシンボルについてのみ議論できることに同意します両方が意味を知っているなら だから、私は、説明してください...それが何を意味するのか分からない
ファビアン・ヴェルナー

1

この質問に対する答えはすでに非常に多くありますが、ほとんどの場合、操作で何が起こっているかを説明する単語はほとんど含まれていません。もっと多くの言葉を使って答えようと思う。始めること、

Gtk=t+1Tγkt1Rk

は、サットンとバルトの方程式3.11で定義され、一定の割引係数を持ち、またはがありますが、両方はありません。報酬は確率変数であるため、も確率変数の単なる線形結合であるためです。0γ1T=γ=1RkGt

vπ(s)Eπ[GtSt=s]=Eπ[Rt+1+γGt+1St=s]=Eπ[Rt+1|St=s]+γEπ[Gt+1|St=s]

その最後の行は、期待値の線形性から続きます。 は、時間ステップアクションを実行した後にエージェントが獲得する報酬です。簡単にするため、有限数の値を取ることができると仮定します。 Rt+1trR

第1期に取り組みます。つまり、現在の状態があることがわかっている場合、の期待値を計算する必要があります。この式はRt+1s

Eπ[Rt+1|St=s]=rRrp(r|s).

言い換えれば、報酬が現れる確率は状態左右されます。州によって報酬が異なる場合があります。この分布は、変数と、時刻実行されたアクション、アクション後の時刻状態もそれぞれ含んでいた分布の周辺分布です。rsp(r|s)astt+1

p(r|s)=sSaAp(s,a,r|s)=sSaAπ(a|s)p(s,r|a,s).

どこで使用している書籍のコンベンション以下に、。その最後の等式が混乱している場合、合計を忘れ、抑制し(確率は結合確率のようになります)、乗算の法則を使用し、最終的にすべての新しい項での条件を再導入します。最初の用語はπ(a|s)p(a|s)ss

Eπ[Rt+1|St=s]=rRsSaArπ(a|s)p(s,r|a,s),

要求に応じ。2番目の項では、が有限数の値を取るランダム変数であると仮定します。最初の用語のように:Gt+1gΓ

Eπ[Gt+1|St=s]=gΓgp(g|s).()

もう一度、書くことで確率分布を「非境界化」します(再び乗算の法則)

p(g|s)=rRsSaAp(s,r,a,g|s)=rRsSaAp(g|s,r,a,s)p(s,r,a|s)=rRsSaAp(g|s,r,a,s)p(s,r|a,s)π(a|s)=rRsSaAp(g|s,r,a,s)p(s,r|a,s)π(a|s)=rRsSaAp(g|s)p(s,r|a,s)π(a|s)()

そこの最後の行は、マルコフ性からのものです。は、状態後にエージェントが受け取るすべての将来(割引)報酬の合計であることを忘れないでください。マルコフ特性は、プロセスが以前の状態、アクション、および報酬に関してメモリレスであることです。将来のアクション(およびそれらが獲得する報酬)は、アクションが実行される状態にのみ依存するため、仮定によりとなります。さて、証明の第2項はGt+1sp(g|s,r,a,s)=p(g|s)

γEπ[Gt+1|St=s]=γgΓrRsSaAgp(g|s)p(s,r|a,s)π(a|s)=γrRsSaAEπ[Gt+1|St+1=s]p(s,r|a,s)π(a|s)=γrRsSaAvπ(s)p(s,r|a,s)π(a|s)

必要に応じて、もう一度。2つの用語を組み合わせると証明が完了します

vπ(s)Eπ[GtSt=s]=aAπ(a|s)rRsSp(s,r|a,s)[r+γvπ(s)].

更新

私は、第2期の派生において手品のように見えるかもしれないものに取り組みたいと思います。でマークされた式では、私は用語の使用し、後で式マークで私はその主張に依存しないマルコフプロパティを主張することにより、。したがって、これが当てはまる場合、と言うことができます。しかし、これは真実ではありません。私が取ることができますその文の左側にある確率は、これが確率されていることを言うので上の条件、、、および()p(g|s)()gsp(g|s)=p(g)p(g|s,r,a,s)p(g|s)gsars。状態知っているか仮定しているため、マルコフ特性のため、他の条件は重要ではありません。状態知らない、または仮定しない場合、将来の報酬(の意味)はどの状態で開始するかによって決まります。これは、計算時にどの状態を開始するかを(ポリシーに基づいて)決定するためです。ssgsg

その引数があなたを納得させないなら、が何であるかを計算してみてください:p(g)

p(g)=sSp(g,s)=sSp(g|s)p(s)=sSp(g|s)s,a,rp(s,a,r,s)=sSp(g|s)s,a,rp(s,r|a,s)p(a,s)=sSp(s)sSp(g|s)a,rp(s,r|a,s)π(a|s)sSp(s)p(g|s)=sSp(g,s)=p(g).

最後の行に見られるように、であるとは言えません。の期待値は、状態がわからない場合や仮定しない場合、どの状態で開始するか(つまりの識別情報)によって異なります。p(g|s)=p(g)gss

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.