このような問題に関する文献は知りません。ただし、待ち行列理論は大きな学術分野であり、これはばかげて不自然な状況のようには聞こえないため、いくつかあると思います。最悪の場合のレイテンシーや N パーセンタイルのレイテンシーではなく、平均的なレイテンシーに関心があるという事実は、あなたを少数派にするかもしれません。
私の最初の直感は、周りにはたくさんの仕事があるように見えるので、良い解決策は、複数の「柔軟な」労働者を継続的に雇用することだろうということです。これは、許容できる待機時間でほとんどの種類の一般的なジョブを完了することができる一連のワーカーです。レイテンシーを低くしたいほど、このセット内のリソースが多くなり、アイドル状態に費やす時間が長くなります。また、入力が「バースト的」であるほど (バーストが予測不可能であると仮定して)、バースト中の高いレイテンシを防ぐために必要なアイドル時間が長くなります。
次に、「専門の」労働者を追加で 2 人雇います。
1) まれに、現在の雇用者が高い時間コストでしか処理できないか、まったく処理できないようなタイプの仕事が発生します。そのため、(大まかに言えば) シフトできる人を雇って、キューの残りの部分を最大限に処理します。
2)そのような仕事はありませんが、たまたま現在のキューからいくつかの仕事の組み合わせを取り、現在の雇用者よりも安く、現在の雇用者をアイドル状態のままにすることができる人を雇う機会を見つけました。 . だからあなたはそのリソースを雇います。
実際のアルゴリズムに関しては、最良の解を見つけることはほぼ確実に計算的に実行可能ではないため、正しい答えは処理リソースに依存し、ヒューリスティックを見て部分的な問題を解決しています。あなたが雇う全員が忙しく、将来のある時点でかなりのアイドル時間を引き起こさずに他の人を雇うことができない限り、あなたはおそらく良い解決策の近くにあり、「1ドルあたりの価値が最も高い」近くのどこかにいるでしょう。 " レイテンシとコストのトレードオフのポイント。その後、より多くのリソースを雇うと収益は減少しますが、それは、指定された待ち時間や指定された予算のためにそれを行う気がないという意味ではありません。
しかし、それは入ってくる仕事がどのように見えるかによります: 1 種類の仕事しかできないリソースがあり、その仕事が 1 日/1 週間/1 年に 1 回しか来ない場合は、おそらく、1 日 1 回雇うよりも、1 日に 1 回雇う方がよいでしょう。その仕事が可能な限り最小限のタイムスライスを満たすのに十分になるまで待ちます (消防士がほとんどの時間をカードゲームに費やしているのに対し、タイピストはほとんどの時間をタイピングに費やしているのはそのためです。さらに、火災に対して「1 ドルあたりのコストが最も高い」ソリューションは望んでおらず、それよりも短い遅延が必要です)。したがって、一般的なスケジューリング ソフトウェアを作成するのではなく、問題の特定のインスタンスを解決する場合は、特定のリソース セットと着信ジョブのパターンに合わせてアルゴリズムを微調整する機会がおそらくあります。
さらに、おそらくリソースが人間である場合、採用が成功することを実際に保証することはできません. たまたま分刻みの仕事があったときに給料をもらうためだけに、彼らは一日中座っているつもりはありませんよね?