Python で Ant Colony Optimization アルゴリズムを実装しようとしていますが、Python とオブジェクト指向プログラミングの両方が初めてなので、学習曲線はかなり急勾配です。この時点で、次の状況に対処する方法について行き詰まっています。
- アリが 2D グリッドを歩き回ると、障害物、他のアリによるフェロモン沈着、食物などに遭遇します。この 2D 世界と各セルの前述の特性を表すために、どのデータ構造を使用すればよいでしょうか?
適切なプロパティを持つ をarray[x-coord][y-coord]
指すことができると考えて、2D 配列を試しました。残念ながら、NumPy では 2D 配列を作成できますが、辞書オブジェクトをさまざまな座標に割り当てることはできません。{} (dictionary)
(Obstacle: 'Yes / 'No', Pheromone Level: X %, etc.)
from numpy import *
myArray = array([[1,2,3,4],
[5,6,7,8],
[9,10,11,12]])
myArray[2][2]={}
戻り値:
Traceback (most recent call last):
File "/Users/amormachine/Desktop/PythonTest.py", line 7, in <module>
myArray[2][2]={}
TypeError: long() argument must be a string or a number, not 'dict'
[Finished in 0.6s with exit code 1]
私は、このプロジェクトを実行するために、辞書にもこのパラダイムにもコミットしていません。グループの知恵に感謝したいと思います。