Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
流山市の地理データを
利用したTSPからの導入
1
自己紹介
Introduction
2
目的
Purpose
3
進化計算の基礎の学習
遺伝的アルゴリズムの学習
TSPからのスケジューリングへの応用の基礎作り
4
最終的な目的
5
進化計算を用いたスケジューリング
提案手法に関する研究
6
進化計算とエージェントを使用し,
最適なスケジューリングを
行なう支援をするシステムの作成
概要
7
なぜ
進化計算とエージェントを
組み合わせるのか?
8
エージェントとは
前提
内部モデルを持っている(感情・性格・経歴)
内部モデル
感情 性格 経歴
9
進化計算とエージェントを
組み合わせて
スケジューリングを行うと…
10
感情
エージェントの表情を映すことにより
ユーザの情に訴えかけることができる
11
感情
エージェントの表情を映すことにより
ユーザの情に訴えかけることができる
性格
特定のユーザには「優しく」はたまた
「厳しい」性格で促すことが可能になる
12
感情
エージェントの表情を映すことにより
ユーザの情に訴えかけることができる
性格
特定のユーザには「優しく」はたまた
「厳しい」性格で促すことが可能になる
経歴
経験を積むことにより,エージェント
自身に自信をもたせることができる
13
つまり!
14
エージェントを組み込んで
スケジューリングを行なうことで
「早めのスケジューリングが可能になる」,
「誰もが納得できるスケジューリングが可能になる」
という利点が実現可能だと考える
GAとは
What GA
15
GA(Genetic Algorithm)
遺伝的アルゴリズム
データを遺伝子で表現した個体を複数用意し
適応度の高い個体を優先的に選択して
交叉・突然変異等の操作を繰り返しながら
解を探索するアルゴリズム
16
GAの流れ
Flowchart of GA
17
18
i:世代番号
i
世
代
評価
Evaluation
19
20
個体の適応度の評価を行なう
ここで作られた適応度(fitness)は
選択の際に使用される
選択
Selection
21
22
① ルーレット選択
② 期待値戦略
③ ランク戦略
④ エリート保存戦略
⑤ トーナメント選択戦略
23
ルーレット選択
24
ルーレット選択
25
ルーレット選択
26
ルーレット選択
27
ルーレット選択
範囲が広いものほど適応度が高い
28
適応度(fitness)が高い個体ほど
次世代に遺伝しやすい!
交叉
Crossover
29
30
① 一点交叉(単純交叉)
2つの遺伝子を選び出し交叉点を1つ決めその前と後で,
どちらの親の遺伝子型を受け継ぐかを変える方法
1 11 0 0A
0 01 1 0B
交叉点
31
① 一点交叉(単純交叉)
2つの遺伝子を選び出し交叉点を1つ決めその前と後で,
どちらの親の遺伝子型を受け継ぐかを変える方法
1 1
1 0 0A 0 0
1 1 0B
32
② 複数点交叉
2つの遺伝子を選び,交叉位置が複数ある方法
③ 一様交叉
交叉時にマスクをかけてそれによってどちらの親に
受け継ぐかを決定する方法
④ その他の交叉
部分一致交叉・順序交叉・周期交叉などがある
今回は…
一点交叉を使用
33
突然変異
Mutation
34
35
遺伝子を一定の確率で変化させる操作
突然変異率を大きくする
→ 優秀な遺伝子を破壊してしまう可能性が出てくる!
1 0 0 0 0A 1 1 0 0 0
TSPとは
What TSP
36
TSP(Traveling Salesman Problem)
巡回セールスマン問題
都市間の巡回コストが平面上のユークリッド距離(*1)によって与えられる
巡回セールスマン問題を考える
解候補となる巡回路ツアーと呼び,ツアーに即した巡回コスト...
A
B
C
D
E
F
初期世代個体
最低限のコストで最短ルートを
セールスマンは歩きたい!!
でもこれはスマートじゃない!
最低限のコストで最短ルートを
セールスマンは歩きたい!!
でもこれはスマートじゃない!
最低限のコストで最短ルートを
セールスマンは歩きたい!!
でもこれはスマートじゃない!
?
最低限のコストで最短ルートを
セールスマンは歩きたい!!
でもこれはスマートじゃない!
?
A
B
C
D
E
F
最終個体
流山TSP
Nagareyama-TSP
44
流山市のオープンデータはこちら!
http://www.city.nagareyama.chiba.jp/db
ps_data/_material_/localhost/aed2.csv
45
もろもろプログラミング…
46
http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv
最近流行りの”Python”という言語
パイソン
47
http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv
あるミスをすることでその後の進捗を脅かす!
結果
Result
48
http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv
49
http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv
50
http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv
51
http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv
世代を追うごとに
理想個体へ
進化していく
適応度(fitness)
ここで進化が止まった
= 最適解ではないのか!?
52
http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv
距離
53
1/fitness(逆数)をとることで
距離が出る!
ここの値が最短距離ではないのか!?
あくまでも計算結果なので誤差はあります
http://www.city.nagareyama.chiba.jp/dbps_data/_mate...
まとめ
Summary
54
進化計算のGAの基本的な流れを紹介した
55
進化計算のGAの基本的な流れを紹介した
TSPをGAでの解法について挑戦し,
進化の過程を表現することができた
56
課題
Challenge
57
GAの基礎からスケジューリングへの適用
58
GAの基礎からスケジューリングへの適用
DEなどの他の進化計算の勉強
59
GAの基礎からスケジューリングへの適用
DEなどの他の進化計算の勉強
GitHubの緑タイルを毎日塗る
60
GAの基礎からスケジューリングへの適用
DEなどの他の進化計算の勉強
GitHubの緑タイルを毎日塗る
61
62
@iori_n掲載許可済
終わり
fin
63
Upcoming SlideShare
Loading in …5
×

