0

私の質問は電気通信に関連していますが、ソフトスイッチを使用しているため、依然として純粋なプログラミングの課題です。

ゴール:

  • コール ルーティング エンジンが使用するアルゴリズムを作成し、利用可能なリンク キャパシティを可能な限り高いレートで販売されるトラフィックで完全に飽和させます。

状況:

  • 30 の音声チャネルの固定容量を持つ通信リンク (E1/T1) があります (1 チャネル = エンド ユーザー間の 1 つの音声通話なので、各リンクで最大 30 の同時通話を行うことができます)。
  • リンクには毎月固定のランニング コストがかかるため、常にフルに活用するのが最適です (固定コストを分数で割った結果、利益が高くなります)。
  • コール ルーティング エンジンにコールを送信することによって、リンク キャパシティを「争う」ユーザがいます。
  • 各ユーザーは、特定の時間にランダムなリンク容量を消費できます。1 人のユーザーが一度にすべての容量を消費する可能性があります (つまり、ピーク時間)。ただし、オフピーク時間には容量を消費しません。
  • 各ユーザーは、1 分あたりの通話料金が異なります
  • 理想的な状況: 1 分あたりの通話率が最も高いユーザーによる通話で、リンクが完全に利用されています (24 時間 365 日)。

利用可能なコントロール:

  • コール ルーティング エンジンは、コールを受け入れてこのリンクを使用して送信するか、コールを拒否できます

利用可能なデータ:

  • 現在のリンクの使用状況
  • 1 分あたりのユーザー レート
  • ユーザーごとの 1 分あたりの最近の通話
  • ユーザーの通話履歴 (アクセスにはコストがかかりますが、可能です)

例:

  • ユーザー A のレートは 1 分あたり 1 セント、B は 0.8 セント、C は 0.7 セント
  • ユーザー A の呼び出しを受け入れ、ユーザー A がリンク容量をすべて満たすことができる場合は、他のユーザーを拒否するのが最善です。
  • しかし、通常、ユーザー A はリンク容量全体を埋めることができず、ギャップを埋めるために他のユーザーからの呼び出しを受け入れる必要があります
  • 特定の瞬間にユーザーが送信する通話の数を制御できないため、どの通話を受け入れて何を拒否するかを計画するのは困難です

この問題に対するアイデアや提案されたアプローチはありますか?

4

1 に答える 1