作業フローを簡素化:miniwebtoolを検索。
追加
関連ツール
ダイクストラ最短経路電卓ネットワークフロー電卓最大フロー平面グラフ判定有効数字電卓巡回セールスマン問題ソルバー TSP
ホームページ > 数学 > 高度な数学操作 > ハミルトン路チェッカー
 

ハミルトン路チェッカー

グラフにハミルトン路またはハミルトン閉路が含まれているかどうかを確認します。Warnsdorffの枝刈りを用いたバックトラッキングを実行し、連結性と次数の必要条件を検証し、DiracとOreの十分条件をテストして、アニメーションSVGビジュアライゼーションで証拠となるパスを表示します。

ハミルトン路チェッカー
A-B, A->B, A B, A,B、または行列の行(例: 0 1 1 0)を受け付けます。ラベルには英数字またはアンダースコアを使用してください。
カンマまたはスペース区切りのラベル(1行に1つ)。省略した場合は自動的に A, B, C… となります。

Embed ハミルトン路チェッカー Widget

ハミルトン路チェッカー

ハミルトン路チェッカーは、グラフがハミルトン路(すべての頂点をちょうど1回ずつ訪れるシーケンス)またはハミルトン閉路(ハミルトン路に加えて、開始頂点に戻るもの)を含んでいるかどうかを判定します。このツールは、高速な構造的事前チェック(連結性、次数の前提条件、ディラックの定理、オレの定理)と、ワーンスドルフのヒューリスティックによって調整されたバックトラッキング探索を組み合わせ、証拠パスをステップバイステップのアニメーションで可視化します。

ハミルトン路とは?

頂点数 n のグラフ G = (V, E) において、ハミルトン路とは、すべての頂点を含む順序付きシーケンス v1, v2, …, vn であり、連続する各ペア (vi, vi+1)G のエッジであり、すべての頂点がちょうど1回ずつ現れるものを指します。さらに (vn, v1) もエッジである場合、そのシーケンスはハミルトン閉路となります。

ハミルトン路: v1 — v2 — v3 — … — vn (すべて異なり、隣接ペアはエッジ) ハミルトン閉路: v1 — v2 — v3 — … — vn — v1 (始点に戻る)

この問題は、1857年に正十二面体グラフのすべての頂点をちょうど1回ずつ訪れる閉路を見つけるパズル「イコシアン・ゲーム」を考案したウィリアム・ローワン・ハミルトンにちなんで名付けられました。

難しさの理由: NP完全性

ハミルトン路判定問題およびハミルトン閉路判定問題は、どちらもNP完全です (Karp, 1972)。P = NP でない限り、あらゆるインスタンスを多項式時間で解くアルゴリズムは存在しません。最悪の場合、バックトラッキングは閉路に対して最大 (n−1)! サイズの探索木を探索します。このため、この電卓は入力を20頂点までに制限しています。頂点数 n がわずかに増加するだけで、実行時間は爆発的に増加するためです。

実際には、ワーンスドルフのヒューリスティック(もともとは1823年にハインリヒ・ワーンスドルフが騎士の巡回問題のために考案したもの)を用いることで、構造化されたグラフ上での探索が劇的に高速化されます。各ステップで、アルゴリズムは未訪問の隣接頂点のうち、残りの未訪問隣接頂点数が最も少ない頂点へパスを延長します。この貪欲法的な規則により、探索が行き止まりに陥るのを防ぎ、素直なグラフではバックトラッキングなしでハミルトン巡回路を発見できることがよくあります。

必要条件 — 高速な棄却

コストの高い探索を実行する前に、電卓はハミルトン路を含む可能性がないグラフを棄却します:

これらの規則により、絶望的な入力を線形時間で棄却し、無駄なバックトラッキングの労力を避けることができます。

十分条件 — 古典的定理

いくつかの古典的な定理は、単純無向グラフにハミルトン閉路が存在することを保証する十分(ただし必要ではない)条件を与えます。これらが適用される場合、電卓は探索を実行せずに(証拠となる閉路は提示しますが)結果を「保証あり」とマークします。

