ドキュメント一覧
このページの内容

周期性と時間変動パラメータの設定

周期設定とは?

現実のプロセスは常に同じ運用ではありません。カスタマーサービスはビジネスアワー中にコール数が増え、製造ではシフトごとに人員が異なり、小売でも季節ごとにピークがあります。

周期設定 を使えば、特定のシミュレーションルールを「いつ」適用するか柔軟に指定できます。グローバルな値ではなく、時間帯や曜日などで個別にパラメータを設定できます。

  • 平日と週末
  • 朝番と夜番シフト
  • 繁忙期と閑散期
  • ビジネスアワーと時間外

こうした管理により、シミュレーションをより現実的な動作にできます。


なぜ周期設定が重要か

カスタマー到着件数のシンプルな例を考えてみましょう。

周期設定なしの場合:

  • 1時間あたり10件、24時間365日同じ

周期設定ありの場合:

  • 平日9:00〜18:00は1時間あたり25件
  • 平日18:00〜21:00は1時間あたり15件
  • 週末は1時間あたり5件
  • 夜間は1時間あたり2件

後者のようにリアルな需要パターンを再現すると、待ち行列・リソース利用・処理量に影響を反映できます。


利用可能な周期タイプ

ProcessMindは9種類の周期タイプをサポートし、それぞれのタイプでルールの適用タイミングを定義できます。

タイプパラメータ説明
Always(なし)常に適用されるルール、変動なし
Default(なし)他の時間ベースのルールが該当しない場合のフォールバック
Fixed PeriodstartDateTime, endDateTime1回だけの期間(繰り返しなし)
Each DaystartTime, endTime毎日同じ時間で適用
Each WeekdaystartTime, endTime月曜〜金曜のみ適用
Each Weekend DaystartTime, endTime土曜・日曜のみ適用
Each WeekstartDay, startTime, endDay, endTime週ごとに複数日にまたがる繰り返し
Each MonthstartDayOfMonth, startTime, endDayOfMonth, endTime月ごとの繰り返しパターン
Each YearstartMonth, startDayOfMonth, startTime, endMonth, endDayOfMonth, endTime年次・季節的なパターン

周期タイプの詳細

Always

最もシンプルな選択肢で、常にルールが変動なく適用されます。

活用例: パラメータが時間で変動しない場合や、ベースラインのシミュレーション作成時に推奨です。


Default

他の時間ベースのルールが該当しない場合のフォールバックになります。

活用例: 特定の時間のみ例外を設定し、それ以外はデフォルト値を使いたい場合に便利です。

Defaultルールは必ず追加

複数の周期ルールを設定する際は、どの時間帯にも漏れがないよう必ずDefaultルールを含めてください。該当ルールがなくて想定外の動作になるのを防げます。


Each Day

1週間すべて同じ時間帯にルールが適用されます。

パラメータ:

  • startTime: 開始時刻(例:09:00)
  • endTime: 終了時刻(例:17:00)

例: 毎日、土日も含めた09:00~17:00がビジネスアワーの場合


Each Weekday

月曜から金曜だけ指定時間帯にルールが適用されます。

パラメータ:

  • startTime: 開始時刻
  • endTime: 終了時刻

例: 平日は08:00~18:00でカスタマーサービス、週末は別ルール


Each Weekend Day

土曜・日曜のみ特定時間帯に適用できます。

パラメータ:

  • startTime: 開始時刻
  • endTime: 終了時刻

例: 週末は10:00〜16:00でサポート時間短縮


Each Week

週の中で複数日をまたぐ時間範囲を設定できます。1日単位の分割では表せないパターンにも適しています。

パラメータ:

  • startDay: 開始曜日(例:水曜日)
  • startTime: 開始時刻
  • endDay: 終了曜日
  • endTime: 終了時刻

例: 水曜14:00~金曜12:00を高負荷期間に設定


Each Month

毎月の特定期間にルールを適用します。

パラメータ:

  • startDayOfMonth: 何日目から開始(1-31)
  • startTime: 開始日の時刻
  • endDayOfMonth: 何日目まで適用
  • endTime: 終了日の時刻

例: 25日8:00~月末23:59まで月末処理を強化


Each Year

毎年決まった期間でルールを適用できます。

パラメータ:

  • startMonth: 開始月
  • startDayOfMonth: 開始月の日付
  • startTime: 開始時刻
  • endMonth: 終了月
  • endDayOfMonth: 終了月の日付
  • endTime: 終了時刻

例: 11月15日0:00~12月31日23:59を小売のホリデーピークとして設定


固定期間

