製品
製品の一覧
Mathematica
Mathematica
学生エディション
Mathematica
ホームエディション
Wolfram
CDF Player
(無料ダウンロード)
CDF(計算可能ドキュメント形式)
web
Mathematica
grid
Mathematica
Wolfram
Workbench
Wolfram
SystemModeler
Wolfram
Finance Platform
Mathematica
アドオン
Wolfram|Alpha関連製品
ソリューション
ソリューションの一覧
工学
航空宇宙工学と防衛
化学工学
制御系
電気工学
画像処理
生産工学
材料科学
機械工学
オペレーションズリサーチ
光学
石油工学
バイオテクノロジーと医学
バイオインフォマティクス
医用画像処理
金融,統計,ビジネスの分析
保険数理
データの解析とマイニング
計量経済学
経済学
金融工学と数学
財務リスク管理
統計
ソフトウェア工学とコンテンツ配信
オーサリングと出版
インターフェース開発
ソフトウェア工学
Web開発
科学
天文学
バイオサイエンス
化学
環境科学
地球科学
社会・行動科学
デザイン,芸術,娯楽
ゲームデザイン・特殊効果・ジェネレーティブアート
教育
高等教育
短大・専門学校
初等・中等教育
学生
テクノロジー
CDF(計算可能ドキュメント形式)
高性能並列計算(HPC)
参照:テクノロジーガイド
ご購入
オンラインストア
他の購入方法
Volumeライセンスとサイトライセンス
販売部へのご連絡
ソフトウェア
サービス
アップグレード
トレーニング
書籍
Wolframグッズ
サポート
テクニカルサポートページ
Mathematica
ドキュメント
知識ベース
ラーニングセンター
テクニカルサービス
コミュニティ & フォーラム
トレーニング
サイトライセンスの確認
Wolframユーザポータル
会社概要
会社概要
ニュースとイベント
Wolframブログ
パートナーシップ
採用情報
Mathematica
の歴史
Stephen Wolframのホームページ
連絡先
Wolfram Webサイト
サイトの一覧
Wolfram|Alpha
デモンストレーションプロジェクト
MathWorld
Integrator
Wolfram Functions Site
Mathematica Journal
Wolfram Media
Wolfram
Tones
Wolfram Science
Stephen Wolfram
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE
DOCUMENTATION CENTER
FOR THE LATEST INFORMATION.
DOCUMENTATION CENTER SEARCH
New to
Mathematica
?
Find your learning path
»
Mathematica
>
数学とアルゴリズム
>
最適化
>
FindShortestTour
>
Mathematica
>
数学とアルゴリズム
>
グラフとネットワーク
>
グラフプログラミング
>
最適化
>
FindShortestTour
>
Mathematica
>
可視化とグラフィックス
>
グラフとネットワーク
>
グラフプログラミング
>
最適化
>
FindShortestTour
>
MATHEMATICA 組込みシンボル
FindMinimum
NMinimize
Nearest
FindClusters
FindCurvePath
関連項目 »
|
計算幾何学
離散数学
最適化
バージョン6.0の新機能:数学とアルゴリズム
その他 »
FindShortestTour
FindShortestTour
すべての
を1回ずつ訪れる場合の総距離を最小化するような
の順序を求める.
詳細
FindShortestTour
は
の形式のリストを返す.
は求まったコースの長さ,
は順番である.
可能なオプション:
DistanceFunction
オブジェクトのペアに適用する距離関数
Method
使用するメソッド
は数または数のリストでよい.この場合,使用されるデフォルトの距離関数は
EuclideanDistance
である.
が文字列の場合,使用されるデフォルトの距離関数は
EditDistance
である.
点の数が少ない場合,一般に
FindShortestTour
は最短コースを求める.点の数が多い場合でも,少なくとも最短に近い長さのコースが通常求められる.
Method
オプションの使用可能な設定値には
,
,
,
,
,
,
,
,
,
,
がある.
ユークリッド空間における点の数が少ない場合は必ず最短コースを与える
法が使われる.
例題
すべて閉じる
例
(2)
平面上の6点を通る最短距離と点の順序を求める:
点のリストを指定する:
求まったコースに沿って点を並べる:
コースをプロットする:
平面上の6点を通る最短距離と点の順序を求める:
In[1]:=
Out[1]=
点のリストを指定する:
In[1]:=
In[2]:=
Out[2]=
求まったコースに沿って点を並べる:
In[3]:=
Out[3]=
コースをプロットする:
In[4]:=
Out[4]=
スコープ
(2)
3D空間の点を通る最短コースを求める:
文字列のリストを通る最短コースを求める:
一般化と拡張
(1)
(対称の)隣接行列に基づいて
DistanceFunction
を使う:
オプション
(4)
以下で,
格子上で座標が互いに素であるすべての位置を求める:
2Dリアル入力のデフォルトである
メソッドを使って最短コースを求める:
2Dあるいはリアル以外の入力のデフォルトである
メソッドを使って最短コースを求める:
アルゴリズムは改善のために辺の終点の交換を行う:
(凸法,最安挿入,角度選択)は
の点を意図する:
アルゴリズムは,ある点からまだ訪れていない中で最も近い近傍に移動する:
は既知の上限を加えた
アルゴリズムの変形である:
はコースを最短にするためにシミュレーションをしたアニーリングを使う:
デフォルトで,
EditDistance
は文字列に使われる:
次は,「川」を渡る際にペナルティが設けられた,100個の点を通る最短コースを求める:
次はコースのプロットで「川」が赤で示されている:
次は6個の点の間の疎な距離行列を定義し,最短コースを求める:
次は最短コース(赤)だけでなく各辺の距離もプロットしている:
アプリケーション
(6)
平面上の50の点をランダムに訪れる最短コースを求める:
3Dでランダムな50の点を訪れる最短コースを求める:
座標が互いに素である2D上の点を通る最短コースを求める:
座標が互いに素である3D中の点を通る最短コースを求める:
ヨーロッパ諸国の名前を通る「最短コース」を求める:
巡回セールスマンのヨーロッパツアーのコースを求める:
おもしろい例題
(1)
世界中のすべての国を回るツアーを計画する:
ツアーを可視化する:
関連項目
FindMinimum
NMinimize
Nearest
FindClusters
FindCurvePath
その他
計算幾何学
離散数学
最適化
バージョン6.0の新機能:数学とアルゴリズム
バージョン 6 の新機能