ディラックの定理 (1952年)

Gn ≥ 3 の単純無向グラフであり、すべての頂点の次数が n / 2 以上であれば、G はハミルトン閉路を持ちます。

δ(G) ≥ n / 2 ⟹ G はハミルトン的

オレの定理 (1960年)

隣接していないすべての頂点ペア uv について deg(u) + deg(v) ≥ n が成り立つなら、G はハミルトン閉路を持ちます。オレの条件はディラックの条件よりも厳密に弱いため、オレの定理が成り立つときはディラックの定理も成り立ちます。

∀ 非隣接 u, v: deg(u) + deg(v) ≥ n ⟹ G はハミルトン的

ディラックまたはオレの条件を満たさないからといって、グラフにハミルトン閉路がないわけではありません。どちらも満たさないが閉路を持つグラフは多く存在します(例:単純な n 角形の閉路は最小次数が2であり、大きな n に対して n/2 よりもはるかに小さくなります)。

内部の探索アルゴリズム

事前チェックで決着がつかない場合、電卓はグラフの隣接表現に対してバックトラッキング探索を実行します。主な手法:

  1. ビットマスクによる訪問済みセット: 訪問した頂点をビットマスクとして保存します(最大20頂点まで、O(1) の高速な所属判定が可能)。
  2. ワーンスドルフのヒューリスティック: 各延長において、残りの未訪問次数が少ない順に隣接頂点を試行し、「分岐の少ない」順序を模倣します。
  3. ルート選択: ハミルトン閉路の場合、開始頂点は1つだけで十分です(閉路は回転不変であるため)。ハミルトンの場合、出次数が少ない(希少な位置)順に開始頂点を試行します。
  4. ステップ予算: ハードキャップにより、病的なインスタンスが無期限に実行されるのを防ぎます。予算を使い果たした場合、UI は「タイムアウト」と報告します。

ハミルトン vs オイラー

ハミルトン問題とオイラー問題は混同されやすいですが、根本的に異なります:

特性 ハミルトン路 / 閉路 オイラー路 / 閉路
通過するもの 各頂点をちょうど1回 各エッジをちょうど1回
計算複雑性 NP完全 多項式時間 (O(n+m))
判定条件 単純な特徴付けがない 連結 + すべての次数が偶数(閉路の場合)、奇数次数が2つ以下(路の場合)
名前の由来 W. R. ハミルトン (1857年) L. オイラー (1736年、ケーニヒスベルクの橋)
古典的な例 巡回セールスマン、イコシアン・ゲーム ルート点検、郵便配達員問題

サポートされている入力形式

エッジリスト

1行に1つのエッジ、またはカンマ区切り。サポートされている区切り文字:A-B, A B, A,B, A--B, A->B, A<-B。有向グラフであることを強制するには -> を使用してください。

A-B, B-C, C-D, D-A, A-C (5つのエッジを持つ無向グラフ) A->B, B->C, C->D, D->A (有向4角形閉路)

隣接行列

0/1値の正方行列。1行に1行分を入力し、スペースまたはカンマで区切ります。「行列ラベル」フィールドにオプションのラベルを入力できます。入力がない場合は、自動的に A, B, C… が使用されます。

0 1 1 0 1 0 1 1 1 1 0 1 0 1 1 0

このチェッカーの使い方

  1. 入力形式を選択 — 手書きの小さなグラフには「エッジリスト」、コードや教科書からの貼り付けには「隣接行列」を選択します。
  2. グラフを貼り付ける — テキストエリアにグラフを入力します。行列入力の場合は、任意で頂点ラベルを指定できます。
  3. チェック対象を選択 — 路のみ、閉路のみ、または一度に両方をチェックするか選択します。
  4. グラフの種類を選択 — 「自動検出」は、矢印のスタイル (->) や行列の対称性から有向性を推測します。
  5. 「ハミルトン性をチェック」をクリック — 結果ページには、判定の見出し、必要条件の事前チェック、ディラック/オレの十分条件テスト、証拠パス(存在する場合)、およびインタラクティブな可視化が表示されます。
  6. 証拠を再生 — 再生/ステップコントロールを使用して、グラフ上でエッジが1つずつ点灯する様子を確認します。

