這是我的條件
IF (V>d-1) 則 V=d-1
IF (V<或= d-1) AND V<Vmax 則V=V+1
V 有 P 的機率會自動減1
V 速度 d 距離 P機率(0~1)
以下是我的程式
XY圖我想畫出 全部的車子得 時間和位置圖
請大家幫我看看 有沒有錯誤
因為位置車子位置 有時會變成-1 非常怪
P=0.1 steps=1000 car#=10 size=100
新資料夾 (2).rar
這是新的~完整的檔案
麻煩大家了
好像還是會有-1的值出現
還有一個麻煩 如果car#數量增加 速度應該要出現很多零
但是卻都變成的5(Vmax)
r0095494240455.8903587963
有-1的位置是因為有-1的速度,建議程式修改如下,當速度小於0時就設定為0

還有1處,速度大於等於就有機率-1,要改為大於.速度才不會變-1

你的程式除了randomize.vi會造成速度變-1外(把大於等於改為大於就OK),最大的問題是計算間距的distance_between _cars.vi輸入的position資料有問題才會造成velocity_change.vi計算錯誤,造成後車與前車在同一點,甚至超過前車的問題.你只需將主程式的線路如下圖修改就OK了.

你的程式還有個Bug,當車子的數量是空間的一半時,所有車子都不會動,速度永遠為0,例如car#=50,size=100,你可以自己找一下問題在哪?
好的~
可能是我條件設定的問題
因為一開始給訂的速度V都等於零
又IF (V<或= d-1) AND V<Vmax 則V=V+1
所以速度永遠無法+1
IF (V<或= d-1) AND V<Vmax 則V=V+1是你的條件,但是你的程式卻寫成V+1<d-1,建議你將下圖中圈起來的+1刪除.

好的~謝謝你喔~~但是文章中的條件,感覺上應該是+1這個,所以才寫成+1
如果我現在,想用亂數寫"初始位置"要怎麼做會比較好呢?
因為位置不能重疊
真是非常困擾!
"初始位置"用亂數取出,不會重複(原理可參考下面文章).再依序排列即可.
http://it360.tw/forum/forum_posts.asp?TID=12715&FID=23
