論文中的simulation和emulation

如題,做爲一名學術研究者,關於simulation和emulation是有必要分清楚的。算法

先給出一些網上的參考定義:app

解釋一:    模擬(Simulation)即選取一個物理的或抽象的系統的某些行爲特徵,用另外一系統來表示它們的過程。模擬技術的高級階段稱爲仿真模擬(Emulation)、系統仿真,即用一數據處理系統來所有或部分地模擬某一數據處理系統,以至於模仿的系統能想被模仿的系統同樣接受一樣的數據、執行一樣的程序、得到一樣的結果。
解釋二:     模擬(Emulation)是試圖模仿一個設備的內部設計;仿真(Simulation)是試圖模仿一個設備的功能。
解釋三:     Emulation:When one system performs in exactly the same way as another, though perhaps not at the same speed. A typical example would be emulation of one computer by ( a program running on) another. You migh use emulation as a replacement for a system whereas you would use a simulation if you just wanted to analyse it and make predictions about it.        Simulation: Attempting to predict aspects of the behaviour of some system by creating an approximate (mathematical) model of it. This can be done by physical modelling, by writing a special-purpose computer program or using a more general simulation package, probably still aimed at a particular kind of simulation (e.g. structural engineering, fluid flow). Typical examples are aricraft flight simulators or electronic circuit simulators. A great many simulation languages exist, e.g. {Simula}
electron

 總結下來就是

simulation是模擬,emulation是仿真。顧名思義,模擬看中是的是輸入與輸出是否知足要求,並不在意中間的實現過程。而仿真則更像白盒,它要求必須設計出和系統一致的邏輯過程。工具

參照這個定義,說的更加直白些,那就是simulation模擬系統的行爲功能,emulation模擬系統的運做過程,行爲功能的實現能夠自定義,可是系統的運做必須符合已知的邏輯。ui

若是須要給定相互關係的話,那麼emulation就包含simulation。講simulation想像成一個一個的功能塊,而後將這些功能塊使用邏輯連接起來,造成一套完整的方案,就是emulation。spa

 

之前的時候常常使用simulation,還不知道有emulation的存在,實在是孤陋寡聞了。不過貌似之前寫的文章也都是涉及一些算法,將其封裝成功能塊執行的,也不涉及一整套大系統的開發。設計

如今要作的大型仿真,若是本身編寫或者使用一些現有的仿真工具如NS3之類的,總體上應該就算是Emulation了。可是針對本身涉及的那一塊,可能也就以一個模塊的形式添加到現有的軟件系統中,那麼這部分應該就算是Simulation了。orm

以上僅爲我的理解。ci

相關文章
相關標籤/搜索