2017-02-21 36 views
1

兩個問題: 1.如何分組具有某些特定變量的龜的數量符合我指定的標準。例如,創建Id1爲「1」的海龜。 期望的輸出將是包含相似值的龜的數量列表。 2.如果我已經得到包含相似ID-s的海龜列表,我希望從所有可用的海龜中得到一個組合。在蟒蛇(因爲它是唯一的語言,我覺得familiral)我會用:Netlogo:結合相似的海龜和組合對創造

turtle_list = ["1","2","4","5","6","7"] 

def create_pairs(source): 
     result = [] 
     for p1 in range(len(source)): 
       for p2 in range(p1+1,len(source)): 
         result.append([source[p1],source[p2]]) 
     return result 

pairings = create_pairs(turtle_list) 
print("%d pairings" % len(pairings)) 
for pair in pairings: 
     print(pair) 

回答

0

這裏是一個簡單的方法。爲了獲得更高的效率,如果您確實需要它,請實施上述的配對算法。

turtles-own [id] 

to setup 
    ca 
    let _ids range 5 
    crt 100 [set id one-of _ids] 
end 

to pairup [_id] 
    let _ts (turtles with [id = _id]) 
    ask _ts [ 
    create-links-with other _ts 
    ] 
end 

to test 
    setup 
    pairup 0 
end