実行例 — ピーターセングラフ

有名なピーターセングラフ(10頂点、15エッジ、3-正則グラフ)は、ハミルトン路は持ちますがハミルトン閉路は持たないグラフの教科書的な例です。以下のエッジリストをフィールドに貼り付けてチェックをクリックしてください:

1-2, 2-3, 3-4, 4-5, 5-1, 6-8, 8-10, 10-7, 7-9, 9-6, 1-6, 2-7, 3-8, 4-9, 5-10

チェッカーは確認します:ハミルトン路は発見されます(例: 1 — 2 — 7 — 10 — 5 — 4 — 9 — 6 — 8 — 3)が、網羅的探索によりループを閉じる方法がないことが判明します。これは1890年代に最初に証明された結果です。

主な用途

よくある質問

ハミルトン路とは何ですか?

ハミルトン路とは、グラフのすべての頂点をちょうど1回ずつ通る道のことです。1857年に正十二面体グラフ上の問題を研究したウィリアム・ローワン・ハミルトンにちなんで名付けられました。このような路が存在するかどうかの判定は NP完全問題であり、すべてのグラフに対して多項式時間で解く既知のアルゴリズムは存在しません。

ハミルトン閉路とハミルトン路の違いは何ですか?

ハミルトン閉路は、開始頂点に戻るハミルトン路のことで、すべての頂点をちょうど1回ずつ訪れる閉じたループを形成します。すべてのハミルトン閉路にはハミルトン路が含まれますが(終点のエッジを除去すればよいため)、その逆は真ではありません。多くのグラフはハミルトン路を持ちますが、ハミルトン閉路は持ちません。

ディラックの定理とは何ですか?

ディラックの定理(1952年)は、nが3以上の頂点を持つ単純無向グラフにおいて、すべての頂点の次数が n/2 以上であれば、そのグラフはハミルトン閉路を持つというものです。これは十分条件ですが必要条件ではありません。ディラックの閾値を満たさない多くのグラフも、ハミルトン閉路を持つことがあります。

オレの定理とは何ですか?

オレの定理(1960年)は、nが3以上の頂点を持つ単純グラフにおいて、隣接していないすべての頂点のペア u と v について、その次数の和が n 以上であれば、そのグラフはハミルトン閉路を持つというものです。オレの条件はディラックの条件よりも弱いため、オレの定理が適用される場合は常にオレの定理も適用されます。

なぜ探索は20頂点に制限されているのですか?

ハミルトン路および閉路の判定問題は NP完全です。最悪の場合の実行時間は頂点数に対して指数関数的に増加します。プルーニングとワーンスドルフのヒューリスティックにより、この電卓は20頂点までの多くの小規模グラフを迅速に処理できますが、より困難なケースではタイムアウトする可能性があります。20頂点を超える場合は、Concordeや整数計画法などの専門的なソルバーを使用する必要があります。

ワーンスドルフのヒューリスティックとは何ですか?

1823年に騎士の巡回問題のために提案されたワーンスドルフの規則は、各ステップで、まだ訪問していない隣接頂点のうち、未訪問の隣接頂点が最も少ない頂点に移動すべきであるというものです。この貪欲法的な規則は、実際にはバックトラッキングの探索木を劇的に剪定し、正則グラフなどではバックトラッキングなしでハミルトン路を見つけることもよくあります。

このツールはすべてのハミルトン路を見つけますか?

いいえ — 存在する場合に、証拠となる1つの路または閉路を見つけます。ハミルトン路の総数を数えることは、それ自体が #P完全問題であり、判定問題よりもはるかに困難です。列挙が必要な場合は、専用のツールや整数計画ソルバーが適しています。

参考文献

このコンテンツ、ページ、またはツールを引用する場合は、次のようにしてください:

