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

63
流流流流流流流流流流 流流流流 TSP 流流流流流

Upload: yuya-oka

Post on 10-Feb-2017

909 views

Category:

Education


3 download

TRANSCRIPT

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

流山市の地理データを利用した TSP からの導入

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

自己紹介Introduction

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

目的Purpose

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

進化計算の基礎の学習遺伝的アルゴリズムの学習TSP からのスケジューリングへの応用の基礎作り

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

最終的な目的進化計算を用いたスケジューリング提案手法に関する研究

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

進化計算とエージェントを使用し,最適なスケジューリングを行なう支援をするシステムの作成

概要

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

なぜ進化計算とエージェントを組み合わせるのか?

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

エージェントとは前提内部モデルを持っている ( 感情・性格・経歴 )

内部モデル

感情 性格 経歴

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

進化計算とエージェントを組み合わせてスケジューリングを行うと…

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

感情 エージェントの表情を映すことによりユーザの情に訴えかけることができる

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

感情 エージェントの表情を映すことによりユーザの情に訴えかけることができる

性格 特定のユーザには「優しく」はたまた「厳しい」性格で促すことが可能になる

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

感情 エージェントの表情を映すことによりユーザの情に訴えかけることができる

性格 特定のユーザには「優しく」はたまた「厳しい」性格で促すことが可能になる

経歴 経験を積むことにより,エージェント自身に自信をもたせることができる

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

つまり!

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

エージェントを組み込んでスケジューリングを行なうことで「早めのスケジューリングが可能になる」,

「誰もが納得できるスケジューリングが可能になる」という利点が実現可能だと考える

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

GAとはWhat GA

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

GA(Genetic Algorithm)遺伝的アルゴリズム

データを遺伝子で表現した個体を複数用意し適応度の高い個体を優先的に選択して

交叉・突然変異等の操作を繰り返しながら解を探索するアルゴリズム

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

GAの流れFlowchart of GA

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

i :世代番号

i 世代{

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

評価Evaluation

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

個体の適応度の評価を行なうここで作られた適応度 (fitness) は

選択の際に使用される

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

選択Selection

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

① ルーレット選択② 期待値戦略③ ランク戦略④ エリート保存戦略⑤ トーナメント選択戦略

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

ルーレット選択

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

ルーレット選択

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

ルーレット選択

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

ルーレット選択

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

ルーレット選択

範囲が広いものほど適応度が高い

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

適応度 (fitness) が高い個体ほど次世代に遺伝しやすい!

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

交叉Crossover

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

① 一点交叉(単純交叉)2 つの遺伝子を選び出し交叉点を 1つ決めその前と後で,どちらの親の遺伝子型を受け継ぐかを変える方法

1 11 0 0A

0 01 1 0B

交叉点

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

① 一点交叉(単純交叉)2 つの遺伝子を選び出し交叉点を 1つ決めその前と後で,どちらの親の遺伝子型を受け継ぐかを変える方法

1 1

1 0 0A 0 0

1 1 0B

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

② 複数点交叉2 つの遺伝子を選び,交叉位置が複数ある方法③ 一様交叉交叉時にマスクをかけてそれによってどちらの親に受け継ぐかを決定する方法④ その他の交叉部分一致交叉・順序交叉・周期交叉などがある

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

今回は…一点交叉を使用

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

突然変異Mutation

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

遺伝子を一定の確率で変化させる操作

突然変異率を大きくする→ 優秀な遺伝子を破壊してしまう可能性が出てくる!

1 0 0 0 0A 1 1 0 0 0

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

TSPとはWhat TSP

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

TSP(Traveling Salesman Problem)巡回セールスマン問題

都市間の巡回コストが平面上のユークリッド距離 (*1) によって与えられる巡回セールスマン問題を考える

解候補となる巡回路ツアーと呼び,ツアーに即した巡回コストの総和である目的関数として設定する

(*1) 人が定規で測るような二点間の「通常の」距離のこと遺伝的アルゴリズム 1, 北野宏明編 ,産業図書 ,p.3引用

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

A

BC

D

E

F

初期世代個体

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

最低限のコストで最短ルートをセールスマンは歩きたい!!

でもこれはスマートじゃない!

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

最低限のコストで最短ルートをセールスマンは歩きたい!!

でもこれはスマートじゃない!

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

最低限のコストで最短ルートをセールスマンは歩きたい!!

でもこれはスマートじゃない!?

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

最低限のコストで最短ルートをセールスマンは歩きたい!!

でもこれはスマートじゃない!?

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

A

BC

D

E

F

最終個体

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

流山 TSPNagareyama-TSP

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

流山市のオープンデータはこちら!http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv

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

もろもろプログラミング…

http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv

最近流行りの” Python” という言語パイソン

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

http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv

あるミスをすることでその後の進捗を脅かす!

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

結果Result

http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv

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

http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv

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

http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv

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

http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv

世代を追うごとに理想個体へ進化していく

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

適応度 (fitness)

ここで進化が止まった= 最適解ではないのか!?

http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv

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

距離

1/fitness(逆数 ) をとることで距離が出る!ここの値が最短距離ではないのか!?

あくまでも計算結果なので誤差はあります

http://www.city.nagareyama.chiba.jp/dbps_data/_material_/localhost/aed2.csv

km と考えるとわかりやすいかも

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

まとめSummary

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

進化計算の GA の基本的な流れを紹介した  

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

進化計算の GA の基本的な流れを紹介したTSP を GA での解法について挑戦し,

進化の過程を表現することができた

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

課題Challenge

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

GA の基礎からスケジューリングへの適用  

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

GA の基礎からスケジューリングへの適用DE などの他の進化計算の勉強

 

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

GA の基礎からスケジューリングへの適用DE などの他の進化計算の勉強GitHub の緑タイルを毎日塗る

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

GA の基礎からスケジューリングへの適用DE などの他の進化計算の勉強GitHub の緑タイルを毎日塗る

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

@iori_n掲載許可済

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

終わりfin