日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

遺傳算法介紹并附上Python代碼

系統 1861 0

之前介紹過遺傳算法,參見:https://www.cnblogs.com/LoganChen/p/7509702.html

我們用Python實現同樣的問題解答。

y=10*sin(5*x)+7*abs(x-5)+10

我們來求這個函數在0-10之間的最大值。

先來看一下這個函數的圖像:

            
              import
            
            
               numpy as np

            
            
              import
            
            
               matplotlib.pyplot as plt

            
            
              """
            
            
              
**Colors**

        The following color abbreviations are supported:

        =============    ===============================
        character        color
        =============    ===============================
        ``'b'``          blue
        ``'g'``          green
        ``'r'``          red
        ``'c'``          cyan
        ``'m'``          magenta
        ``'y'``          yellow
        ``'k'``          black
        ``'w'``          white
        =============    ===============================

        If the color is the only part of the format string, you can
        additionally use any  `matplotlib.colors` spec, e.g. full names
        (``'green'``) or hex strings (``'#008000'``).

        **Markers**

        =============    ===============================
        character        description
        =============    ===============================
        ``'.'``          point marker
        ``','``          pixel marker
        ``'o'``          circle marker
        ``'v'``          triangle_down marker
        ``'^'``          triangle_up marker
        ``'<'``          triangle_left marker
        ``'>'``          triangle_right marker
        ``'1'``          tri_down marker
        ``'2'``          tri_up marker
        ``'3'``          tri_left marker
        ``'4'``          tri_right marker
        ``'s'``          square marker
        ``'p'``          pentagon marker
        ``'*'``          star marker
        ``'h'``          hexagon1 marker
        ``'H'``          hexagon2 marker
        ``'+'``          plus marker
        ``'x'``          x marker
        ``'D'``          diamond marker
        ``'d'``          thin_diamond marker
        ``'|'``          vline marker
        ``'_'``          hline marker
        =============    ===============================

        **Line Styles**

        =============    ===============================
        character        description
        =============    ===============================
        ``'-'``          solid line style
        ``'--'``         dashed line style
        ``'-.'``         dash-dot line style
        ``':'``          dotted line style
        =============    ===============================

            
            
              """
            
            
              
x 
            
            = np.arange(0,10,0.05
            
              )
y 
            
            = 10*np.sin(5*x)+7*np.abs(x-5)+10
            
              
plt.figure(figsize
            
            =(8,4
            
              ))
plt.plot(x,y,color
            
            =
            
              "
            
            
              green
            
            
              "
            
            ,linestyle=
            
              '
            
            
              dashed
            
            
              '
            
            ,linewidth=1
            
              )

            
            
              #
            
            
               plt.plot(x, y, color='green', marker='o', linestyle='dashed',linewidth=2, markersize=12)
            
            
plt.xlabel(
            
              "
            
            
              x
            
            
              "
            
            
              )
plt.ylabel(
            
            
              "
            
            
              y
            
            
              "
            
            
              )
plt.ylim(0,
            
            56
            
              )

            
            
              #
            
            
               plt.title("y=10*sin(5*x)+7*abd(x-5)+10")
            
            
plt.title(
            
              "
            
            
              $y=10*sin(5*x)+7*abs(x-5)+10$
            
            
              "
            
            
              )
plt.show()
            
          

函數圖像如圖:

遺傳算法介紹并附上Python代碼_第1張圖片

我們對種群進行編碼,我們也使用二進制編碼,二進制編碼長度為10.

?


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 永仁县| 庆元县| 富川| 酉阳| 额济纳旗| 靖西县| 大厂| 道真| 乌拉特中旗| 木里| 中宁县| 通渭县| 潮安县| 错那县| 山西省| 渭南市| 遂溪县| 金阳县| 陆河县| 环江| 南昌县| 申扎县| 会宁县| 龙江县| 荃湾区| 昆山市| 浮梁县| 抚宁县| 昌宁县| 衡阳县| 甘孜| 清徐县| 唐海县| 开平市| 龙岩市| 屏边| 南乐县| 定日县| 瑞丽市| 晋中市| 肇庆市|