PR

エレベーターの頭脳「SCANアルゴリズム」とは?身近な待ち時間を劇的に減らす仕組みを徹底解説

統計学
この記事は約8分で読めます。

はじめに

毎日の通勤やマンションの移動、大型商業施設などで、誰もが一度は使ったことがある身近な乗り物といえば「エレベーター」ですよね。急いでいるときに限ってなかなか来なかったり、途中の階で何度も止まったりして、「どうしてこの順番で動くのだろう?」「もっと効率よく動かせないのかな?」と疑問に感じたことはありませんでしょうか。

実は、エレベーターの動きの裏側には、建物全体の「待ち時間の不満」を最小限に抑えるための賢い計算手順(アルゴリズム)が隠されています。もしエレベーターが何も考えずに呼ばれた順番通りに動いていたら、行ったり来たりを繰り返して大混乱になってしまいます。私たちが普段ストレスなく移動できているのは、陰で支えてくれている「SCAN(スキャン)アルゴリズム」という賢い頭脳があるからなのです。

👇 本記事でわかる3つの重要ポイント 👇

  • 【テーマ1】エレベーターがスムーズに動く秘密「SCANアルゴリズム」の仕組み
  • 【テーマ2】なぜ単純な「先着順」ではダメなのか?行ったり来たりを防ぐ工夫
  • 【テーマ3】最新のビル制御やパソコンのハードディスクにも応用される驚きの理由

普段は何気なく乗っているエレベーターですが、その裏側にある賢い工夫を知ると、日々のちょっとした待ち時間も面白い発見の時間へと変わるはずです。本記事では、数学やプログラミングの難しい専門用語をできる限り使わず、誰にでもわかりやすい言葉で丁寧に解説していきます。知的好奇心を刺激するテクノロジーの世界を、ぜひ最後まで楽しんでご覧ください。

エレベーターのアルゴリズム(SCAN)とは?基本の考え方をわかりやすく解説

エレベーターのアルゴリズム(SCAN)とは、どの階のボタンから順番に処理していけば、建物全体で待っている人たちの「待ち時間の不満」を一番少なくできるかを計算する、とても身近で働き者の最適化の仕組みのことです。

最適化という言葉を聞くと少し難しく感じられるかもしれませんが、要するに「無駄を極力なくして、みんなにとって一番都合が良い方法を見つけ出す工夫」のことですね。建物の中には、上に上がろうとしている人もいれば、下に降りようとしている人もいます。それぞれが異なるタイミングで、異なる階のボタンを押しますよね。そうした無数の要望をうまく整理し、最も効率的なルートをリアルタイムで割り出しながら進んでいるのが、このエレベーターの制御システムなのです。

なぜ単純な「先着順」ではダメなのか?エレベーターが直面する大問題

先着順(FIFO)で動かすと起こる大混乱

物事を順番に処理するとき、真っ先に思い浮かぶのは「早くボタンを押した人のところへ最初に行く」というルールではないでしょうか。これを専門用語では「先入れ先出し(FIFO:ファーストイン・ファーストアウト)」と呼びますが、エレベーターでこのルールを採用してしまうと大変な事態が巻き起こります。

たとえば、10階建てのマンションで次のような順番でボタンが押された場面を想像してみてください。

  • 1番目:1階にいる人
  • 2番目:10階にいる人
  • 3番目:2階にいる人
  • 4番目:9階にいる人

もし先着順で素直に動いてしまうと、エレベーターは「1階へ行く」→「10階へ一気に上がる」→「また2階まで下りる」→「また9階まで上がる」という極端な往復運動を繰り返すことになりますよね。これではエレベーターに乗っている人も途中で待っている人も、とんでもない長時間の待ち時間を強いられてしまいます。さらに、建物の消費電力や機械にかかる負担も跳ね上がってしまうのです。

途中で拾い集める「通り道でのサービス」の重要性

人間の感覚からすれば、「1階から10階へ上がっていく途中に2階があるのだから、そのついでに2階の人も乗せていけばいいじゃないか」と感じますよね。まさにその直感的な工夫を、きちんとした論理的なルールとして形にしたものが「SCANアルゴリズム」なのです。

同じ方向に進んでいる間は、その通り道にある呼び出しを順番に片付けていく。そして端まで到達したら、今度は反対方向へ折り返しながら、逆方向へ行きたい人たちを拾っていく。この一見当たり前の動きこそが、長年の研究によって生み出された非常に優れた最適化のアプローチなのです。

SCANアルゴリズムの具体的な動きと仕組み

まるでスキャナーのように端から端まで往復する

なぜこの仕組みに「SCAN(スキャン)」という名前がついているかと言いますと、紙の書類を読み取るスキャナーやコピー機の光の動きにそっくりだからです。読み取り用の光がガラス面の下をスーッと端から端まで一方向に進み、端まで届いたら折り返してくる様子を思い浮かべるとイメージしやすいかと思います。

エレベーターにおけるSCANの基本的な動作ルールは、以下の3つのステップで成り立っています。

  1. 一方向にひたすら進む:エレベーターが上昇しているときは、呼び出しがある限り、上の階へと向かって進み続けます。
  2. 同じ向きの要望を拾い集める:進んでいる方向と同じ向きに進みたい人(上に上がりたい人)が途中の階にいれば、その階に停止して乗せていきます。
  3. 端まで到達するか要望がなくなったら折り返す:一番上の階まで達するか、それ以上上に用事がなくなったら、進行方向を「下降」に切り替えます。今度は下へ降りながら、下に降りたい人たちを順に拾い集めていきます。

