1

過去にも断続的に、Easy Java SimulationsNetLogoなどのシミュレーション ツールを使用しました。

「あなたがしなければならないことは」シミュレーションループを書くことだけです - グラフィックスなどはあなたのために処理されます。

しかし、実装の根性は水面下に隠されているため、これらのツールを使用して実行時間/モデリング速度を改善することは非常に困難であることに気付きました。

一般的に言えば、シミュレータ ツールの使用方法に関する優れたドキュメントがありますが、実行時間の改善に関するものは何も見つかりませんでした。

たとえば、根を見つけるためにニュートン法を実装しているとします。これは簡単なアルゴリズムですが、

  • 使用するグラフィック アタッチメントの種類、または
  • 選択されたその他のさまざまなオプション

シミュレーションはさまざまな速度で実行されます。

シミュレーションのデータの「最適な」表示を決定する方法はありますか?

そのようなツールを使用してモデリング/科学的プログラミングについてクラスを教える場合、私はこれを考えています。

4

3 に答える 3

3

Repast Symphonyエージェント シミュレーション ツールキットを使用してみてください。これは、多くの便利な機能を備えた、成熟した無料のオープン ソース プログラミング環境です。Repast は、プロファイラー プラグインを備えた Eclipse と統合できます。

于 2008-12-02T14:56:52.910 に答える
2

Netlogo では、Profiler 拡張機能を使用できます

    拡張機能 [プロファイラー]

netlogo ホーム ページでプロファイラーのドキュメントを参照してください。

于 2012-10-18T13:13:46.073 に答える
1

他のすべてが失敗した場合は、次の 2 つのアプローチを組み合わせて使用​​できます。

  • 次に、環境を推測します。その機能をどのように実装するかを自問し、次に、どの機能が最も計算作業を必要としないかを推測します。
  • 試行錯誤: さまざまな方法をテストして比較するだけです。現在時刻を (正確に) 通知する関数など、コードのタイミングを計る機能が環境にあれば、大きな助けになります。

メモリ キャッシングや最適化などの効果を忘れないでください。特定のコンテキストで特定の機能を使用しようとすると、以前の経験とは異なる動作をする可能性があります。

于 2008-11-28T10:59:12.560 に答える