【ブログ用】流山市の地理データを利用したTSPからの導入

1,263 views

Published on

SlideShare用に修正をしたスライド
オリジナルは以下
http://www.slideshare.net/yuyaoka50/nagareyama-tsp

Published in: Education
  • Be the first to comment

【ブログ用】流山市の地理データを利用したTSPからの導入

  1. 1. 流山市の地理データを 利用したTSPからの導入 1
  2. 2. 自己紹介 Introduction 2
  3. 3. 目的 Purpose 3
  4. 4. 進化計算の基礎の学習 遺伝的アルゴリズムの学習 TSPからのスケジューリングへの応用の基礎作り 4
  5. 5. 最終的な目的 5 進化計算を用いたスケジューリング 提案手法に関する研究
  6. 6. 6 進化計算とエージェントを使用し, 最適なスケジューリングを 行なう支援をするシステムの作成 概要
  7. 7. 7 なぜ 進化計算とエージェントを 組み合わせるのか?
  8. 8. 8 エージェントとは 前提 内部モデルを持っている(感情・性格・経歴) 内部モデル 感情 性格 経歴
  9. 9. 9 進化計算とエージェントを 組み合わせて スケジューリングを行うと…
  10. 10. 10 感情 エージェントの表情を映すことにより ユーザの情に訴えかけることができる
  11. 11. 11 感情 エージェントの表情を映すことにより ユーザの情に訴えかけることができる 性格 特定のユーザには「優しく」はたまた 「厳しい」性格で促すことが可能になる
  12. 12. 12 感情 エージェントの表情を映すことにより ユーザの情に訴えかけることができる 性格 特定のユーザには「優しく」はたまた 「厳しい」性格で促すことが可能になる 経歴 経験を積むことにより,エージェント 自身に自信をもたせることができる
  13. 13. 13 つまり!
  14. 14. 14 エージェントを組み込んで スケジューリングを行なうことで 「早めのスケジューリングが可能になる」, 「誰もが納得できるスケジューリングが可能になる」 という利点が実現可能だと考える
  15. 15. GAとは What GA 15
  16. 16. GA(Genetic Algorithm) 遺伝的アルゴリズム データを遺伝子で表現した個体を複数用意し 適応度の高い個体を優先的に選択して 交叉・突然変異等の操作を繰り返しながら 解を探索するアルゴリズム 16
  17. 17. GAの流れ Flowchart of GA 17
  18. 18. 18 i:世代番号 i 世 代
  19. 19. 評価 Evaluation 19
  20. 20. 20 個体の適応度の評価を行なう ここで作られた適応度(fitness)は 選択の際に使用される
  21. 21. 選択 Selection 21
  22. 22. 22 ① ルーレット選択 ② 期待値戦略 ③ ランク戦略 ④ エリート保存戦略 ⑤ トーナメント選択戦略
  23. 23. 23 ルーレット選択
  24. 24. 24 ルーレット選択
  25. 25. 25 ルーレット選択
  26. 26. 26 ルーレット選択
  27. 27. 27 ルーレット選択 範囲が広いものほど適応度が高い
  28. 28. 28 適応度(fitness)が高い個体ほど 次世代に遺伝しやすい!
  29. 29. 交叉 Crossover 29
  30. 30. 30 ① 一点交叉(単純交叉) 2つの遺伝子を選び出し交叉点を1つ決めその前と後で, どちらの親の遺伝子型を受け継ぐかを変える方法 1 11 0 0A 0 01 1 0B 交叉点
  31. 31. 31 ① 一点交叉(単純交叉) 2つの遺伝子を選び出し交叉点を1つ決めその前と後で, どちらの親の遺伝子型を受け継ぐかを変える方法 1 1 1 0 0A 0 0 1 1 0B
  32. 32. 32 ② 複数点交叉 2つの遺伝子を選び,交叉位置が複数ある方法 ③ 一様交叉 交叉時にマスクをかけてそれによってどちらの親に 受け継ぐかを決定する方法 ④ その他の交叉 部分一致交叉・順序交叉・周期交叉などがある
  33. 33. 今回は… 一点交叉を使用 33
  34. 34. 突然変異 Mutation 34
  35. 35. 35 遺伝子を一定の確率で変化させる操作 突然変異率を大きくする → 優秀な遺伝子を破壊してしまう可能性が出てくる! 1 0 0 0 0A 1 1 0 0 0
  36. 36. TSPとは What TSP 36
  37. 37. TSP(Traveling Salesman Problem) 巡回セールスマン問題 都市間の巡回コストが平面上のユークリッド距離(*1)によって与えられる 巡回セールスマン問題を考える 解候補となる巡回路ツアーと呼び,ツアーに即した巡回コストの 総和である目的関数として設定する (*1) 人が定規で測るような二点間の「通常の」距離のこと 37 遺伝的アルゴリズム1,北野宏明編,産業図書,p.3引用
  38. 38. A B C D E F 初期世代個体
  39. 39. 最低限のコストで最短ルートを セールスマンは歩きたい!! でもこれはスマートじゃない!
  40. 40. 最低限のコストで最短ルートを セールスマンは歩きたい!! でもこれはスマートじゃない!
  41. 41. 最低限のコストで最短ルートを セールスマンは歩きたい!! でもこれはスマートじゃない! ?
  42. 42. 最低限のコストで最短ルートを セールスマンは歩きたい!! でもこれはスマートじゃない! ?
  43. 43. A B C D E F 最終個体
  44. 44. 流山TSP Nagareyama-TSP 44
  45. 45. 流山市のオープンデータはこちら! http://www.city.nagareyama.chiba.jp/db ps_data/_material_/localhost/aed2.csv 45
  46. 46. もろもろプログラミング… 46 http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv 最近流行りの”Python”という言語 パイソン
  47. 47. 47 http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv あるミスをすることでその後の進捗を脅かす!
  48. 48. 結果 Result 48 http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv
  49. 49. 49 http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv
  50. 50. 50 http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv
  51. 51. 51 http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv 世代を追うごとに 理想個体へ 進化していく
  52. 52. 適応度(fitness) ここで進化が止まった = 最適解ではないのか!? 52 http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv
  53. 53. 距離 53 1/fitness(逆数)をとることで 距離が出る! ここの値が最短距離ではないのか!? あくまでも計算結果なので誤差はあります http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv kmと考えるとわかりやすいかも
  54. 54. まとめ Summary 54
  55. 55. 進化計算のGAの基本的な流れを紹介した 55
  56. 56. 進化計算のGAの基本的な流れを紹介した TSPをGAでの解法について挑戦し, 進化の過程を表現することができた 56
  57. 57. 課題 Challenge 57
  58. 58. GAの基礎からスケジューリングへの適用 58
  59. 59. GAの基礎からスケジューリングへの適用 DEなどの他の進化計算の勉強 59
  60. 60. GAの基礎からスケジューリングへの適用 DEなどの他の進化計算の勉強 GitHubの緑タイルを毎日塗る 60
  61. 61. GAの基礎からスケジューリングへの適用 DEなどの他の進化計算の勉強 GitHubの緑タイルを毎日塗る 61
  62. 62. 62 @iori_n掲載許可済
  63. 63. 終わり fin 63

×