AnyLogicでのPythonスクリプト

AnyLogic Conference 2021おいて、PythonをAnyLogicの2番目のネイティブスクリプト言語にするために、現在進行中の技術開発について、AnyLogicの上級ソフトウェアエンジニアであるNikolay Churkovが発表しました。

データアナリストやコンサルタントは、Pythonを使用したコーディング、データ処理、データ接続、およびAI関連モジュールの活用等がますます利用しやすくなります。これにより、より簡単なコード記述と緩和された型処理で、PythonをAnyLogicの魅力的なコーディングオプションにします。

Nikolayのプレゼンテーションには、AnyLogicエンジンとライブラリのAPIへのフルアクセスを維持しながら、すべてのコードフィールド(アクション、式など)でPythonコードを使用できる実験バージョンのデモが含まれていました。

PythonからAnylogic Javaエンジンおよびライブラリへの接続
強調表示されたJavaコードは、Pythonで書き直すと消えます。(クリック/タップして拡大)

調査結果は、PythonがJavaよりも遅いことを示しています。ただし、減速係数はモデルの種類によって異なります。

複雑な歩行者モデルやマテリアルハンドリングモデルの場合、テストされたモデルの実行速度はJAVAより1.5〜2倍遅くなります。頻繁なユーザーコードコールバックがあるモデル(たとえば、病気の拡散エージェントベースモデル、または単純なプロセスモデル)の場合、係数は75まで高くなる可能性があります。Pythonは実行時のパフォーマンスは遅くなりますが、コードの記述がより簡単になり、広範なPythonエコシステムにアクセスできるため、モデル作成プロジェクト全体においては、時間を短縮できる可能性があります。

皆様方のご意見、ご要望を是非お聞かせください!python@anylogic.comまでメールでお問い合わせいただければ幸いです 。最後になりましたが、 AnyLogic 8に、Pythonスクリプトの機能(機能制限あり)を持たせたバージョンのリリースを計画しています。

関連記事