在演算法研究過程中如何進行演算法創新

hlayumi發表於2022-02-16

創新一直是一個令人糾結的話題,研究生畢業設計多數需要演算法的創新,而博士生畢業更需要大量的創新才行。這裡,我們就團隊這幾年來的工作經驗,談談如何進行合理的演算法創新。

一、創新角度

通常,我們使用一個演算法,這裡舉個簡單的粒子,PSO粒子群優化演算法,我們通過模擬,會得到該演算法的收斂速度,模擬精度等一些引數指標。如果我們需要對該演算法進行創新,一般就需要從原演算法的效能指標角度考慮,比如收斂速度和精度的提高,對於一些低要求,可以在保證收斂速度不變的情況下,提高精度,或者在精度不變的情況下,加快收斂速度,如果要求較高,則同時考慮如何提高收斂速度和精度。一般情況下,針對這種情況,我們需要考慮別的類似演算法,而這些演算法必須具備快速收斂和高精度中的某些特性,這樣我們就可以將多種演算法的優勢進行整合,從而實現演算法的創新並提高原演算法的效能。

對於低程度的創新,一般都是這麼個思路。

二、創新依據

什麼是創新依據?所謂創新依據,就是我們使用的創新演算法,所考慮的角度是有理論依據的,我們不能憑空修改原來的演算法,這樣即使獲得了佈局的更優解,但也無法證明全域性的更優。因此,正如一所說,我們需要選擇某些效能比原演算法更好的其他現成演算法,進行演算法的整合。

三、創新的驗證

對於改進後的演算法,我們需要使用大量的測試樣本進行對比分析,驗證演算法的各個效能指標是否較原來的演算法有所提高。

四、完全的創新

完全的創新,這個是高要求的創新,一般有兩個層次,一個是跨學科的創新,一個理論的開拓。

我們通過這幾年的情況看,一般,要求稍高的碩士,會涉及到跨學科的演算法創新,比如,我們將物理上的一些公式應用到生物化學上的公式,並結合進行創新,或者是使用一組數學公式,去研究一些文科的問題。

理論的開拓,這個屬於是最高要求的創新了,即沒有現成的理論依據,需要我們去研究,總結出相關的理論,一般學生的課題不會涉及到這方面的要求,通常是一些較為複雜的工程專案或者博士課題,需要根據已知的一些條件,推算出一些新的公式,來表徵一個過程或者現象。這個就非常有難度。
 

相關文章