このルールを徹底することで、上へ行ったり下へ行ったりという細かな右往左往が完全になくなります。エレベーターが滑らかに巡回を繰り返すため、建物全体での移動効率が劇的に高まるのです。

「公平さ」と「待ち時間のばらつき防止」のメリット

SCANアルゴリズムの素晴らしいところは、単に効率が良いだけでなく、「特定の人だけがずっと待たされる」という不公平感を防げる点にあります。

もし「エレベーターの現在地から一番近い階へ優先して行く」というルール(最短移動優先ルール)を採用してしまうと、人が多い中央の階ばかりを行き来してしまい、端の階(最上階や1階)にいる人が永遠に無視されてしまうという現象が起こり得ます。これでは最上階の住人は不満で爆発してしまいますよね。

SCANであれば、端から端へと周期的に往復するため、「最悪の場合でも往復1回分の時間を待てば必ず自分のフロアに来てくれる」という安心感(待ち時間の上限)が保証されます。この心理的な公平性と安心感こそが、多くの人が共同で利用するエレベーターにおいて極めて重要なポイントなのです。

実は身の回りのパソコンにも使われている!SCANの幅広い活躍

ハードディスク(HDD)の針を動かす基本原理

実は、このSCANアルゴリズムはエレベーター専用に作られたものではありません。情報科学やコンピューターの世界でも、まったく同じ理屈が大活躍しています。その代表例が、パソコンなどの記憶装置である「ハードディスク(HDD)」のデータ読み取り制御です。

ハードディスクの中には、レコードのように高速で回転する円盤(プラッタ)と、そこからデータを読み書きするための針(磁気ヘッド)が入っています。パソコンから「あっちのデータを読め」「こっちのデータを書き込め」と次々にバラバラな要求が届いたとき、針を要求順にあちこち動かすと、針のアームが激しく揺れて動作がとても遅くなってしまいます。

そこで採用されたのが「エレベーター・アルゴリズム」とも呼ばれるSCANです。磁気ヘッドをレコードの外側から内側へと一方向に動かしながら、その通り道にあるデータをまとめて読み書きし、内側まで行ったら今度は外側へ戻りながら処理を行います。このように、機械の無駄な往復を防ぎ、長寿命化と高速化を同時に実現する賢い知恵として、コンピューターの世界でも重宝されてきました。

現代の最新エレベーターはさらに進化している!

昔からあるシンプルなSCANアルゴリズムですが、現代の超高層ビルや大型オフィスビルでは、利用者の待ち時間をさらに削るために様々な進化を遂げています。

無駄な往復をカットする「LOOKアルゴリズム」

SCANの基本的な欠点として、「最上階に誰も待っていないのに、ルールだからといって一番上までわざわざ行ってしまう」という無駄がありました。これを改良したのが「LOOK(ルック)アルゴリズム」です。

その名の通り、進んでいる方向の「先を見る」仕組みです。進行方向の前方にこれ以上利用者がいないと分かった瞬間に、最上階まで行くのをやめてその場で反対方向へ反転します。これによって、無駄な空振りの移動がなくなり、さらに素早く利用者のもとへ戻れるようになりました。

複数台をチームとして操る「群管理制御」

ビルにエレベーターが何台も並んでいる光景をよく目にしますよね。そうした場所では、複数台のエレベーターがチームを組んで連動する「群管理(ぐんかんり)制御」という高度なシステムが働いています。

すべてのエレベーターが同じフロアに固まってしまわないように、お互いの位置や乗客の数を通信で把握し合います。「A号機は低層階を中心にカバーする」「B号機は急行として上層階を狙う」「C号機は中層階で待機する」といったように役割をリアルタイムで分担し、建物全体の待ち時間を平均して数秒から数十秒単位で短縮しているのです。

乗る前に行き先を決める「行先予報システム」

最近の最新オフィスビルなどでは、エレベーターホールで先に行き先階のボタンを押すタイプ(行先予報システム)が増えてきています。カゴの中には行き先ボタンがなく、外のパネルで行き先を指定すると「あなたは3号機にお乗りください」と指定される仕組みです。

このシステムは、乗客がエレベーターに乗り込む前の段階で「誰がどこに行きたいか」の全データを集められるため、同じフロアに行きたい人たちを同じカゴへまとめて案内できます。途中で止まる回数が劇的に減るため、エレベーター自体の運行効率も乗り心地も飛躍的に向上しています。SCANから始まったアルゴリズムの知恵が、ビッグデータやAI的な予測制御と合体して進化を続けている好例ですね。

まとめ

私たちが毎日のように利用しているエレベーターの裏側には、建物全体の「待ち時間の不満」を最小限に抑えるための知恵である「SCANアルゴリズム」がしっかりと根づいています。

ただ単にボタンが押された順番に動くのではなく、一方向に進みながら同じ向きの要望を効率よく集め、端まで行ったら滑らかに折り返す。このシンプルで無駄のないルールがあるからこそ、混雑する時間帯でも大混乱を起こさず、みんなが公平に、そしてスムーズに移動することができているのです。

この仕組みはエレベーターだけでなく、パソコンの記憶装置や物流の効率的な配送ルート計画など、私たちの便利な暮らしを支える様々なテクノロジーの根底で幅広く応用されています。次にエレベーターの到着を待つときは、「今、裏側でどんな計算をして最適なルートを選んでくれているのだろう?」と、ぜひその健気で賢い頭脳の働きに思いを馳せてみてくださいね。

参考リスト

タイトルとURLをコピーしました