四大演算法
Ⅰ 誰知道中國古代數術4大符號體系要具體的,謝謝
中國古代數學的發展
在古代世界四大文明中,中國數學持續繁榮時期最為長久。從公元前後至公元14世紀,中國古典數學先後經歷了三次發展高潮,即兩漢時期、魏晉南北朝時期和宋元時期,並在宋元時期達到頂峰。
與以證明定理為中心的希臘古典數學不同,中國古代數學是以創造演算法特別是各種解方程的演算法為主線。從線性方程組到高次多項式方程,乃至不定方程,中國古代數學家創造了一系列先進的演算法(中國數學家稱之為「術」),他們用這些演算法去求解相應類型的代數方程,從而解決導致這些方程的各種各樣的科學和實際問題。特別是,幾何問題也歸結為代數方程,然後用程式化的演算法來求解。因此,中國古代數學具有明顯的演算法化、機械化的特徵。以下擇要舉例說明中國古代數學發展的這種特徵。
1.1 線性方程組與「方程術」
中國古代最重要的數學經典《九章算術》(約公元前2世紀)卷8的「方程術」,是解線性方程組的演算法。以該卷第1題為例,用現代符號表述,該問題相當於解一個三元一次方程組:
3x+2y+z=39
2x+3y+z=34
x+2y+3z=26
《九章》沒有表示未知數的符號,而是用算籌將x�y�z的系數和常數項排列成一個(長)方陣:
1 2 3
2 3 2
3 1 1
26 34 39
「方程術」的關鍵演算法叫「遍乘直除」,在本例中演算程序如下:用右行(x)的系數(3)「遍乘」中行和左行各數,然後從所得結果按行分別「直除」右行,即連續減去右行對應各數,就將中行與左行的系數化為0。反復執行這種「遍乘直除」演算法,就可以解出方程。很清楚,《九章算術》方程術的「遍乘直除」 演算法,實質上就是我們今天所使用的解線性方程組的消元法,以往西方文獻中稱之為「高斯消去法」,但近年開始改變稱謂,如法國科學院院士、原蘇黎世大學數學系主任P.Gabriel教授在他撰寫的教科書[4]中就稱解線性方程組的消元法為「張蒼法」,張蒼相傳是《九章算術》的作者之一。
1.2 高次多項式方程與「正負開方術」
《九章算術》卷4中有「開方術」和「開立方術」。《九章算術》中的這些演算法後來逐步推廣到開更高次方的情形,並且在宋元時代發展為一般高次多項式方程的數值求解。秦九韶是這方面的集大成者,他在《數書九章》(1247年)一書中給出了高次多項式方程數值解的完整演算法,即他所稱的「正負開方術」。
用現代符號表達,秦九韶「正負開方術」的思路如下:對任意給定的方程
f(x)=a0xn+a1xn-1+……+an-2x2+an-1x+an=0 (1)
其中a0≠0,an<0,要求(1)式的一個正根。秦九韶先估計根的最高位數字,連同其位數一起稱為「首商」,記作c,則根x=c+h,代入(1)得
f(c+h)=a0(c+h)n+a1(c+h)n-1+……+an-1(c+h)+an=0
按h的冪次合並同類項即得到關於h的方程:
f(h)=a0hn+a1hn-1+……+an-1h+an=0 (2)
於是又可估計滿足新方程(2)的根的最高位數字。如此進行下去,若得到某個新方程的常數項為0,則求得的根是有理數;否則上述過程可繼續下去,按所需精度求得根的近似值。
如果從原方程(1)的系數a0,a1,…,an及估值c求出新方程(2)的系數a0,a1,…,an的演算法是需要反復迭代使用的,秦九韶給出了一個規格化的程序,我們可稱之為「秦九韶程序」, 他在《數書九章》中用這一演算法去解決各種可以歸結為代數方程的實際問題,其中涉及的方程最高次數達到10次,秦九韶解這些問題的演算法整齊劃一,步驟分明,堪稱是中國古代數學演算法化、機械化的典範。
1.3 多元高次方程組與「四元術」
絕不是所有的問題都可以歸結為線性方程組或一個未知量的多項式方程來求解。實際上,可以說更大量的實際問題如果能化為代數方程求解的話,出現的將是含有多個未知量的高次方程組。
多元高次方程組的求解即使在今天也絕非易事。歷史上最早對多元高次方程組作出系統處理的是中國元代數學家朱世傑。朱世傑的《四元玉鑒》(1303年)一書中涉及的高次方程達到了4個未知數。朱世傑用「四元術」來解這些方程。「四元術」首先是以「天」、「地」、「人」、「物」來表示不同的未知數,同時建立起方程式,然後用順序消元的一般方法解出方程。朱世傑在《四元玉鑒》中創造了多種消元程序。
通過《四元玉鑒》中的具體例子可以清晰地了解朱世傑「四元術」的特徵。值得注意的是,這些例子中相當一部分是由幾何問題導出的。這種將幾何問題轉化為代數方程並用某種統一的演算法求解的例子,在宋元數學著作中比比皆是,充分反映了中國古代幾何代數化和機械化的傾向。
1.4 一次同餘方程組與「中國剩餘定理」
中國古代數學家出於歷法計算的需要,很早就開始研究形如:
X≡Ri (mod ai) i=1,2,...,n (1)
(其中ai 是兩兩互素的整數)的一次同餘方程組求解問題。公元4世紀的《孫子算經》中已有相當於求解下列一次同餘組的著名的「孫子問題」:
X≡2(mod3) ≡3(mod5) ≡2(mod7)
《孫子算經》作者給出的解法,引導了宋代秦九韶求解一次同餘組的一般演算法——「大衍求一術」。現代文獻中通常把這種一般演算法稱為「中國剩餘定理」。
1.5 插值法與「招差術」
插值演算法在微積分的醞釀過程中扮演了重要角色。在中國,早從東漢時期起,學者們就慣用插值法來推算日月五星的運動。起初是簡單的一次內插法,隋唐時期出現二次插值法(如一行《大衍歷》,727年)。由於天體運動的加速度也不均勻,二次插值仍不夠精密。隨著歷法的進步,到了宋元時代,便產生了三次內插法(郭守敬《授時歷》,1280年)。在此基礎上,數學家朱世傑更創造出一般高次內插公式,即他所說的「招差術」。 朱世傑的公式相當於
f(n)=n△+ n(n�1)△2+ n(n�1)(n�2)△3
+ n(n�1)(n�2)(n�3)△4+……
這是一項很突出的成就。
這里不可能一一列舉中國古代數學家的所有演算法,但僅從以上介紹不難看到,古代與中世紀中國數學家創造的演算法,有許多即使按現代標准衡量也達到了很高的水平。這些演算法所表達的數學真理,有的在歐洲直到18世紀以後依賴近代數學工具才重新獲得(如前面提到的高次代數方程數值求解的秦九韶程序,與1819年英國數學家W. 霍納重新導出的「霍納演算法」基本一致;多元高次方程組的系統研究在歐洲也要到18世紀末才開始在E. 別朱等人的著作中出現;解一次同餘組的剩餘定理則由歐拉與高斯分別獨立重新獲得;至於朱世傑的高次內插公式,實質上已與現在通用的牛頓-格列高里公式相一致)。這些演算法的結構,其復雜程度也是驚人的。如對秦九韶「大衍求一術」和「正負開方術」的分析表明,這些演算法的計算程序,包含了現代計算機語言中構造非平易演算法的基本要素與基本結構。這類復雜的演算法,很難再僅僅被看作是簡單的經驗法則了,而是高度的概括思維能力的產物,這種能力與歐幾里得幾何的演繹思維風格截然不同,但卻在數學的發展中起著完全可與之相媲美的作用。事實上,古代中國演算法的繁榮,同時也孕育了一系列極其重要的概念,顯示了演算法化思維在數學進化中的創造意義和動力功能。以下亦舉幾例。
1.6 負數的引進
《九章算術》「方程術」的消元程序,在方程系數相減時會出現較小數減較大數的情況,正是在這里,《九章算術》的作者們引進了負數,並給出了正、負數的加減運演算法則,即「正負術」。
對負數的認識是人類數系擴充的重大步驟。公元7世紀印度數學家也開始使用負數,但負數的認識在歐洲卻進展緩慢,甚至到16世紀,韋達的著作還迴避負數。
1.7 無理數的發現
中國古代數學家在開方運算中接觸到了無理數。《九章算術》開方術中指出了存在有開不盡的情形:「若開方不盡者,為不可開」,《九章算術》的作者們給這種不盡根數起了一個專門名詞——「面」。「面」,就是無理數。與古希臘畢達哥拉斯學派發現正方形的對角線不是有理數時驚慌失措的表現相比,中國古代數學家卻是相對自然地接受了那些「開不盡」的無理數,這也許應歸功於他們早就習慣使用的十進位制,這種十進位制使他們能夠有效地計算「不盡根數」的近似值。為《九章算術》作注的三國時代數學家劉徽就在「開方術」注中明確提出了用十進制小數任意逼近不盡根數的方法,他稱之為「求微數法」,並指出在開方過程中,「其一退以十為步,其再退以百為步,退之彌下,其分彌細,則……雖有所棄之數,不足言之也」。
十進位值記數制是對人類文明不可磨滅的貢獻。法國大數學家拉普拉斯曾盛贊十進位值制的發明,認為它「使得我們的算術系統在所有有用的創造中成為第一流的」。中國古代數學家正是在嚴格遵循十進位制的籌算系統基礎上,建立起了富有演算法化特色的東方數學大廈。
1.8 賈憲三角或楊輝三角
從前面關於高次方程數值求解演算法(秦九韶程序)的介紹我們可以看到,中國古代開方術是以�c+h n的二項展開為基礎的,這就引導了二項系數表的發現。南宋數學家楊輝著《詳解九章演算法》(1261年)中,載有一張所謂「開方作法本源圖」,實際就是一張二項系數表。這張圖摘自公元1050年左右北宋數學家賈憲的一部著作。「開方作法本源圖」現在就叫「賈憲三角」或「楊輝三角」。二項系數表在西方則叫「帕斯卡三角」�1654年 。
1.9 走向符號代數
解方程的數學活動,必然引起人們對方程表達形式的思考。在這方面,以解方程擅長的中國古代數學家們很自然也是走在了前列。在宋元時期的數學著作中,已出現了用特定的漢字作為未知數符號並進而建立方程的系統努力。這就是以李冶為代表的「天元術」和以朱世傑為代表的「四元術」。所謂「天元術」,首先是「立天元一為某某」,這相當於「設為某某」,「天元一」就表示未知數,然後在籌算盤上布列「天元式」,即一元方程式。該方法被推廣到多個未知數情形,就是前面提到的朱世傑的「四元術」。因此,用天元術和四元術列方程的方法,與現代代數中的列方程法已相類似。
符號化是近世代數的標志之一。中國宋元數學家在這方面邁出了重要一步,「天元術」和「四元術」,是以創造演算法特別是解方程的演算法為主線的中國古代數學的一個高峰�。
2 中國古代數學對世界數學發展的貢獻
數學的發展包括了兩大主要活動:證明定理和創造演算法。定理證明是希臘人首倡,後構成數學發展中演繹傾向的脊樑;演算法創造昌盛於古代和中世紀的中國、印度,形成了數學發展中強烈的演算法傾向。統觀數學的歷史將會發現,數學的發展並非總是演繹傾向獨占鰲頭。在數學史上,演算法傾向與演繹傾向總是交替地取得主導地位。古代巴比倫和埃及式的原始演算法時期,被希臘式的演繹幾何所接替,而在中世紀,希臘數學衰落下去,演算法傾向在中國、印度等東方國度繁榮起來;東方數學在文藝復興前夕通過阿拉伯傳播到歐洲,對近代數學興起產生了深刻影響。事實上,作為近代數學誕生標志的解析幾何與微積分,從思想方法的淵源看都不能說是演繹傾向而是演算法傾向的產物。
從微積分的歷史可以知道,微積分的產生是尋找解決一系列實際問題的普遍演算法的結果�6�。這些問題包括:決定物體的瞬時速度、求極大值與極小值、求曲線的切線、求物體的重心及引力、面積與體積計算等。從16世紀中開始的100多年間,許多大數學家都致力於獲得解決這些問題的特殊演算法。牛頓與萊布尼茲的功績是在於將這些特殊的演算法統一成兩類基本運算——微分與積分,並進一步指出了它們的互逆關系。無論是牛頓的先驅者還是牛頓本人,他們所使用的演算法都是不嚴格的,都沒有完整的演繹推導。牛頓的流數術在邏輯上的瑕疵更是眾所周知。對當時的學者來說,首要的是找到行之有效的演算法,而不是演算法的證明。這種傾向一直延續到18世紀。18世紀的數學家也往往不管微積分基礎的困難而大膽前進。如泰勒公式,歐拉、伯努利甚至19世紀初傅里葉所發現的三角展開等,都是在很長時期內缺乏嚴格的證明。正如馮·諾伊曼指出的那樣:沒有一個數學家會把這一時期的發展看作是異端邪道;這個時期產生的數學成果被公認為第一流的。並且反過來,如果當時的數學家一定要在有了嚴密的演繹證明之後才承認新演算法的合理性,那就不會有今天的微積分和整個分析大廈了。
現在再來看一看更早的解析幾何的誕生。通常認為,笛卡兒發明解析幾何的基本思想,是用代數方法來解幾何問題。這同歐氏演繹方法已經大相徑庭了。而事實上如果我們去閱讀笛卡兒的原著,就會發現貫穿於其中的徹底的演算法精神。《幾何學》開宗明義就宣稱:「我將毫不猶豫地在幾何學中引進算術的術語,以便使自己變得更加聰明」。眾所周知,笛卡兒的《幾何學》是他的哲學著作《方法論》的附錄。笛卡兒在他另一部生前未正式發表的哲學著作《指導思維的法則》(簡稱《法則》)中曾強烈批判了傳統的主要是希臘的研究方法,認為古希臘人的演繹推理只能用來證明已經知道的事物,「卻不能幫助我們發現未知的事情」。因此他提出「需要一種發現真理的方法」,並稱之為「通用數學」(mathesis universakis)。笛卡兒在《法則》中描述了這種通用數學的藍圖,他提出的大膽計劃,概而言之就是要將一切科學問題轉化為求解代數方程的數學問題:
任何問題→數學問題→代數問題→方程求解而笛卡兒的《幾何學》,正是他上述方案的一個具體實施和示範,解析幾何在整個方案中扮演著重要的工具作用,它將一切幾何問題化為代數問題,這些代數問題則可以用一種簡單的、幾乎自動的或者毋寧說是機械的方法去解決。這與上面介紹的古代中國數學家解決問題的路線可以說是一脈相承。
因此我們完全有理由說,在從文藝復興到17世紀近代數學興起的大潮中,回響著東方數學特別是中國數學的韻律。整個17—18世紀應該看成是尋求無窮小演算法的英雄年代,盡管這一時期的無窮小演算法與中世紀演算法相比有質的飛躍。而從19世紀特別是70年代直到20世紀中,演繹傾向又重新在比希臘幾何高得多的水準上占據了優勢。因此,數學的發展呈現出演算法創造與演繹證明兩大主流交替繁榮、螺旋式上升過程:
演繹傳統——定理證明活動
演算法傳統——演算法創造活動
中國古代數學家對演算法傳統的形成與發展做出了毋容置疑的巨大貢獻。
我們強調中國古代數學的演算法傳統,並不意味中國古代數學中沒有演繹傾向。事實上,在魏晉南北朝時期一些數學家的工作中,已出現具有相當深度的論證思想。如趙爽勾股定理證明、劉徽「陽馬」�一種長方錐體 體積證明、祖沖之父子對球體積公式的推導等等,均可與古希臘數學家相應的工作媲美。趙爽勾股定理證明示意圖「弦圖」原型,已被採用作2002年國際數學家大會會標。令人迷惑的是,這種論證傾向隨著南北朝的結束,可以說是戛然而止。囿於篇幅和本文重點,對這方面的內容這里不能詳述,有興趣的讀者可參閱參考文獻�3�。
3 古為今用,創新發展
到了20世紀,至少從中葉開始,電子計算機的出現對數學的發展帶來了深遠影響,並孕育出孤立子理論、混沌動力學、四色定理證明等一系列令人矚目的成就。藉助計算機及有效的演算法猜測發現新事實、歸納證明新定理乃至進行更一般的自動推理……,這一切可以說已揭開了數學史上一個新的演算法繁榮時代的偉大序幕。科學界敏銳的有識之士紛紛預見到數學發展的這一趨勢。在我國,早在上世紀50年代,華羅庚教授就親自領導建立了計算機研製組,為我國計算機科學和數學的發展奠定了基礎。吳文俊教授更是從70年代中開始,毅然由原先從事的拓撲學領域轉向定理機器證明的研究,並開創了現代數學的嶄新領域——數學機械化。被國際上譽為「吳方法」的數學機械化方法已使中國在數學機械化領域處於國際領先地位,而正如吳文俊教授本人所說:「幾何定理證明的機械化問題,從思維到方法,至少在宋元時代就有蛛絲馬跡可尋,」他的工作「主要是受中國古代數學的啟發」。「吳方法」,是中國古代數學演算法化、機械化精髓的發揚光大。
計算機影響下演算法傾向的增長,自然也引起一些外國學者對中國古代數學中演算法傳統的興趣。早在上世紀70年代初,著名的計算機科學家D.E.Knuth就呼籲人們關注古代中國和印度的演算法�5�。多年來這方面的研究取得了一定進展,但總的來說還亟待加強。眾所周知,中國古代文化包括數學是通過著名的絲綢之路向西方傳播的,而阿拉伯地區是這種文化傳播的重要中轉站。現存有些阿拉伯數學與天文著作中包含有一定的中國數學與天文學知識,如著名的阿爾·卡西《算術之鑰》一書中有相當數量的數學問題顯示出直接或間接的中國來源,而根據阿爾·卡西本人記述,他所工作的天文台中就有不少來自中國的學者。
然而長期以來由於「西方中心論」特別是「希臘中心論」的影響以及語言文字方面的障礙,有關資料還遠遠沒有得到發掘。正是為了充分揭示東方數學與歐洲數學復興的關系,吳文俊教授特意從他榮獲的國家最高科學獎中撥出專款成立了「吳文俊數學與天文絲路基金」,鼓勵支持年輕學者深入開展這方面的研究,這是具有深遠意義之舉。
研究科學的歷史,其重要意義之一就是從歷史的發展中獲得借鑒和汲取教益,促進現實的科學研究,通俗地說就是「古為今用」。吳文俊對此有精闢的論述,他說:「假如你對數學的歷史發展,對一個領域的發生和發展,對一個理論的興旺和衰落,對一個概念的來龍去脈,對一種重要思想的產生和影響等這許多歷史因素都弄清了,我想,對數學就會了解得更多,對數學的現狀就會知道得更清楚、更深刻,還可以對數學的未來起一種指導作用,也就是說,可以知道數學究竟應該按怎樣的方向發展可以收到最大的效益」。數學機械化理論的創立,正是這種古為今用原則的碩果。我國科學技術的偉大復興,呼喚著更多這樣既有濃郁的中國特色、又有鮮明時代氣息的創新。
Ⅱ 演算法的四個特性是什麼
演算法是指解題方案的准確而完整的描述,是一系列解決問題的清晰指令,演算法代表著用系統的方法描述解決問題的策略機制。也就是說,能夠對一定規范的輸入,在有限時間內獲得所要求的輸出。如果一個演算法有缺陷,或不適合於某個問題,執行這個演算法將不會解決這個問題。不同的演算法可能用不同的時間、空間或效率來完成同樣的任務。一個演算法的優劣可以用空間復雜度與時間復雜度來衡量。
一個演算法應該具有以下五個重要的特徵:
有窮性
演算法的有窮性是指演算法必須能在執行有限個步驟之後終止;
確切性
演算法的每一步驟必須有確切的定義;
輸入項
一個演算法有0個或多個輸入,以刻畫運算對象的初始情況,所謂0個輸入是指演算法本身定出了初始條件;
輸出項
一個演算法有一個或多個輸出,以反映對輸入數據加工後的結果。沒有輸出的演算法是毫無意義的;
可行性
演算法中執行的任何計算步驟都是可以被分解為基本的可執行的操作步驟,即每個計算步驟都可以在有限時間內完成(也稱之為有效性)。
Ⅲ 十幾減幾的計算方法有:點數法、()法、()法和想加算減法。這道題怎麼做
十幾減幾的計算方法有:點數法、(心算)法、(比算)法和想加算減法。
1.點數法也稱評分法,是目前大多數國家最常用的方法,指對職位的各要素打分,用分數評估職位相對價值,並據以定出工資等級的一種技術方法。
2.心演算法又稱數學速演算法,是指利用數與數之間的特殊關系進行較快的加減乘除運算的計算方法。數學速演算法分為金華速算、魏德武速算、史豐收速算以及古人創造的「袖裡吞金」四大類速算方法。
3.比演算法有秩和比法(Rank-sum ratio,簡稱RSR法),是我國學者、原中國預防醫學科學院田鳳調教授於1988年提出的,集古典參數統計與近代非參數統計各自優點於一體的統計分析方法,它不僅適用於四格表資料的綜合評價,也適用於行×列表資料的綜合評價,同時也適用於計量資料和分類資料的綜合評價。
4.想加算減法就是算減法時,要想加法。例如,15-9= ,想知道他的答案,就要知道 9+幾=15 ,想出9+6=15,簡單出來就是 15-9=?,想9+6=15,列示15-9=6。
(3)四大演算法擴展閱讀
心演算法教學模式:
1:會演算法——筆算訓練,現今我國的教育體制是應試教育,檢驗學生的標準是考試成績單,那麼學生的主要任務就是應試,答題,答題要用筆寫,筆算訓練是教學的主線。與小學數學計算方法一致,不運用任何實物計算,無論橫式,豎式,連加連減都可運用自如,用筆做計算是啟動智慧快車的一把金鑰匙。
2:明算理—算理拼玩。會用筆寫題,不但要使孩子會演算法,還要讓孩子明白算理。 使孩子在拼玩中理解計算的算理,突破數的計算。孩子是在理解的基礎上完成的計算。
3:練速度——速度訓練,會用筆算題還遠遠不夠,小學的口算要有時間限定,是否達標要用時間說話,也就是會算題還不夠,主要還是要提速。
4:啟智慧——智力體操,不單純地學習計算,著重培養孩子的數學思維能力,全面激發左右腦潛能,開發全腦。經過快心算的訓練,學前孩子可以深刻的理解數學的本質(包含),數的意義(基數,序數,和包含),數的運算機理(同數位的數的加減,)數學邏輯運算的方式,使孩子掌握處理復雜信息分解方法,發散思維,逆向思維得到了發展。孩子得到一個反應敏銳的大腦。
Ⅳ MACD指標的原理和計算方法!
MACD利用收盤價的短期(常用為12日)指數移動平均線與長期(常用為26日)指數移動平均線之間的聚合與分離狀況,對買進、賣出時機作出研判的技術指標。
1. MACD金叉:DIFF 由下向上突破 DEA,為買入信號。
2. MACD死叉:DIFF 由上向下突破 DEA,為賣出信號。
3. MACD 綠轉紅:MACD 值由負變正,市場由空頭轉為多頭。
4. MACD 紅轉綠:MACD 值由正變負,市場由多頭轉為空頭。
5. DIFF 與 DEA 均為正值,即都在零軸線以上時,大勢屬多頭市場,DIFF 向上突破 DEA,可作買入信號。
6. DIFF 與 DEA 均為負值,即都在零軸線以下時,大勢屬空頭市場,DIFF 向下跌破 DEA,可作賣出信號。
7. 當 DEA 線與 K 線趨勢發生背離時為反轉信號。
8. DEA 在盤整局面時失誤率較高,但如果配合RSI 及KDj指標可適當彌補缺點。
Ⅳ 手機計步器不計步了怎麼回事啊
壞了被!!
Ⅵ 如何申請美國計算機科學專業「四大」的研究生
說到美國大學的計算機專業,就一定會提到美國的「四大」:卡內基梅隆大學(Carnegie Mellon University)、斯坦福大學(Stanford University)、加州大學伯克利分校(University of California, Berkeley)、麻省理工學院(Massachusetts Institute of Technology)。在最新的U.S.News 2018年計算機專業研究生排名中,這四所美國大學不出意外地都得了5.0的滿分,成為了並列第一。那具體這「四大」的計算機專業情況是怎麼樣呢?小夥伴們在進行美國研究生申請時,應當具備怎樣的條件才能申請美國計算機科學專業最強的四所大學的研究生呢?接下來就請小夥伴們和續航教育一起一探究竟吧。
卡內基梅隆大學
卡內基梅隆大學坐落在美國賓夕法尼亞州的匹茲堡。在卡內基梅隆大學,好像就連花花草草都和計算機有聯系。如果你是CMU的學生,無論你的專業是心理學、經濟學、哲學、還是物理、化學、數學,你都要學習CS學院的課。
雖然學校校區並不大,但它的計算機科學專業的規模卻是美國乃至世界最大的。和其他學校不一樣,卡內基梅隆大學為計算機與科學專業單獨設立了一個學院。該院下共有7個部門和機構,在這7個部門下,一共有26個不同專業,可見其學院規模之大和所涉領域之廣。
卡內基梅隆計算機科學專業的研究生申請要求:
在官網上我們不難發現,除了TOEFL要求100分以上,其餘成績都沒有硬性要求。值得注意的是,每個專業官網上的要求列表裡都明確寫出,學生需要具備一定的計算機方面的基礎能力,這其中包括對如Java、C++、Python等編程語言的熟悉。除此之外,學生也應該對一些數據結構、演算法理論知識的了解。對於那些本科不是CS專業的同學,申請之前在這些方面下些功夫還是很有必要的。
卡內基梅隆大學計算機研究生專業更重視申請者的綜合素質水平。也就是說,如果學生的GRE和GPA不是很高,但學術科研水平較高,就有可能被錄取;反過來也是一樣,如果學生的CS背景不深,但成績都很好,也有可能被錄取。總體而言,想要被學校錄取,最基本的條件就是學生要對計算機科學基礎有所掌握。
斯坦福大學
和卡內基梅隆大學不同,斯坦福大學的校園面積非常大。斯坦福大學位於加利福尼亞州的舊金山南部,坐靠CS天堂矽谷。由於其得天獨厚的地理優勢,使得斯坦福大學備受好評。雖然斯坦福大學錄取率在近年來持續走低,但每年斯坦福大學計算機專業招收的新生數量並不少,所以對於那些想去斯坦福大學計算機科學專業的申請者來說,去斯坦福大學讀書並不是不可能實現的。
斯坦福大學計算機科學專業研究生申請要求:
與卡內基梅隆大學相比,想申請Stanford的CS的申請者所需要具備的硬性要求就少了很多。沒有明確要求具備哪些計算機能力,GRE沒有最低分數限制,TOEFL只要89分以上。以上標准看似簡單,但由於其申請人數之多,在CS業界的影響力之深,導致其隱藏門檻一點都不低。在申請斯坦福大學計算機科學專業的時候,小夥伴們真的是不能掉以輕心呢。
斯坦福大學非常重視學生的科研背景,也就是說很看重學生本科的畢業院校及專業水平。斯坦福大學計算機專業研究生的本科背景往往是北大或者清華的,本科GPA也很少有低於3.5的。所以學生在申請前一定要做好後手准備,千萬不要在一所學校上死磕,每年大約5%的錄取率可不是開玩笑的。

