私はNetlogoを使用しています。私はカメが前のパッチに移動できないというシナリオを設定したいと思います。個々のカメはt-1とt-2で占有していた)。Netlogo:ネイバー値を設定するための構文の問題
以下のように設定しました。このアイデアは、現在のカメがすでに訪れた隣人にパッチの魅力をゼロにするように設定することで、選択することはできません。私は正しい構文で苦労していると思う。そのままで問題の行は、「設定previously_visited_patches」
patches-own [patch_attractiveness]
turtles-own [previous2_patches]
to setup
create-turtles 100 [
set previous2_patches (list patch-here)
]
end
to go
tick
ask turtles [
let previous_patchset patch-set previous2_patches
let previously_visited_neighbors neighbors with [member? self previous_patchset]
ask previously_visited_neighbours [
set patch_attractiveness 0
]
face max-one-of neighbors [patch_attractiveness]
fd 1
]
set previous2_patches lput patch-here previous2_patches
if (ticks > 1) [
set previous2_patches remove-item 0 previous2_patches
]
end
でコードを開始し1であるだけでなく、T-2パッチではなく、T-1パッチを選択しているようです。誰もが明るいアイデアを持っていますか?私は、これが何をしたいんだと思い、「自己」はオーケー
感謝
私はあなたのロジックを理解しているかどうかはわかりません。魅力を0に設定した場合、そのパッチは最近訪問したものだけでなく、すべてのカメにとって魅力的ではありません。私はあなたがこれをとにかく必要とは思わない、あなたはちょうど最後の2つのパッチを追跡し、それらを選択肢エージェントセットから除外するために(あなたがやっているように)リストを使うことができる。あなたはカメ3ダニ後に再訪できるようにしますか? – JenB
良い点。上記のコードにエラーがあります。私のオリジナルは実際にはカメの魅力があり、隣人に尋ねる各カメのためのラインがあります[パッチの魅力を魅力に設定]。これにより、すべてのパッチの値を変更できなくなります。私は本当にカメが3ダニの後に再訪できるように思っています。しかし、私はまだ正しい構文を見つけることができません。 – user8866982