Turtles move to nearest patch of a certain color - how can this process be sped up?

Viewed 3969

I am trying to build a butterfly movement model in which butterflies are attracted to patches of their host plant. This attraction is expressed as a probability which is stored in a variable called "attr-prob". If a butterfly is located within 25 m of a host-plant patch (pcolor = 9.9), it will move to the nearest host-plant patch with the probability of attr-prob.

I wrote the following code:

if (distance (min-one-of (patches with [pcolor = 9.9]) [distance myself]) )     <= 25 
 [if random-float 1 < attr-prob [move-to min-one-of (patches with [pcolor = 9.9]) [distance myself]]]

This code seems to be doing what I want it to do, however, when I add this part into my model, it slows it down immensely. Does anyone have any alternative suggestions for coding this that might be quicker?

I am running Netlogo in 64-bit Java.

1 Answers
Related