0

Anylogic では、モデルの実行時に収集されるいくつかの統計に基づいて、ドライバーの平均給与を計算しようとしています。必要な統計を収集する方法を理解しました。ただし、シミュレーションの最後に次の式の出力を与える関数を作成する方法を知りたいです。
給与計算式は次のとおりです。 (距離係数) (距離) + (ピックアップ係数) (ピックアップ数) + (ドロップオフ係数)*(ドロップオフ数)

4

1 に答える 1

0

エージェント人口に関する統計を収集する

これらの各エージェント内の各ドライバー エージェントの 3 つの値を変数に収集すると仮定します。

エージェントの定義

ドキュメントに従って、ドライバーの母集団に関する 3 つの統計要素を作成した可能性があります。

エージェント人口統計

計算機能

最後に、統計要素を呼び出して値を取得し、それを要因と組み合わせる単純な関数です。因子は、関数と同様に Main で静的定数変数として定義されます。

関数

double averageDistance = drivers.distance();
double averageNumberOfPickups = drivers.numberOfPickups();
double averageNumberOfDropoffs = drivers.numberOfDropoffs();

double salary =  distanceCoefficient * averageDistance 
                + pickupCoefficient * averageNumberOfPickups 
                + dropoffCoefficient * averageNumberOfDropoffs;

return salary;

たとえば、Main のOn destroyコードで関数をトリガーしたり、時限イベントなどで実行したりできます。コンソールに出力しtraceln(calculateAverageSalary)たり、CSV、Excel にエクスポートしたり、モデルで表示したりできます。

于 2019-06-28T07:45:50.530 に答える