其實我們的向心法則還挺浪費時間的,不過還滿好用的就是了。
首先還是一樣,和中右法則一樣,先定義好迷宮資訊,和第一格的資訊。
講白了,我們的向心法就每一格都算一次FLOOD 演算法,這樣每格就都會有一條建議路徑提供給電腦鼠怎麼走會比較快的走到終點。因為方式都一樣,所以就不任外做了。
不過用這樣的向心法有一個缺點就是,如果FLOOD 的執行效率很低的話,是會算不出路徑的。
所以是有必要針對FLOOD 演算法做最佳化的動作。
原先我們使用掃描的方式,也就是需要每格每格的找出需要被更新的格子,這樣的運算非常浪費時間,運算起來大概約9ms @ 30MIPS。
我們使用了資料結構的方式,將需要被更新的格子記錄起來,下一次再更新被記錄的格子即可,這樣的運算時間約3ms @30MIPS。
大概只要完成了向心法則,大概電腦鼠就可以擁有滿聰明的大腦了。
至於還有一些程式技巧就需要給大家花更多的功夫研究了。