2014-05-14 81 views
1

我有個人(烏龜),我有住戶(烏龜固定xy) 我有一個變量地址存儲在家庭。我有許多家庭都隸屬於個人。家庭擁有相同的號碼。 如何將個人安置或移動到相應的家庭? 我想是這樣的:將烏龜移動到NetLogo中的其他代理的具體座標

ask individuals 
    [ if family = [family-place] of household 
     [ 
     move-to [address] of household 
     ]       
    ] 

回答

1

move-to household應該這樣做。

+0

它沒有工作。我有不同數量的家庭。我必須有一種方法來表明「轉向」哪個家庭。我認爲「這個家庭的人數相同。錯誤指示是'家庭期望1輸入,一個數字'以不同的方式提出問題。我如何將家庭變量應用於個人?再次感謝。 –

1

由於這是一個緩慢的星期一上午,這裏是我該怎麼做。 我假設familiy號是在移動和無梗龜的共同號碼的名稱。我會使用創建一個局部變量,該變量只在該過程中起作用。 (見走回家的過程此)

breed [walkers walker] 
breed [houses house] 

houses-own [family-number] 
walkers-own [family-number] 


to setup 
    clear-all 
    set-default-shape houses "house" 
    create-houses 10 [ 
    setxy random-xcor random-ycor 
    set family-number random 10000 
    ] 
    reset-ticks 
end 

to leave-home 
    ask houses [ 
    hatch-walkers 1 [ 
     set family-number [family-number] of myself 
     set color [color] of myself 
     set heading random 360 
     fd 1 
    ] 
    ] 
end 

to go 
    ask walkers [ 
    rt random 120 
    lt random 120 
    fd 1 
    ] 
    tick 
end 

to go-home 
    ask walkers [ 
    let family-place one-of houses with [family-number = [family-number] of myself] 
    move-to family-place 
    fd 1 ;; walker will step away one step so we can see him. 
    ] 
end 

只要將其複製到的NetLogo,使一個按鈕的每一道工序和發揮。最好的,如果在順序

setup 
leave-home 
go 
go-home 

希望這有助於!

+0

還不錯。欣賞它。謝謝。 (我會投票,但我必須得到15分;( –

0

我很難理解你的問題,所以我不得不猜測你想要什麼,但在你對布萊恩答案的評論的幫助下,也許我猜對了?

ask individuals [ 
    move-to one-of households with [address = [family-place] of myself] 
] 

,如果這似乎是因爲myself的混亂,你也可以把它寫成:

ask individuals [ 
    let f family-place 
    move-to one-of households with [address = f] 
] 
+0

它的工作,感謝您抽出時間。 –

相關問題