このルールは特定の日付と時間範囲に適用されます(繰り返しではありません)。一度きりのイベントに使用します。

パラメータ:

  • startDateTime: 開始日時
  • endDateTime: 終了日時

例: 2025年3月15日〜22日のプロダクトローンチ週、特別対応ルールを適用します。


複数ルールの組み合わせ

周期設定の本当の強みは、複数のルールを組み合わせて使うことです。異なる時間帯ごとにパラメータを設定でき、シミュレーション中に自動で適用されるルールが判定されます。

例:複数シフトの処理時間

シフトごとに処理時間が異なる製造プロセスの例です:

ルール名周期処理時間分布
Day Shift平日 08:00-16:00Normal(30 min, 5 min)
Evening Shift平日 16:00-00:00Normal(45 min, 10 min)
Weekend Crew週末 10:00-18:00Normal(60 min, 15 min)
Overnight/DefaultデフォルトNormal(90 min, 20 min)

Day Shiftはスタッフが多く最速です。Evening Shiftは監督が減るためやや遅くなります。週末は最小人数体制で最も遅いです。デフォルトは夜間の時間帯をカバーします。

ルールの優先順位

複数のルールが一致する場合:

  1. ルールは設定に記載された順に評価されます
  2. 最初に一致したルールが適用されます(上のものが優先)
  3. デフォルトルールは他の条件が該当しない場合のみ適用されます

ポイント: より具体的なルールを一般的なルールより上に配置しましょう。平日と土日で異なる動作が必要な場合は「Each Weekday」を「Each Day」より上に配置してください。


周期設定を使う項目

周期設定は多くのシミュレーションパラメータに利用できます:

パラメータ周期設定のユースケース
Case Arrivals業務時間は到着件数が多く、夜間は少ない
Processing Timesフルスタッフ時は処理が早く、時間外は遅い
Resource Capacityピーク時は人員増強、夜間は最少体制
Skip Chances週末や祝日で異なるルーティング
Gateway Probabilities時間帯による意思決定パターンの変化

総合例:カスタマーサポートセンター

複数パラメータにまたがる周期設定の活用例を、カスタマーサポートのシミュレーションで紹介します。

到着率の設定例

周期到着率
Each Weekday 09:00-18:00Poisson(1時間あたり50件)
Each Weekday 18:00-22:00Poisson(1時間あたり20件)
Each Weekend Day 10:00-16:00Poisson(1時間あたり15件)
DefaultPoisson(1時間あたり5件)

ビジネス時間帯は件数が多く、夜間は中程度、週末・深夜は少なめという現実的なパターンを再現できます。

処理時間の設定

周期分布
平日 09:00-17:00Triangular(10, 20, 45 min)
週末Triangular(20, 40, 90 min)
デフォルトTriangular(30, 60, 120 min)

ピーク時間帯は最速、週末や時間外は遅くなります。

スタッフ体制の設定

周期稼働エージェント数
平日 09:00-18:0010名
平日 18:00-22:004名
週末 10:00-16:003名
デフォルト1名

営業時間中はフル体制、それ以外は必要最低限で対応します。

仕組みの例

火曜日10:00の場合:

  • 到着は1時間あたり50件
  • 処理は高速な三角分布を使用
  • 10名のエージェントが稼働

火曜日20:00の場合:

  • 到着は1時間あたり20件に減少
  • 処理はデフォルト(遅い)分布を使用
  • 4名のエージェントのみ稼働

土曜日14:00の場合:

  • 到着は1時間あたり15件
  • 処理は週末分布を使用
  • 3名のエージェントが稼働

ベストプラクティス

1. まずDefaultから設定

最初にDefaultルールを必ず設定しましょう。その他ルールで対応できない時間帯もカバーできます。

2. ざっくり→詳細の順で設定

まず平日/週末のような大枠から始めて、必要に応じてシフトなど細かなルールを追加しましょう。

3. まずはシンプルに

最初は平日/週末などの大まかな区分けから始め、あとで時間帯や季節ごとの細かい条件も追加できます。

4. データでパターンを設計

可能なら履歴データを分析し、(到着件数・処理時間・曜日・時間帯別の人員など)実際の傾向をもとに設計しましょう。

5. 境界ケースのテスト

シフト切替(例:17:00)・深夜・月末など、端のタイミングでも正しくルールが適用されるか確かめてください。

6. ルールは必ず記録

複雑な周期設定は後から分かりにくくなるため、それぞれのルールの目的や業務背景も記録しておきましょう。


次のステップ

Resources
周期に合わせたリソースキャパシティのモデル化に活用