"ハミルトン路チェッカー"(https://MiniWebtool.com/ja/ハミルトン路チェッカー/) MiniWebtool からの引用、https://MiniWebtool.com/

by miniwebtool チーム. 更新日: 2026年4月21日

また、AI 数学ソルバー GPT を使って、自然言語による質問と回答で数学の問題を解決することもできます。

高度な数学操作:

おすすめ:

マスターナンバー電卓InstagramユーザーID検索パーセンテージ減少電卓パーセント増加電卓サッカーxg期待ゴール電卓弧長電卓パーセント誤差電卓標準偏差電卓 - 高精度ランダムカラージェネレーター合計電卓画像分割ツールシグマ記法電卓 総和動画を結合HEX電卓円錐展開図テンプレートジェネレーターMACアドレス検索番号を並べ替える中央値電卓筆算割り算電卓フィートとインチからセンチメートルへのコンバーター英単語ランダム生成ツールエンジェルナンバー電卓ランダム超能力ジェネレーター平方完成電卓ランダム絵文字ジェネレーター不可視文字除去ツール太陽位置計算機動画を逆再生war電卓逆テキスト売上総利益率電卓ランダム誕生日ジェネレーターボウリングスコア計算機ai句読点追加手数料電卓楕円円周電卓ASCIIコード表ランダムトーナメント表作成ツール加速度電卓MP3ルーパー相対標準偏差電卓FPSコンバーターCAGR電卓対数電卓モジュロ電卓ランダム名前ジェネレータービンゴカードジェネレーター動画を回転センチメートルからフィートとインチへのコンバーター変化率電卓ボルト締付トルク計算機t検定電卓相関係数計算機関数電卓階段電卓比率電卓血糖値コンバーターランダム日付ジェネレーターYouTubeチャンネル統計私のIPアドレスは何ですかHEXコンバーター圧力電卓ビデオ速度を調整fena電卓マン・ホイットニーのU検定計算機平均寿命電卓デシベル (dB) 電卓桁数電卓小数時間から普通の時間へのコンバーター🖱️ クリックカウンター外れ値電卓クロスワードパズルメーカー土星回帰電卓指数電卓-高精度平方根電卓迷路ジェネレーターオーディオ スプリッターピタゴラスの定理電卓分数電卓XMLバリデーター上下反転テキストジェネレーターBUN対クレアチニン比電卓ホームランの打席電卓熱膨張計算機SRTからTXTへの変換ツール積分電卓斜辺電卓変動係数電卓パスワード強度テスター労働時間計算ツール正多角形電卓筆算足し算・引き算計算機log-base-2電卓バイナリ電卓行番号を追加CRC32チェックサム電卓タンジェント電卓平均電卓-高精度角度変換ツールANC電卓画像回転ツール空の行を削除するトルク電卓🔊 トーンジェネレーター周波数波長変換ツールじゃんけんジェネレーター10進数からBCDへのコンバーター中国剰余定理電卓年の日電卓 - 今日は今年の何日目分散電卓 高精度VTTからtxtへのコンバーター太陽・月・上昇星座電卓 🌞🌙✨ランダム時刻ジェネレーター動画から画像抽出ツールcsvからsrtへTikTok収益計算ツールHTMLからテキストコンバータSHA256 ハッシュジェネレーター👙 ブラサイズ電卓三角関数グラフ作成ツール二乗平均平方根電卓慣性モーメント計算機水泳ペース計算機熱伝達計算機パーセント成長率電卓文字数による改行角速度計算機パーソナリティ・ナンバー電卓学習曲線電卓自然対数電卓並列抵抗電卓割り切れるテスト電卓複数分数電卓CMYKからHEXへの変換ツールコラッツ予想電卓標準誤差電卓💧 露点電卓インタラクティブ単位円ビジュアライザーベーカーズパーセント電卓車両重量配分計算機BCDからバイナリへのコンバーター配管流量電卓IPアドレスから16進数への変換パレットジェネレーターランダムクレジットカードジェネレーターワイヤーゲージ電卓絶対値不等式ソルバーピザ生地計算機eの最初のn桁Zalgoテキストジェネレーター中間日計算機平均中央値モード電卓服のサイズ変換音節カウンターpH電卓ランダムグループジェネレーター水星逆行カレンダー点つなぎジェネレーターGIFメーカーアナグラム生成器オンライン句読点削除ツールコラージュメーカービデオをループ再生カイ二乗検定電卓ランダム算数問題ジェネレーター分圧器計算電卓沸点計算ツール逆行列電卓FacebookユーザーID検索hba1c電卓エラー関数電卓梁の電卓配当利回り電卓3d距離電卓双曲線関数電卓平均電卓部分分数分解電卓10進数から16進数へのコンバーターランダムアニマルジェネレーター円錐台電卓論理ゲートシミュレーター退職カウントダウンYouTubeショート収益化計算ツールケリー基準電卓ヴァンパイア黙示録電卓⏱️ 時間計算機水分補給計算機絶対値電卓10進数からバイナリへのコンバーターAIテキストヒューマナイザーLED抵抗器電卓グレイコード・バイナリ変換電卓ノノグラムジェネレーター (ピクロス)馬力電卓テンソル積電卓ビデオ反転ピッグラテン翻訳機ランダム整数ジェネレーター二項係数電卓動画圧縮CGPAからパーセンテージへの変換器簡単採点ツール EZ Grader子育て費用計算機赤ちゃんのミルク量計算おむつサイズ電卓赤ちゃんの名前ジェネレーター赤ちゃんの目の色予測子供のBMIパーセンタイル計算機子供の身長予測ツールhcg倍加時間計算ツール体外受精出産予定日電卓着床計算ツール中国式性別予測カレンダーISO 8601 日付フォーマッターユリウス日変換器昼寝電卓月相電卓日の出&日の入り電卓世界時計日付ローマ数字変換電卓ソブリエティ計算機ハーフバースデー計算機記念日計算機週番号計算機チップ分配計算機メールマーケティングROI電卓リード獲得単価計算機運転資本計算機限界利益計算機FIFO / LIFO 電卓安全在庫計算機発注点計算機経済的発注量EOQ電卓減価償却計算機ハンドメイド価格電卓卸売価格計算機Shopify利益計算機Amazon FBA 電卓eBay手数料計算機Etsy手数料計算機Stripe手数料計算機PayPal手数料計算機ベッティングオッズ変換器什一献金計算機ザカート計算機英国印紙税計算機HRA非課税計算ツールグラチュイティ計算機NPS計算機EPF電卓PPF計算機RD電卓SWP電卓グロスアップ計算機ローン比較電卓クレジット利用率計算ツールCDラダー電卓T-Bill米国短期国債電卓I Bond 電卓529大学積立計算機HSA電卓退職金計算機昇給計算機請求書作成ツール出張日当計算機走行距離手当計算機家賃値上げ計算機日割り家賃計算家賃適正額計算機乗り出し価格計算ツール車購入可能額計算機バイクローン計算機キャンピングカーローン計算ボートローン電卓土地ローン計算機建設ローン計算機金利のみ住宅ローン計算機バルーンローン計算機住宅ローンポイント計算機PMI電卓隔週住宅ローン返済額計算機ARM住宅ローン電卓VAローン計算機給与手取り計算機AI SQLクエリジェネレーターAI正規表現ジェネレーターAIデータ可視化ツールCSV貼り付けAIテキストトーン分析ツールAI履歴書アナライザーAI単位変換ツール自然言語AI謝罪文ジェネレーターAI 丁寧なお断り文ジェネレーターAI旅行日程ジェネレーターAI読書リストジェネレーターAIワークアウトプランジェネレーターAI献立ジェネレーターAIギフトアイデアジェネレーターAIレシピジェネレーター食材から奨学金ROI電卓大学費用計算機言語学習 流暢になるまでの学習時間電卓単語クイズ作成ツールコーネルノート作成ツールフラッシュカード間隔反復スケジューラーペイント色混合計算機タイル目地計算機食洗機の積み込み最適化ツール洗剤の使用量計算ヘアカラー混合計算機印刷コスト計算機ガス vs 電気 コスト比較電卓ギフトカードチップ電卓引っ越し用ダンボール数計算機ストレージユニットサイズ計算機カプセルワードローブ計算機ベルト長さ計算機油圧シリンダー推力計算機滑車システム計算機ギア比計算機機械比熱計算機ベルヌーイの式計算機レイノルズ数計算機潮汐時刻計算機星空観測条件計算機結び方リファレンスツール寝袋温度評価ガイドテントフットプリントサイズ電卓バックパッキング食料重量電卓ネイスミス式ハイキングペース電卓刺繍糸長さ電卓レジンキャスト量計算電卓ビーズパターン電卓陶芸粘土収縮率電卓折り紙用紙サイズ電卓キルトバインディング電卓クロスステッチ刺繍糸計算編み物パターン計算機編み針サイズ変換器かぎ針サイズ変換器馬の干し草計算ツールペット航空輸送クレートサイズ検索爬虫類飼育UVBライト距離計算機鳥かごサイズ計算機水槽ヒーターワット数電卓猫のトイレ数計算機ヘッドライト照射距離電卓エンジン圧縮比計算機タイヤ溝摩耗計算機トレーラー牽引荷重計算機旅行費用割り勘計算停止距離計算機労災補償計算機遺産配分電卓商標区分検索ツール特許出願料電卓売上税ネクサスチェッカー刑期短縮計算機時効計算機Airbnb料金最適化ツールルームメイト家賃分割計算機セクション8 家賃電卓BRRRR法計算機キャッシュオンキャッシュリターン計算機賃貸利回り計算機1031エクスチェンジ計算機資産成長ビジュアライザーランチ代計算機ジム vs 自宅トレーニング費用電卓コーヒー代計算機リモートワーク節約計算機副業ROI電卓サブスクリプション費用トラッカーSaaS料金計算ツールフリーランスプロジェクト料金計算機スモークウッド・ペアリングガイド発酵時間計算機マリネ時間計算機食事制限レシピフィルタースパイス代用品ファインダーカフェイン半減期トラッカー標準ドリンク計算ツールワインペアリング提案ツールクライミンググレード変換器自転車ギア比計算機釣り結び強度計算機ヨガポーズホールドタイマー水泳SWOLF電卓レースタイム予測計算機ボクシングパンチ力計算機ラグビー得点電卓クリケット・ランレート電卓テニススコアトラッカーWellsスコア電卓 (DVT/PE)グラスゴー・コーマ・スケール計算機アプガースコア計算機FFMI 電卓クーパー12分間走計算ツール1マイルウォークテストロックポート電卓除脂肪体重から筋力計算炭水化物インスリン比計算機インスリン感受性係数計算機ヘブライ暦変換器ヒジュラ暦変換器旧暦変換ツール文化別年齢電卓どれくらい前計算機あと何日カウントダウン電卓日付パターンジェネレーター日付に営業日を追加営業日計算機単語頻度アナライザー文の長さばらつき分析ツールヘミングウェイ風リーダビリティエディタ発音IPA変換ツールヴィジュネル暗号ツールアトバッシュ暗号ツールROT13エンコーダー・デコーダーEXIFデータビューア・削除ツールバックロニム ジェネレーター頭字語ジェネレーターパングラムチェッカーリポグラム チェッカー画像からSVGトレーサー画像からASCIIアートへの変換器JSONスキーマジェネレーターTypeScriptプレイグラウンドLessからCSSへのコンパイラーSCSSからCSSへのコンパイラーSVGからReact/JSXへの変換器クエリ文字列ビルダーURLパーサーUUID検証・デコーダーHTTPステータスコードリファレンスcURLコマンドビルダーシェルピンスキーの三角形ジェネレーター3D曲面プロッター極方程式プロッタージュリア集合生成器マンデルブロ集合エクスプローラーL-Systemフラクタルジェネレータードロネー三角形分割ジェネレーターボロノイ図ジェネレータースピログラフジェネレーターテッセレーションジェネレーターシックスシグマ工程能力計算機youtubeサムネイルダウンローダーyoutube収益見積もりツールランダムRPGキャラクタージェネレーター