昨日は方策反復について説明し、実際にプログラムも書いてみた。
今日はもう一つのアルゴリズムについて説明する。
価値反復
方策反復の場合、方策評価の中で何度もスイープを行うので、方策改善が行われるまでに時間がかかる。
なら、1回スイープを行うごとに方策改善が出来ないか、というのが、もう一つのアルゴリズムの基本的な考え方となる。
スイープを行うごとに方策改善を行うのだから、つまり、方策評価で
と更新していたところを、
で更新することになる。
(方策はスイープ毎にと更新されるので)
具体的には、以下のようなアルゴリズムになる。
- 初期化
- すべてのについて、を任意の値で初期化。
- 方策評価(&方策改善)
- 以下を繰り返す:
- 各について:
- (は十分小さい正の定数)なら、繰り返しを終了。
- 各について:
- 以下を繰り返す:
- 方策出力
- 方策を次のように出力:
- 方策を次のように出力:
このアルゴリズムは、価値反復(value iteration)と呼ばれている。
(これはおそらく、アルゴリズムが状態価値の更新だけを行っているように見えるからだと思う)
Rubyによる実装
昨日のレンタカー問題を、価値反復で解いてみる。
価値反復
昨日のコードに加えて、次のコードを用意する。
#!/usr/bin/env ruby #==================== # value_iteration_method.rb #==================== require './rental_car_problem' require './status_value' require './policy' module RentalCarProblem # 価値反復法 class ValueIterationMethod def initialize(value, policy, verbose=false) @value = value @policy = policy @verbose = verbose end attr_reader :value, :policy @@delta_max = 0.1 # 価値反復法を行う def execute i = 0 loop do delta = 0.0 (0..RENTAL_CAR_MAX).each do |x| (0..RENTAL_CAR_MAX).each do |y| old_value = @value.get(x, y) new_policy, new_value = @value.get_most_valuable_move(x, y, *((-MOVE_MAX..MOVE_MAX).to_a)) @value.set(x, y, new_value) @policy.set(x, y, new_policy) delta = [delta, (new_value - old_value).abs].max end end if @verbose puts "Value_#{i}" @value.print puts "Policy_#{i}" @policy.print end if delta < @@delta_max break else i += 1 end end end end end if __FILE__ == $PROGRAM_NAME include RentalCarProblem value = StatusValue.new policy = Policy.new value_iteration = ValueIterationMethod.new(value, policy, true) value_iteration.execute puts "最適状態価値関数" value_iteration.value.print puts "最適方策" value_iteration.policy.print end
実行例
これを実行すると、次のような感じ。
$ ./value_iteration_method.rb Value_0 ---------------------------------------------------------------------------------------------------------------------------------- | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 ---------------------------------------------------------------------------------------------------------------------------------- 00 | 0.0 0.0 0.2 1.0 2.6 5.9 10.0 16.8 23.2 30.7 37.1 42.4 47.1 49.8 51.1 51.7 52.0 52.1 52.1 52.1 52.1 01 | 0.0 0.3 1.1 2.8 6.3 10.6 17.7 24.4 32.1 38.8 44.2 49.2 52.0 54.4 55.8 56.5 56.8 57.0 57.1 57.1 57.1 02 | 0.3 1.0 3.0 6.7 11.3 18.8 26.0 34.0 41.2 46.6 51.9 55.1 57.1 58.8 59.6 60.1 60.4 60.6 60.8 60.8 60.8 03 | 1.0 2.9 6.6 12.1 20.2 28.0 36.5 44.6 50.3 56.1 59.9 62.4 64.0 65.1 65.9 66.5 67.0 67.3 67.5 67.4 66.8 04 | 2.9 6.7 12.2 20.4 28.8 39.8 49.0 55.8 61.9 66.8 70.1 72.4 74.2 75.5 76.5 77.3 77.8 78.1 78.1 77.4 75.4 05 | 6.9 12.6 21.2 30.0 41.4 51.4 60.8 69.2 75.2 79.6 82.8 85.2 87.1 88.5 89.6 90.4 90.8 90.8 90.0 87.7 85.4 06 | 13.2 22.3 31.6 43.6 54.4 64.4 74.0 81.0 86.2 90.9 94.4 97.1 99.1 100.7 101.8 102.7 103.2 103.1 102.1 99.3 93.3 07 | 23.3 33.0 46.0 57.5 68.6 79.0 86.9 93.3 99.0 103.3 106.5 109.0 110.9 112.4 113.4 114.0 114.0 112.7 110.6 107.4 100.7 08 | 34.2 47.9 59.9 72.6 83.7 92.1 100.4 106.8 111.6 115.3 118.2 120.3 122.0 123.1 123.8 124.1 123.8 122.3 118.3 113.4 106.2 09 | 48.9 61.2 75.6 87.2 97.4 106.7 113.5 118.7 123.0 126.7 129.5 131.6 133.2 134.3 134.8 134.4 132.5 129.8 125.3 118.3 110.5 10 | 62.1 77.1 88.9 101.4 111.1 118.7 125.7 130.9 134.9 137.9 140.2 141.9 143.0 143.4 143.7 143.1 140.7 136.0 130.9 122.4 114.0 11 | 73.4 90.3 103.5 113.6 123.7 131.0 136.5 141.5 145.3 148.2 150.3 151.9 152.8 153.0 152.1 150.4 147.5 141.5 135.7 126.0 117.1 12 | 83.4 101.9 116.0 126.2 134.9 142.3 147.6 151.6 154.8 157.5 159.4 160.7 161.4 161.3 159.9 156.9 153.5 146.8 139.9 129.2 119.7 13 | 92.8 112.5 127.3 137.8 145.5 152.7 157.8 161.6 164.3 166.3 167.8 168.9 169.2 168.7 166.9 162.9 158.8 151.4 143.6 132.3 122.0 14 | 101.8 122.7 138.0 148.6 156.0 162.6 167.5 170.9 173.4 175.1 176.1 176.4 176.4 175.5 173.1 168.5 163.5 155.5 146.8 135.0 123.9 15 | 110.6 132.5 148.2 158.9 166.2 171.9 176.5 179.7 181.9 183.4 184.0 183.9 183.0 181.6 178.8 173.6 167.6 159.1 149.6 137.3 125.3 16 | 119.0 141.8 158.0 168.7 175.8 180.7 185.1 188.0 189.9 191.0 191.3 190.8 189.2 187.2 183.8 178.0 171.3 162.2 151.8 139.0 126.0 17 | 127.0 150.8 167.3 178.0 184.9 189.4 193.2 195.8 197.4 198.2 198.1 197.1 195.0 192.1 188.3 181.9 174.3 164.7 153.1 139.9 125.3 18 | 134.6 159.2 176.0 186.8 193.5 197.7 200.7 203.1 204.3 204.7 204.2 202.8 200.2 196.4 192.0 185.1 176.3 166.2 153.0 139.4 122.5 19 | 141.7 167.1 184.2 195.0 201.5 205.4 207.7 209.6 210.5 210.5 209.6 207.7 204.6 199.7 194.7 187.3 176.7 166.1 150.5 136.7 116.8 20 | 148.3 174.4 191.8 202.5 208.9 212.5 214.5 215.3 215.7 215.3 214.0 211.6 207.9 202.5 195.7 187.8 175.9 163.7 147.7 131.0 108.2 ---------------------------------------------------------------------------------------------------------------------------------- Policy_0 ------------------------------------------------------------------- | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 ------------------------------------------------------------------- 00 | 0 0 -1 -1 -2 -2 -2 -3 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 01 | 1 0 0 -1 -1 -1 -2 -2 -3 -3 -4 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 02 | 1 1 0 0 0 -1 -1 -2 -2 -3 -3 -3 -4 -4 -4 -4 -4 -4 -4 -4 -4 03 | 2 1 1 0 0 0 -1 -1 -1 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 04 | 2 2 1 1 0 0 0 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 05 | 3 2 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 -1 06 | 3 3 3 2 2 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 07 | 4 4 3 3 2 2 2 1 1 1 1 1 1 1 1 1 1 1 0 0 0 08 | 4 4 4 3 3 3 2 2 2 2 2 2 2 2 2 1 1 1 1 0 0 09 | 5 5 4 4 3 3 3 3 2 2 2 2 2 2 2 2 2 1 1 0 0 10 | 5 5 5 4 4 3 3 3 3 3 3 3 3 3 2 2 2 1 1 0 0 11 | 5 5 5 4 4 4 4 3 3 3 3 3 3 3 3 2 2 2 1 0 0 12 | 5 5 5 5 4 4 4 4 3 3 3 3 3 3 3 2 2 2 1 1 0 13 | 5 5 5 5 4 4 4 4 4 4 3 3 3 3 3 3 2 2 1 1 0 14 | 5 5 5 5 5 4 4 4 4 4 4 3 3 3 3 3 2 2 1 1 0 15 | 5 5 5 5 5 4 4 4 4 4 4 4 3 3 3 3 2 2 1 1 0 16 | 5 5 5 5 5 4 4 4 4 4 4 4 4 3 3 3 2 2 1 1 0 17 | 5 5 5 5 5 5 4 4 4 4 4 4 4 3 3 3 2 2 1 1 0 18 | 5 5 5 5 5 5 4 4 4 4 4 4 4 3 3 3 2 2 1 1 0 19 | 5 5 5 5 5 5 5 4 4 4 4 4 4 4 3 3 2 2 1 1 0 20 | 5 5 5 5 5 5 5 5 4 4 4 4 4 4 3 3 3 2 2 1 0 ------------------------------------------------------------------- Value_1 ---------------------------------------------------------------------------------------------------------------------------------- | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 ---------------------------------------------------------------------------------------------------------------------------------- 00 | 0.0 0.1 0.5 1.7 4.2 9.3 16.1 26.9 37.8 52.5 65.4 80.2 92.3 101.6 108.6 114.0 118.3 121.6 124.1 126.0 127.3 01 | 0.1 0.5 1.7 4.4 9.6 16.7 27.8 38.9 53.9 67.0 81.9 94.2 107.3 117.4 124.9 130.7 135.1 138.5 141.1 143.1 144.4 02 | 0.5 1.7 4.6 10.0 17.3 28.7 40.2 55.5 69.0 84.0 96.6 109.5 120.2 130.8 138.6 144.4 148.8 152.2 154.8 156.6 157.8 03 | 1.6 4.5 9.8 18.1 29.9 41.8 57.4 71.5 86.6 99.7 112.4 123.1 133.5 142.9 150.6 156.3 160.6 163.9 166.3 168.0 169.0 04 | 4.4 9.7 17.8 29.6 43.0 59.8 74.5 89.8 103.8 116.2 127.5 137.3 145.8 154.1 161.8 167.3 171.4 174.4 176.6 178.0 178.6 05 | 9.6 17.7 29.6 42.9 59.9 75.6 93.7 108.5 120.9 133.2 142.8 151.4 158.6 165.2 172.3 177.6 181.3 184.1 185.9 187.0 187.3 06 | 17.7 29.7 43.0 60.3 76.0 94.6 110.0 126.3 139.4 150.1 159.0 166.6 173.3 178.8 183.4 187.3 190.7 193.1 194.6 195.3 195.1 07 | 29.6 43.2 60.7 76.7 95.7 111.7 128.3 142.2 155.4 166.4 175.3 182.8 189.1 194.4 198.8 202.2 204.5 205.2 203.1 203.0 202.4 08 | 43.1 60.8 77.1 96.6 113.1 130.3 144.9 158.5 170.3 180.5 189.3 196.5 202.5 207.5 211.5 214.5 216.3 216.3 213.3 209.9 208.8 09 | 60.3 77.2 96.9 113.6 131.8 146.9 161.4 173.8 184.7 194.3 202.2 208.9 214.4 219.0 222.5 225.0 226.2 225.6 221.9 215.8 214.2 10 | 76.7 96.4 113.8 132.4 147.8 163.6 176.5 188.5 198.7 207.2 214.7 221.0 226.1 230.1 233.1 234.6 235.1 233.8 229.4 222.3 217.8 11 | 90.9 113.4 132.1 148.6 164.7 178.5 191.4 202.0 211.8 219.9 226.6 232.1 236.7 240.3 242.7 243.7 243.2 241.3 236.1 228.2 219.8 12 | 103.7 128.3 148.4 164.6 179.7 192.9 205.0 215.2 224.0 231.6 237.8 242.9 246.8 249.6 251.5 251.9 250.5 248.0 242.1 233.3 223.7 13 | 115.8 142.1 163.1 179.7 193.7 206.7 217.8 227.6 235.6 242.6 248.3 252.9 256.3 258.5 259.6 259.4 257.1 253.9 247.4 237.4 226.0 14 | 127.5 155.2 177.0 193.7 206.9 219.6 229.9 239.2 246.7 252.9 258.1 262.2 265.1 266.8 266.9 266.1 263.2 258.8 251.6 239.8 226.9 15 | 138.9 167.9 190.2 207.0 219.9 231.8 241.4 250.2 257.2 262.7 267.1 270.7 273.0 274.2 273.7 271.7 268.2 261.9 254.1 240.7 225.8 16 | 149.8 180.1 202.8 219.6 232.1 243.3 252.4 260.3 266.8 271.8 275.6 278.3 279.9 280.4 279.4 276.0 271.3 263.5 253.4 239.5 219.8 17 | 160.2 191.6 214.8 231.5 243.7 253.9 262.6 269.4 275.3 279.8 283.1 285.1 285.9 285.0 283.1 279.0 271.0 262.6 248.2 233.0 211.3 18 | 169.9 202.4 226.0 242.5 254.4 263.4 271.7 277.9 282.6 286.0 288.5 290.0 290.1 288.5 284.5 278.4 269.8 255.9 241.2 218.7 197.7 19 | 178.8 212.1 236.0 252.5 264.0 272.3 278.8 284.4 288.6 291.4 293.0 293.2 291.6 288.4 283.5 274.6 262.5 247.2 226.2 204.0 175.4 20 | 186.1 220.2 244.2 260.5 271.5 279.4 285.1 289.3 292.2 293.8 294.1 293.5 291.2 286.1 277.0 266.8 250.9 231.3 208.2 180.7 145.0 ---------------------------------------------------------------------------------------------------------------------------------- Policy_1 ------------------------------------------------------------------- | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 ------------------------------------------------------------------- 00 | 0 0 -1 -1 -2 -2 -3 -3 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 01 | 1 0 0 -1 -1 -2 -2 -2 -3 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 02 | 1 1 0 0 -1 -1 -1 -2 -2 -3 -3 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 03 | 2 1 1 0 0 0 -1 -1 -2 -2 -3 -3 -4 -5 -5 -5 -5 -5 -5 -5 -5 04 | 2 2 1 1 0 0 0 -1 -1 -2 -2 -3 -4 -5 -5 -5 -5 -5 -5 -5 -5 05 | 3 2 2 1 1 0 0 0 -1 -1 -1 -2 -2 -4 -5 -5 -5 -5 -5 -5 -5 06 | 3 3 2 2 1 1 1 0 0 0 0 -1 -1 -1 -1 -5 -5 -5 -5 -5 -5 07 | 4 3 3 3 2 2 1 1 0 0 0 0 0 0 0 0 0 0 -1 -5 -5 08 | 4 4 3 3 3 2 2 1 1 0 0 0 0 0 0 0 0 0 0 -5 -5 09 | 5 4 4 4 3 3 2 2 1 1 1 1 0 0 0 0 0 0 0 -1 -5 10 | 5 5 4 4 3 3 3 2 2 1 1 1 1 1 1 1 0 0 0 -1 -5 11 | 5 5 5 4 4 3 3 3 2 2 2 2 1 1 1 1 0 0 0 -1 -3 12 | 5 5 5 5 4 4 3 3 2 2 2 2 2 1 1 1 0 0 0 -1 -2 13 | 5 5 5 5 4 4 3 3 3 2 2 2 2 2 1 1 1 0 0 -1 -2 14 | 5 5 5 5 5 4 3 3 3 2 2 2 2 2 2 1 1 0 0 -1 -1 15 | 5 5 5 5 5 4 4 3 3 3 2 2 2 2 2 1 1 0 0 0 -1 16 | 5 5 5 5 5 4 4 3 3 3 3 3 2 2 2 2 1 1 0 0 -1 17 | 5 5 5 5 5 4 4 4 3 3 3 3 3 3 2 2 2 1 1 0 0 18 | 5 5 5 5 5 4 4 4 4 4 3 3 3 3 3 2 2 1 1 0 0 19 | 5 5 5 5 5 5 4 4 4 4 4 4 4 3 3 3 2 2 1 1 0 20 | 5 5 5 5 5 5 5 5 5 5 4 4 4 4 4 3 3 2 2 1 0 ------------------------------------------------------------------- 〜省略〜 Value_14 ---------------------------------------------------------------------------------------------------------------------------------- | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 ---------------------------------------------------------------------------------------------------------------------------------- 00 | 0.0 0.1 0.7 2.2 5.5 12.0 20.9 35.2 50.5 70.8 90.9 112.9 134.9 155.0 173.8 191.8 209.1 225.9 242.2 257.7 272.5 01 | 0.1 0.7 2.3 5.7 12.3 21.5 36.0 51.5 72.1 92.4 114.5 136.7 157.8 179.8 200.1 219.1 237.4 254.8 271.6 287.6 302.7 02 | 0.7 2.2 5.9 12.7 22.0 36.8 52.5 73.4 93.8 116.1 138.4 159.6 181.7 202.0 222.0 241.5 259.9 277.5 294.2 310.1 324.9 03 | 2.1 5.7 12.3 22.6 37.6 53.6 74.7 95.3 117.8 140.1 161.5 183.6 203.9 224.0 243.5 261.9 279.5 296.5 312.9 328.3 342.6 04 | 5.5 12.0 22.0 36.8 53.9 76.0 96.7 119.4 141.9 163.3 185.5 205.8 225.9 245.5 263.9 281.5 298.5 314.9 330.3 344.6 357.7 05 | 11.6 21.5 36.0 52.9 74.7 95.8 121.0 143.6 165.1 187.4 207.7 227.9 247.4 265.9 283.4 300.5 316.9 332.3 346.6 359.7 371.6 06 | 20.9 35.2 51.9 73.4 94.4 119.4 141.9 167.0 189.3 209.6 229.9 249.4 267.8 285.4 302.5 318.9 334.3 348.6 361.7 373.6 384.1 07 | 34.4 50.8 72.1 92.9 117.8 140.1 165.1 187.4 210.7 231.8 251.4 269.8 287.4 304.5 320.9 336.3 350.6 363.7 375.6 386.1 394.9 08 | 49.8 70.8 91.5 116.2 138.4 163.3 185.5 208.8 230.0 251.3 270.9 289.2 306.5 322.8 338.3 352.6 365.7 377.6 388.1 396.9 404.1 09 | 69.6 90.0 114.5 136.7 161.5 183.6 206.9 228.0 249.4 269.3 288.6 306.5 323.3 339.2 354.1 367.7 379.6 390.1 398.9 406.1 411.4 10 | 88.6 112.9 134.9 159.6 181.7 204.9 226.1 247.4 267.3 286.6 305.1 322.5 338.8 354.0 368.2 381.1 392.1 400.9 408.1 413.4 417.1 11 | 105.5 133.2 157.8 179.8 203.0 224.1 245.4 265.3 284.6 303.1 320.6 337.4 353.0 367.5 380.9 392.9 402.9 410.1 415.4 419.0 419.7 12 | 121.0 151.4 177.8 201.1 222.2 243.4 263.4 282.6 301.1 318.6 335.4 351.2 366.1 379.8 392.2 403.3 412.1 417.4 421.0 421.7 418.0 13 | 135.7 168.4 196.3 220.2 241.5 261.4 280.6 299.1 316.6 333.4 349.2 364.1 377.8 390.5 402.0 411.8 419.3 423.0 423.7 420.0 413.0 14 | 150.2 184.9 213.8 238.2 259.4 278.6 297.1 314.6 331.4 347.2 362.1 375.8 388.5 400.0 409.8 417.9 423.8 425.7 422.0 414.9 402.3 15 | 164.3 200.8 230.7 255.2 276.3 295.1 312.6 329.4 345.2 360.1 373.8 386.6 398.0 407.8 415.9 421.8 424.1 423.9 416.8 404.2 384.3 16 | 178.1 216.3 246.9 271.6 292.3 310.6 327.4 343.2 358.1 371.8 384.6 396.0 405.8 413.9 419.8 422.1 422.0 415.3 406.1 386.1 362.3 17 | 191.4 231.1 262.4 287.1 307.4 325.2 341.3 356.1 369.8 382.6 394.0 403.8 411.9 417.8 420.2 420.0 413.4 404.2 385.2 364.0 329.2 18 | 203.9 245.1 276.9 301.5 321.5 338.6 353.9 367.8 380.6 392.0 401.8 409.9 415.9 418.2 418.1 411.5 402.4 383.4 362.3 329.2 296.1 19 | 215.2 257.6 289.9 314.4 333.8 350.2 364.6 377.6 389.3 399.5 407.9 413.9 416.2 416.1 409.6 400.5 381.6 360.6 327.7 294.6 250.8 20 | 224.4 267.8 300.2 324.4 343.2 358.8 372.3 384.2 394.6 403.4 410.2 414.3 414.2 407.7 398.6 379.8 358.9 326.1 293.2 249.6 196.1 ---------------------------------------------------------------------------------------------------------------------------------- Policy_14 ------------------------------------------------------------------- | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 ------------------------------------------------------------------- 00 | 0 0 -1 -1 -2 -2 -3 -3 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 01 | 1 0 0 -1 -1 -2 -2 -2 -3 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 02 | 1 1 0 0 -1 -1 -1 -2 -2 -3 -3 -4 -4 -4 -5 -5 -5 -5 -5 -5 -5 03 | 2 1 1 0 0 0 -1 -1 -2 -2 -3 -3 -3 -4 -4 -4 -4 -5 -5 -5 -5 04 | 2 2 1 1 0 0 0 -1 -1 -2 -2 -2 -3 -3 -3 -3 -4 -4 -4 -4 -5 05 | 3 2 2 1 1 0 0 0 -1 -1 -1 -2 -2 -2 -2 -3 -3 -3 -3 -4 -4 06 | 3 3 2 2 1 1 1 0 0 0 -1 -1 -1 -1 -2 -2 -2 -2 -3 -3 -4 07 | 4 3 3 2 2 2 1 1 0 0 0 0 0 -1 -1 -1 -1 -2 -2 -3 -4 08 | 4 4 3 3 3 2 2 1 0 0 0 0 0 0 0 0 -1 -1 -2 -3 -4 09 | 5 4 4 4 3 3 2 1 1 0 0 0 0 0 0 0 0 -1 -2 -3 -3 10 | 5 5 5 4 4 3 2 2 1 1 0 0 0 0 0 0 0 -1 -2 -2 -3 11 | 5 5 5 5 4 3 3 2 2 1 0 0 0 0 0 0 0 -1 -1 -2 -3 12 | 5 5 5 5 4 4 3 3 2 1 1 0 0 0 0 0 0 0 -1 -2 -3 13 | 5 5 5 5 5 4 4 3 2 2 1 1 0 0 0 0 0 0 -1 -2 -2 14 | 5 5 5 5 5 5 4 3 3 2 2 1 1 1 1 0 0 0 -1 -1 -2 15 | 5 5 5 5 5 5 4 4 3 3 2 2 2 2 1 1 0 0 0 -1 -1 16 | 5 5 5 5 5 5 5 4 4 3 3 3 3 2 2 1 1 0 0 0 -1 17 | 5 5 5 5 5 5 5 5 4 4 4 4 3 3 2 2 1 1 0 0 0 18 | 5 5 5 5 5 5 5 5 5 5 5 4 4 3 3 2 2 1 1 0 0 19 | 5 5 5 5 5 5 5 5 5 5 5 5 4 4 3 3 2 2 1 1 0 20 | 5 5 5 5 5 5 5 5 5 5 5 5 5 4 4 3 3 2 2 1 0 ------------------------------------------------------------------- 最適状態価値関数 ---------------------------------------------------------------------------------------------------------------------------------- | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 ---------------------------------------------------------------------------------------------------------------------------------- 00 | 0.0 0.1 0.7 2.2 5.5 12.0 20.9 35.2 50.5 70.8 90.9 112.9 134.9 155.0 173.8 191.8 209.1 225.9 242.2 257.7 272.5 01 | 0.1 0.7 2.3 5.7 12.3 21.5 36.0 51.5 72.1 92.4 114.5 136.7 157.8 179.8 200.1 219.1 237.4 254.8 271.6 287.6 302.7 02 | 0.7 2.2 5.9 12.7 22.0 36.8 52.5 73.4 93.8 116.1 138.4 159.6 181.7 202.0 222.0 241.5 259.9 277.5 294.2 310.1 324.9 03 | 2.1 5.7 12.3 22.6 37.6 53.6 74.7 95.3 117.8 140.1 161.5 183.6 203.9 224.0 243.5 261.9 279.5 296.5 312.9 328.3 342.6 04 | 5.5 12.0 22.0 36.8 53.9 76.0 96.7 119.4 141.9 163.3 185.5 205.8 225.9 245.5 263.9 281.5 298.5 314.9 330.3 344.6 357.7 05 | 11.6 21.5 36.0 52.9 74.7 95.8 121.0 143.6 165.1 187.4 207.7 227.9 247.4 265.9 283.4 300.5 316.9 332.3 346.6 359.7 371.6 06 | 20.9 35.2 51.9 73.4 94.4 119.4 141.9 167.0 189.3 209.6 229.9 249.4 267.8 285.4 302.5 318.9 334.3 348.6 361.7 373.6 384.1 07 | 34.4 50.8 72.1 92.9 117.8 140.1 165.1 187.4 210.7 231.8 251.4 269.8 287.4 304.5 320.9 336.3 350.6 363.7 375.6 386.1 394.9 08 | 49.8 70.8 91.5 116.2 138.4 163.3 185.5 208.8 230.0 251.3 270.9 289.2 306.5 322.8 338.3 352.6 365.7 377.6 388.1 396.9 404.1 09 | 69.6 90.0 114.5 136.7 161.5 183.6 206.9 228.0 249.4 269.3 288.6 306.5 323.3 339.2 354.1 367.7 379.6 390.1 398.9 406.1 411.4 10 | 88.6 112.9 134.9 159.6 181.7 204.9 226.1 247.4 267.3 286.6 305.1 322.5 338.8 354.0 368.2 381.1 392.1 400.9 408.1 413.4 417.1 11 | 105.5 133.2 157.8 179.8 203.0 224.1 245.4 265.3 284.6 303.1 320.6 337.4 353.0 367.5 380.9 392.9 402.9 410.1 415.4 419.0 419.7 12 | 121.0 151.4 177.8 201.1 222.2 243.4 263.4 282.6 301.1 318.6 335.4 351.2 366.1 379.8 392.2 403.3 412.1 417.4 421.0 421.7 418.0 13 | 135.7 168.4 196.3 220.2 241.5 261.4 280.6 299.1 316.6 333.4 349.2 364.1 377.8 390.5 402.0 411.8 419.3 423.0 423.7 420.0 413.0 14 | 150.2 184.9 213.8 238.2 259.4 278.6 297.1 314.6 331.4 347.2 362.1 375.8 388.5 400.0 409.8 417.9 423.8 425.7 422.0 414.9 402.3 15 | 164.3 200.8 230.7 255.2 276.3 295.1 312.6 329.4 345.2 360.1 373.8 386.6 398.0 407.8 415.9 421.8 424.1 423.9 416.8 404.2 384.3 16 | 178.1 216.3 246.9 271.6 292.3 310.6 327.4 343.2 358.1 371.8 384.6 396.0 405.8 413.9 419.8 422.1 422.0 415.3 406.1 386.1 362.3 17 | 191.4 231.1 262.4 287.1 307.4 325.2 341.3 356.1 369.8 382.6 394.0 403.8 411.9 417.8 420.2 420.0 413.4 404.2 385.2 364.0 329.2 18 | 203.9 245.1 276.9 301.5 321.5 338.6 353.9 367.8 380.6 392.0 401.8 409.9 415.9 418.2 418.1 411.5 402.4 383.4 362.3 329.2 296.1 19 | 215.2 257.6 289.9 314.4 333.8 350.2 364.6 377.6 389.3 399.5 407.9 413.9 416.2 416.1 409.6 400.5 381.6 360.6 327.7 294.6 250.8 20 | 224.4 267.8 300.2 324.4 343.2 358.8 372.3 384.2 394.6 403.4 410.2 414.3 414.2 407.7 398.6 379.8 358.9 326.1 293.2 249.6 196.1 ---------------------------------------------------------------------------------------------------------------------------------- 最適方策 ------------------------------------------------------------------- | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 ------------------------------------------------------------------- 00 | 0 0 -1 -1 -2 -2 -3 -3 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 01 | 1 0 0 -1 -1 -2 -2 -2 -3 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 02 | 1 1 0 0 -1 -1 -1 -2 -2 -3 -3 -4 -4 -4 -5 -5 -5 -5 -5 -5 -5 03 | 2 1 1 0 0 0 -1 -1 -2 -2 -3 -3 -3 -4 -4 -4 -4 -5 -5 -5 -5 04 | 2 2 1 1 0 0 0 -1 -1 -2 -2 -2 -3 -3 -3 -3 -4 -4 -4 -4 -5 05 | 3 2 2 1 1 0 0 0 -1 -1 -1 -2 -2 -2 -2 -3 -3 -3 -3 -4 -4 06 | 3 3 2 2 1 1 1 0 0 0 -1 -1 -1 -1 -2 -2 -2 -2 -3 -3 -4 07 | 4 3 3 2 2 2 1 1 0 0 0 0 0 -1 -1 -1 -1 -2 -2 -3 -4 08 | 4 4 3 3 3 2 2 1 0 0 0 0 0 0 0 0 -1 -1 -2 -3 -4 09 | 5 4 4 4 3 3 2 1 1 0 0 0 0 0 0 0 0 -1 -2 -3 -3 10 | 5 5 5 4 4 3 2 2 1 1 0 0 0 0 0 0 0 -1 -2 -2 -3 11 | 5 5 5 5 4 3 3 2 2 1 0 0 0 0 0 0 0 -1 -1 -2 -3 12 | 5 5 5 5 4 4 3 3 2 1 1 0 0 0 0 0 0 0 -1 -2 -3 13 | 5 5 5 5 5 4 4 3 2 2 1 1 0 0 0 0 0 0 -1 -2 -2 14 | 5 5 5 5 5 5 4 3 3 2 2 1 1 1 1 0 0 0 -1 -1 -2 15 | 5 5 5 5 5 5 4 4 3 3 2 2 2 2 1 1 0 0 0 -1 -1 16 | 5 5 5 5 5 5 5 4 4 3 3 3 3 2 2 1 1 0 0 0 -1 17 | 5 5 5 5 5 5 5 5 4 4 4 4 3 3 2 2 1 1 0 0 0 18 | 5 5 5 5 5 5 5 5 5 5 5 4 4 3 3 2 2 1 1 0 0 19 | 5 5 5 5 5 5 5 5 5 5 5 5 4 4 3 3 2 2 1 1 0 20 | 5 5 5 5 5 5 5 5 5 5 5 5 5 4 4 3 3 2 2 1 0 -------------------------------------------------------------------
最終的に方策反復と同様の結果が得られていることが分かると思う。
(なお、やっぱりめっちゃ時間かかる・・・)
今日はここまで!
- 作者: Richard S.Sutton,Andrew G.Barto,三上貞芳,皆川雅章
- 出版社/メーカー: 森北出版
- 発売日: 2000/12/01
- メディア: 単行本(ソフトカバー)
- 購入: 5人 クリック: 76回
- この商品を含むブログ (29件) を見る