共命之鳥演算法
A. 常見的群體智能演算法不包括
有一些並不是廣泛應用的群體智能演算法,比如螢火蟲演算法、布穀鳥演算法、蝙蝠演算法以及磷蝦群演算法等等。
粒子群演算法(particle swarm optimization,PSO)是計算智能領域中的一種生物啟發式方法,屬於群體智能優化演算法的一種,常見的群體智能優化演算法主要有如下幾類:
設想這樣一個場景:一群鳥在隨機的搜索食物。在這個區域里只有一塊食物,所有的鳥都不知道食物在哪。但是它們知道自己當前的位置距離食物還有多遠。那麼找到食物的最優策略是什麼?最簡單有效的就是搜尋目前離食物最近的鳥的周圍區域。
Step1:確定一個粒子的運動狀態是利用位置和速度兩個參數描述的,因此初始化的也是這兩個參數;
Step2:每次搜尋的結果(函數值)即為粒子適應度,然後記錄每個粒子的個體歷史最優位置和群體的歷史最優位置;
Step3:個體歷史最優位置和群體的歷史最優位置相當於產生了兩個力,結合粒子本身的慣性共同影響粒子的運動狀態,由此來更新粒子的位置和速度。
位置和速度的初始化即在位置和速度限制內隨機生成一個N x d 的矩陣,而對於速度則不用考慮約束,一般直接在0~1內隨機生成一個50x1的數據矩陣。
此處的位置約束也可以理解為位置限制,而速度限制是保證粒子步長不超限制的,一般設置速度限制為[-1,1]。
粒子群的另一個特點就是記錄每個個體的歷史最優和種群的歷史最優,因此而二者對應的最優位置和最優值也需要初始化。其中每個個體的歷史最優位置可以先初始化為當前位置,而種群的歷史最優位置則可初始化為原點。對於最優值,如果求最大值則初始化為負無窮,相反地初始化為正無窮。
每次搜尋都需要將當前的適應度和最優解同歷史的記錄值進行對比,如果超過歷史最優值,則更新個體和種群的歷史最優位置和最優解。
速度和位置更新是粒子群演算法的核心,其原理表達式和更新方式:
每次更新完速度和位置都需要考慮速度和位置的限制,需要將其限制在規定范圍內,此處僅舉出一個常規方法,即將超約束的數據約束到邊界(當位置或者速度超出初始化限制時,將其拉回靠近的邊界處)。當然,你不用擔心他會停住不動,因為每個粒子還有慣性和其他兩個參數的影響。
粒子群演算法求平方和函數最小值,由於沒有特意指定函數自變數量綱,不進行數據歸一化。
B. 長沙麻將演算法是怎麼樣的呢
1、長沙麻將詳解:長沙麻將演算法是胡牌+中鳥(一般兩個鳥,中一個就按下面的計算方式乘以2,中兩個就乘以3)。
2、小胡:閑家一番,莊家兩番,然後再看中鳥。
3、大胡:大胡只有清一色、小七對、將將胡、碰碰胡、全求人、杠上花、海底撈。每個大胡演算法是一樣的,即閑家六番,莊家七番。然後再看中鳥。
4、多大胡:會有多大胡的情況,比如清一色的杠上花,龍七對,碰碰胡的全求人的杠上花,那麼演算法就是這樣的,一個大胡在沒有算鳥的情況下算一盒,兩個大胡就是兩盒,三個就是三盒,再算中鳥。
麻將起源
1、我們俗稱「餅」,它其實是一個糧倉屯(土話)的正上方俯視圖,也就是說」筒「是一個抽象的截圖。大家可以結合搜一個糧倉圖(暫沒有找到合適的俯視圖給大家)。儲糧食的時候,人們用席子圍成一個桶狀的立柱空間,糧食儲存在裡面,為了防漏雨,頂是兩圈草墊以同心圓疊蓋結成。
2、因此,從糧倉的正上方俯視下來,我們看到的抽象事物就是一個「筒」,兩個糧倉就是兩個「筒」,以此類推到「九筒」。後來因打仗傳到南方後,叫法上出現了「餅」的讀音,是一種看圖說話的緣故,但這個錯誤也很普遍地沿襲了下來,讓人們對麻將的歷史理解越來越遠。
基礎
1、一般長沙麻將需要任意花色2、5、8序數做將,才能胡牌。
2、少數特殊牌型可以不需要任意花色2、5、8序數做將也能胡牌,後文會詳細說明。
3、可吃、碰、杠,其中杠牌比較特殊分為「補杠」和「開杠」2種。
4、補杠胡牌時不算杠上花,開杠只有在聽牌時才能開杠,開杠後不可以更改聽張。
5、可自摸、放炮,有人胡牌時,立刻算扎鳥。
番型
1、長沙麻將的特色玩法,跟其他地方麻將,有著一種特殊的區別,那就是多一種起手胡。
2、起手胡是幾種特殊牌型,當麻友們正好起手擁有這幾種牌型,即可算做胡牌,(算完後繼續打牌)。
3、起手一共分為4種番型,分別是四喜、板板胡、缺一門、六六順。
4、四喜:起手手中有四張一樣的牌。
5、板板胡:起完牌後,手中沒有一張花色的2、5、8將牌。
6、缺一色:起手手上筒索萬任意缺一門。
7、六六順:起手手中有2個刻字。
牌型
1、爛鬍子:就是屁胡+1番。
2、全球人:四副牌全是吃碰杠,胡他家打出的牌,6番。
3、碰碰胡:不必詳細解釋,一般麻友都懂,6番。
4、清一色:同一花色牌胡牌,不需要2、5、8做將,也是6番。
5、七對:手中7個對子自摸胡牌,6番。