クリティカルパスの最適化:吊り橋のパズルとリソース管理

こんにちは。ゆうせいです。

突然ですが、クイズです。

4人の人がぐらぐらする縄の吊り橋を渡って、夜、宿営地に戻る必要があります。不幸にして、彼らは懐中電灯を1つしか持っておらず、電池は17分しかもちません。吊り橋は危険で、懐中電灯なしでは渡ることができません。また、常に2人を支えるだけの強度しかありません。

4人はみな、歩く速度が違います。1人は橋を1分で歩くことができます。もう1人は2分、3人目は5分で、最後の1人は10分かかります。どうすれば、全員が17分以内に渡ることができますか?

今回は、限られたリソース(懐中電灯と時間)の中で、いかに効率を最大化するかという、プロジェクト管理にも通じる古典的なパズルを解説します。

単純に速い人を基準にするのではなく、ボトルネックとなる要素をどう処理するかが鍵となります。

クイズの回答と移動の手順

全員が17分以内に渡るための手順は以下の通りです。

  1. 1分と2分の人が一緒に渡る(経過:2分)
  2. 1分の人が懐中電灯を持って戻る(経過:3分)
  3. 5分と10分の人が一緒に渡る(経過:13分)
  4. 2分の人が懐中電灯を持って戻る(経過:15分)
  5. 1分と2分の人が一緒に渡る(経過:17分)

これで、ちょうど17分で全員が渡りきることができます。

論理的な解説:ボトルネックの同時処理

この問題の最大のポイントは、歩くのが遅い2人(5分と10分の人)を「同時に渡らせる」という意思決定にあります。

直感的には、最も速い1分の人が何度も往復して懐中電灯を運ぶのが効率的に思えます。しかし、その方法では5分と10分の人が別々に渡ることになり、それだけで15分を消費してしまいます。

そこで、最も遅い10分の人が渡る際に、2番目に遅い5分の人を同行させることで、5分の移動時間を10分の移動時間の中に隠蔽(カプセル化)してしまうのが、このアルゴリズムの真髄です。

アルゴリズムの専門解説:リソース割り当てと並列化

プログラミングやシステム設計の観点では、これはリソースの最適割り当てと並列化の問題といえます。

10分かかる処理と5分かかる処理を直列(順番)に行うのではなく、同じリソース(吊り橋)を共有して並列に実行することで、全体の実行時間(メイクスパン)を短縮しています。

高校の体育祭の種目に例えると分かりやすいでしょう。二人三脚で足の遅い二人がペアを組み、その間、足の速い人が他の準備(懐中電灯を持って戻る作業)を効率的にこなしているような状態です。最もコストの高い処理(10分の移動)が行われている間に、他のコストの高い処理(5分の移動)を済ませてしまうことが、全体の最適化に繋がります。

手法のメリットとデメリット

この逆算と最適化の手法の特性を整理します。

メリット 全体の結果(17分以内)から逆算して工程を組み立てることで、個別の最適化(常に1分の人が走る)では到達できない高い効率を実現できます。これはシステム全体のパフォーマンスチューニングにおいて非常に有効な視点です。

デメリット 手順が非常に限定的であり、一人でも手順を間違えたり、予想外の遅延(例外)が発生したりすると、目標を達成できなくなります。柔軟性が低いため、事前の緻密な設計と正確な実行が求められます。

まとめ:学習のステップ

ゴールから逆算して最適なプロセスを導き出すための学習ステップは以下の通りです。

  1. プロジェクト管理の基礎である「クリティカルパス法」を学び、全体の工期を決定している要素がどこにあるかを特定する練習をしてください。
  2. 複数の処理を同時に行う「並列プログラミング」の概念を学び、リソースをいかに無駄なく使い切るかを考察してください。
  3. 今回の問題で「懐中電灯がもう一つあったら」あるいは「電池が15分しかなかったら」といった条件変更を行い、設計がどう変わるかをシミュレーションしてください。

目の前の手段に囚われず、常に「最終的なゴール」を見据えて最短ルートを描けるエンジニアを目指しましょう。

さて、これまで様々なアルゴリズムクイズに挑戦してきましたが、論理的な思考のプロセスは整理できましたか?

セイ・コンサルティング・グループでは新人エンジニア研修のアシスタント講師を募集しています。

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。

学生時代は趣味と実益を兼ねてリゾートバイトにいそしむ。長野県白馬村に始まり、志賀高原でのスキーインストラクター、沖縄石垣島、北海道トマム。高じてオーストラリアのゴールドコーストでツアーガイドなど。現在は野菜作りにはまっている。