新的模擬程式語言只用十分之一的程式碼但快上數百倍!

    加入我們永遠收到最新的消息

Matrix

美國研究人員已經能夠創造出Simit,一種程式語言轉譯高階指令來執行最細微的細節,提供更快速且較不需要密集程式碼的電腦模擬。

狀況模擬

把實際系統放入電腦系統,經常是煞費苦心的工作,同時要應付不同的工具來完成不同程度的準確。獨自影響周遭事物的小事物需要來自一個單一大事物的不同系統,而它的運作像是一個系統。

但如果有一個方法將兩者結合在一起,允許一方"說"另一方的語言,會怎樣呢?

10-Figure10-1

這正是這些美國研究人員所做的。他們創造出一個程式工具,能夠自動地在大小規模的模擬之間轉換,而不需要巨大無比的程式碼。

通常,低階和高階模擬使用不同的語言:低階用圖像,而高階用矩陣。圖像需要計算作用於塑造的三角形與四面體的力,而矩陣需要線性代數,以及影響一大群數字的一個矩陣改變。

當個別完成時,模擬是更加容易操控的。但如果你要模擬大的事物,仔細到每分鐘的細節,那意味著在這兩個規模之間的來回轉換。

6-Figure5-1

SIMIT的解決之道

研究人員創造出Simit,一種解決這個問題的程式語言。這個程式語言自動在規模之間變換,而且用最少的程式碼做到。

Simit一開始要求敘述一個系統的圖像描述和矩陣描述之間的轉換,然後使用線性代數來進行模擬。

然而,在模擬期間,它不需要在兩個規模之間來回穿梭。取而代之的是,它將寫在線性代數的程式語言轉換成圖像程式語言。這在手工編碼模擬(hand-coded simulation)上,有一個維持執行效率(runtime efficiency)的作用。

Simit允許相同的程式碼在雙方的傳統微處理器或圖形處理單元(graphics processing units,GPUs)上運作,並且還維持著速度和性能。

來源:Futurism

fb set to first 2