- 1、本文档共42页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
最短路最短路用高速化工夫最短路上地点地点他地点短道地何学的交差点点道交差点枝案内使最短路入力各枝距始点点出力枝集合目的数枝集合距和制条件枝集合最短路特面使他解道具使形画最小用流定式化距全非法形解距法枝数点数解用上良得工夫多研究最小用流解枝距用始点供点需要最小用流求始点点流最小用流最小用求解法多用使方法法始点一番近点番目近点法使性始点番目近点最短路点番目以下近法使性距番目点距距番目点距法始点一番近点番目近点法接点格点距格内添字要素更法算量法第候枝中距最小枝行先未探索点接枝距算候集合入枝回以上候集合
最短路問題とナビゲーション 最短路問題 ダイクストラアルゴリズム ナビゲーションへの応用 高速化の工夫 ベルマンフォードアルゴリズム 最短路問題 ? ネットワーク上のある地点からある地点(あるいは他のすべての地点)への、もっとも短いパス(道、あるいはルート)を見つける問題 ? 地図などの幾何学的なデータも、交差点を頂点、道を交差点を結ぶ枝とみなすことで、ネットワークに変換できる ? ナビゲーションや、乗り換え案内ソフトで使う 最短路問題 入力: ネットワーク、各枝の距離、始点、終点 出力: 枝集合 目的関数: 枝集合の距離和 制約条件: 枝集合はパスになっていること 最短路問題の特徴 ? 現実のいろいろな場面で使われている ? 他の問題を解くための道具としても使われる ? 線形計画?最小費用流問題として定式化できる (サブクラスになっている) ? 距離が全て非負ならば、ダイクストラ法で線形時間ちょっとで解ける ? 負の距離を許しても、ベルマンフォード法で枝数×頂点数の時間で解ける ? 実用上良いパフォーマンスを得るための工夫が多く研究されている 最小費用流問題で解く ? 枝の距離を費用だとみなす ? 始点の供給を1、終点の需要を1とする ? 最小費用流を求める (始点から終点へ1流すときの最小費用流 (最小費用のパス)を求めることになる) ? 問題を変換すると解法に 無駄が多くなるので、 実用では使われない方法 ダイクストラ法 ? 始点に一番近い頂点、2番目に近い頂点、と順々に見つけていく ダイクストラ法で使う性質 (1) ? 始点から、k番目に近い頂点への最短路 ? 緑の頂点は、k-1番目以下に近い ダイクストラ法で使う性質 (2) ? 距離 k-1 番目までの頂点?距離がわかっている ? 距離 k 番目の頂点?距離は、どうなるでしょう? ダイクストラ法 ? 始点に一番近い頂点、2番目に近い頂点、と順々に見つけていく ダイクストラ法コード ? e[v][0],…,e[v][ez[v]-1] に v に隣接する頂点を格納 ? c[v][0],…,c[v][ez[v]-1] にその頂点までの距離を格納 ? HEAP_chg (v,p) でヒープ内の添え字 v の要素の値 h[v] を p に変更 Dijkstra (int **e, int *ez, int **c, int s, int t){ int i, j, d; for ( i=0 ; in ; i++ ) HEAP_chg( i, HUGE); HEAP_chg( s,0 ); while (1){ v = HEAP_ext (); if ( v = = t ){ printf (“shortest distance is %d\n”, ); exit(0); } HEAP_chg ( v, HUGE-1) if ( h[v] = HUGE-1 ){ printf (“not reachable\n”); exit(1); } for ( i=0 ; iez[v] ; i++ ){ if ( h[e[v][i]] h[v]+c[v][i] h[e[v][i]] != HUGE-1) HEAP_chg (e[v][i], h[v]+c[v][i] ); } } } ダイクストラ法の計算量 ? ダイクストラ法の第 k ステップでは、 ①「候補枝の中から距離最小のものを見つけ」 ②「その枝の行き先が未探索なら」 ③「その頂点に接続する枝すべての距離を計算し」 ④「それらを候補集合に入れる」 ということをする。 ? 1つの枝が2回以上候補集合にはいることはない。 よって、③?④の実行回数は枝数以下 ? 枝を取り出す回数は、枝を入れた回数以下なので、①の回数も枝数以下 ? ヒープは一手 O(枝数) 時間なので、計算量は O(枝数 log 枝数) ナビゲーションを作る ? 現在地点から目的地への、最短ルートが知りたい ? 地図をネットワークにして、現在地から目的地までの最短路を求めればよい 問題点 ? 離れたところへの最短路を求めると、やたらとたくさんのデータを読む ? ダイクストラ法は目的地より近い所は、全て探索する 始点終点両方から探索 ? 始点と終点、両方から同時にダイクストラ法を動かす ? 出会った所で最短路が得られる 少々改良 ? 読み込む範囲が多少、少なくなる 正確に書くと ? 始点終点両方から印をつけていき、両方の印がついた頂点ができたところで、いったん終了 ? その
您可能关注的文档
- 教育局各学制防灾教育课程安排具体做法及预期目标 - tpedutw.doc
- 数学家——范峻昊小组.ppt
- 数据融合 - 智能与网络化系统研究所.ppt
- 新 泉 第35期 出版:2011年8月 新会古井新泉诗社编 【文化交流免费 .doc
- 新版地图开发方法.doc
- 新编地图学教程 - 教程.ppt
- 施工阶段 - 上海中建航建筑工业发展有限公司.ppt
- 无线传感器网络中一种高精度定位算法 - 智能与网络化系统研究所.doc
- 无线传感器网络定位算法的研究及实现 - 武汉大学测绘学院实验中心 .doc
- 日本城市土地集约利用的几点启示 - 上海城市管理.doc
- 剧本杀行业报告:内容创作规范与剧本市场拓展策略.docx
- 剧本杀行业区域市场区域文化特色与市场潜力分析报告.docx
- 剧本杀行业区域市场拓展实战案例研究.docx
- 剧本杀行业区域市场拓展路径与模式探索报告.docx
- 剧本杀行业区域市场竞争态势与品牌差异化策略研究报告.docx
- 剧本杀行业2025年西北区域市场市场细分领域竞争态势与品牌竞争策略分析研究报告.docx
- 剧本杀行业2025年西北市场拓展前景预测报告.docx
- 剧本杀行业2025年长沙市场发展潜力分析报告.docx
- 剧本杀行业2025年长三角市场竞争策略与布局分析.docx
- 医疗行业数据合规:2025年数据安全法实施后的合规监管挑战与应对.docx
文档评论(0)