Shiftaru ブログ

希望日時とスタッフのシフトを自動でマッチングする — Shiftaru の仕組み

2026年7月5日 · Shiftaru 開発チーム

前回は「シフトの突き合わせを、仕組みで楽にする」考え方を書きました。
今回はその中身——Shiftaru(シフタル)が実際にどう自動マッチングしているのかを、図を交えて解説します。

難しいアルゴリズムの話はしません。「何を条件に、どういう順番で当てているか」がわかれば十分です。

🔧 お知らせ
Shiftaru(シフタル) は現在開発中で、いまはサンプルデータで試せる体験版を公開しています。
この記事の仕組みを、実際に動かして確かめられます。
👉 https://shiftaru.com

全体の流れ

Shiftaru のマッチングは、3つのステップでできています。

① 集める          ② 突き合わせる         ③ 調整する
希望日時・エリア   条件に沿って自動で     結果を画面で見て
コース・空き時間   当てはめる            気になる所だけ手直し
   ↓                    ↓                    ↓
 Googleフォーム      グリーディ法          仮 → 確定

人間がやるのは①の準備と③の最終確認だけ。②の「一番しんどい突き合わせ」を機械に任せます。

② の中身:どういう優先順位で当てているか

自動マッチングと聞くと「ランダムに埋めてるだけでは?」と思うかもしれません。
実際には、次の優先順位で条件を満たす組み合わせを探しています。

  1. エリアが合うか(最重視)
    お客さんの希望エリアに対応できるスタッフを優先。近い順に当てます。
  2. 希望日の順番
    第1希望 → 第2希望 → 第3希望 の順に、叶えられる方を優先。
  3. 稼働バランス
    特定の人に偏らないよう、空いているスタッフを優先(「同じ人に集中」も選べます)。

これに加えて、**満たさないと当てない「ハード条件」**があります。

安全や実現可能性に関わる条件(資格・重複・上限)は絶対に破らず、
「近さ」「希望順」のような優先度の条件はスコアで比べる——この二段構えで、
現場で使える現実的な組み合わせを作ります。

マッチングは二段構え:スコアで比べる優先条件と、満たさないと当てないハード条件

「グリーディ法」をひとことで

Shiftaru は グリーディ法 という方式でマッチングしています。
むずかしく聞こえますが、やっていることはシンプルです。

「今いちばん条件の合う相手から、順番に当てていく」

一件ずつ「この枠には、条件を満たす中でいちばん良いスタッフは誰か」を決めて確定し、次へ進む。
人間が手でやっている作業を、そのまま高速に・抜け漏れなく回しているイメージです。

良い相手から順に当てていくグリーディ法:枠ごとに一番良い人を確定して次へ

数百人規模でも数秒で結果が出るので、「一人の都合が変わったからやり直し」も一瞬です。

③ 自動で終わりにしない

大事なのは、**自動マッチングはあくまで"たたき台"**だということです。

現場には「この日はこの人を外せない」「今回はあえてこの組み合わせで」といった、
データに書ききれない事情があります。Shiftaru では——

つまり、機械が9割を片付け、人が最後の1割を決める。この役割分担が、実際に使える理由です。

まとめ

🚀 いま試せます(開発中・体験版)

Shiftaru は現在開発中で、サンプルデータで試せる体験版を公開しています。
この記事で説明したマッチングを、インストール不要・登録なしでそのまま動かせます。

👉 https://shiftaru.com

※ 現在は体験版のため、実データの読み込みや結果の書き出しなど一部の機能はライセンス登録後に開放されます。まずは「練習モード(サンプルで試す)」から触ってみてください。


ここまで読んで、「便利そうだけど、集めたデータはどこに保存されるの?」と気になった方もいると思います。
実は Shiftaru は、お客さんやスタッフの個人情報をクラウドに送りません。 その理由と仕組みを、次の記事で解説します。