加州大學伯克利分校
和上面提到的斯坦福大學一樣,加州大學伯克利分校也處在舊金山南部,矽谷附近,距離斯坦福大學開車只需一個小時。無人不知無人不曉的蘋果公司當初就是這所大學的計算機科學專業校友斯蒂夫沃茲尼亞克和喬布斯一起創立的。
加州大學伯克利分校計算機科學專業申請要求:
加州大學伯克利分校在其計算機科學專業官網中明確標明,需要申請者有本科學歷,TOEFL需要90+,GPA需要3.0+,GRE沒有最低分數要求限制。學生申請的專業雖然不同,但都要擁有一定的基礎計算機理論知識基礎以及至少精通一門編程語言。
與斯坦福大學的計算機科學專業類似,加州大學伯克利分校計算機科學專業也非常重視申請者的本科院校的背景,清復北(清華大學、復旦大學、北京大學)占絕大多數。如果你是其他重點學校,但GPA非常高的話,認真撰寫簡歷,把TOEFL和GRE的分數沖刺一下,也是有可能被錄取的。
麻省理工學院
麻省理工學院坐落於美國東部馬薩諸塞州的波士頓,素以頂尖的工程學和計算機科學而著名。麻省理工學院這個名字在中國總會引起這樣那樣的誤會,聽起來以為學院比大學low了很多,低人一等。所謂人不可貌相,學校名字也是一樣。麻省理工學院中的「Institute」翻譯過來應該為研究所,所以就是「麻省理工研究所」,具體為什麼後來被人翻譯成了麻省理工學院就不得而知了。但可以肯定的是,麻省理工學院無論是在教學水平、硬體建設方面都是全美國乃至世界最頂尖的學院之一。
麻省理工學院計算機科學專業設置和申請要求:
麻省理工學院並沒有獨立的計算機科學系,相關專業被歸於電氣工程與計算機科學(Electrical Engineering and Computer Science, EECS)科系之下,該系共提供四種計算機相關的文憑項目:
1、Master of Science(MS),該項目是面向該系博士學位在讀的學生開設的,要求學生修讀過一段時間的研究生課程。
2、Master of Engineering (ME)為期1年,僅面向該校電氣工程與計算機科學系本科畢業生招生。
3、Electrical Engineer (EE)/ Engineer in Computer Science(ECS)該項目是面向該系博士學位在讀的學生開設的,要求學生修讀過一段時間的研究生課程。
4、Doctor of Philosophy (PhD)/Doctor of Science (ScD),該項目是博士生項目,為期4-7年。不限專業背景。
從開設的四種文憑項目中可以看出,無論你是在美國還是在國內拿到的本科文憑,如果你想修讀麻省理工學院的計算機與科學研究生學位的話,沒有任何一個項目可以滿足條件。該系並未開設單獨的研究生項目,研究生學位僅在攻讀PhD學位的過程中,滿足一定要求的情況下授予。
對於計算機背景及能力相對較弱的同學,如果非「四大」不讀的話,建議你可以考慮卡內基梅隆大學,因為其專業覆蓋面廣,課程水平難度參差不齊,並且對本科背景要求相對於其他三所大學來說要低很多。
【獨家稿件聲明】本文為美國續航教育原創,未經授權,任何媒體和個人不得全部或者部分轉載。如需轉載,請與美國續航教育聯系;經許可後轉載務必請註明出處,違者本網將依法追究。
Ⅶ 評價演算法的四個標準是什麼
評價演算法的四個標准:
1.正確性
能正確地實現預定的功能,滿足具體問題的需要。處理數據使用的演算法是否得當,能不能得到預想的結果。
2.易讀性
易於閱讀、理解和交流,便於調試、修改和擴充。寫出的演算法,能不能讓別人看明白,能不能讓別人明白演算法的邏輯?如果通俗易懂,在系統調試和修改或者功能擴充的時候,使系統維護更為便捷。
3.健壯性
輸入非法數據,演算法也能適當地做出反應後進行處理,不會產生預料不到的運行結果。數據的形式多種多樣,演算法可能面臨著接受各種各樣的數據,當演算法接收到不適合演算法處理的數據,演算法本身該如何處理呢?如果演算法能夠處理異常數據,處理能力越強,健壯性越好。
4.時空性
演算法的時空性是該演算法的時間性能和空間性能。主要是說演算法在執行過程中的時間長短和空間佔用多少問題。
演算法處理數據過程中,不同的演算法耗費的時間和內存空間是不同的。
(7)四大演算法擴展閱讀:
演算法是對特定問題求解步驟的一種描述,它是指令的有限序列,其中每一條指令表示一個或多個操作。此外,一個演算法還具有下列5個重要的特性。
(1)、有窮性
一個演算法必須總是(對任何合法的輸入值)在執行有窮步之後結束,且每一步都可在有窮時間內完成。
(2)、確定性
演算法中每一條指令必須有明確的含義,讀者理解時不會產生二義性。即對於相同的輸入只能得到相同的輸出。
(3)、可行性
一個演算法是可行的,即演算法中描述的操作都是可以通過已經實現的基本運算執行有限次來實現的。
(4)、輸入
一個演算法有零個或多個的輸入,這些輸入取自於某個特定的對象的集合。
(5)、輸出
一個演算法有一個或多個的輸出,這些輸出是同輸入有著某種特定關系的量。
Ⅷ 如何成為一個飛控演算法工程師
飛控四大演算法:卡爾曼濾波,PID,捷聯貫導,融合導航。目前這是最核心的演算法了,也許你會覺得他們很古董,但是在工業領域一向是夠用即可,寧願發展老技術也不輕易使用新創意的,這跟現在彌漫整個中國無人機行業的浮誇的創新風氣完全不同。不要看不起開源飛控,寫程序的都是大牛,二次開發會讓你擁有對架構的了解,下一步就是深入了解這些具體演算法。相關書籍不多,大學課本就行,市面書籍大多蒙人眼球為主。工程演算法永遠是平淡出神奇,原理越簡單越好,但是應用的經驗非常重要,這就也牽扯試飛,了解飛機才能搞好演算法。卡爾曼就那五條,但是做好估計很難,PID每一級就三個系數,但是幾十年了也沒有什麼最優化理論。當然作為開發演算法的工具,熟練掌握c語言,控制律,狀態矩陣,MATLAB等等是非常必要的,能夠事半功倍。首先你老闆得給你足夠的時間讓你從頭研究這個,而且還得有其它部門配合;之後才是自己的問題,數學物理基礎、悟性、耐性缺一不可,如果沒有人替你實現,你還得懂寫程序。會用KF、會用PID就是懂了?我不這么認為。面試的時候見了許多調了十幾年KF、調了十幾年PID的人,也只是會調參、背公式而已。理論是基礎,但理論不能幫你把飛控做得比開源項目好。從某一方面開始、到全面超越開源項目,這裡面需要的時間、財力、人力支持和信任不是一般老闆會給的,要首先想清楚這個。你可以了解一下市面上哪些公司用了全自主開發的飛控演算法,開發的過程是怎樣的。而且這些都比開源飛控的性能好,功能更個性化,等你真的做好了,裡面的原因你都會懂。如果決定要做,那就把需要的模塊實現,一個互補/卡爾曼濾波+一個PID。之後哪裡需要優化就優化,哪裡需要加功能就加功能,不知道怎麼做就查資料、問人、學習、琢磨,邏輯混亂就上狀態機、重構代碼。