複製鏈接
請複製以下鏈接發送給好友

隨機跳躍法

鎖定
隨機跳躍法(random jump method)是利用隨機數尋求最優點的一種搜索方法。設要求f(x)的極小點,x=(x1,x2,…,xn)T∈Rn,li≤xi≤ui(i=1,2,…,n),式中li和ui為變量xi(i=1,2,…,n)的上限和下限.再設n個隨機數r1,r2,…,rn在0和1之間均勻分佈,應用每組隨機數求x:x=(x1,x2,…,xn)T=(l1+r1(u1-l1),l2+r2(u2-l2),…,ln+rn(un-ln))T,並計算f(x),取使f(x)最小的x,它就作為所求的極小點 [1] 
中文名
隨機跳躍法
外文名
random jump method
所屬學科
數學
簡    介
利用隨機數尋求最優點的搜索方法

隨機跳躍法基本介紹

隨機搜索法是基於用隨機數去尋找極小點。由於大多數計算機的程序庫都具有隨機數發生子程序,所以使用隨機搜索法是很方便的,隨機跳躍法是隨機搜索法的一種。
求解的問題為在n維超立方體內n維函數
的極小,超立方體的定義為
式中,
分別為變量
的下界和上界。在隨機跳躍法中,要產生多組n個隨機數
,這些隨機數均勻分佈在0和1之間。而每一組隨機數
都可被用來構造由式(1)所定義的超立方體內的一個點X,即
並可求出X點的函數值
。通過生成大量的點和計算相應點的目標函數值,最後可取其中使
為最小的點作為所要求的極小點 [2] 

隨機跳躍法例題解析

【例1】用隨機跳躍法求
的極小值。假定
的範圍為
產生的隨機數和所對應的設計變量值及目標函數值由表1所給出(為節省篇幅,表中僅列舉了使目標函數值有改善的數據)。表中可以看出已搜索了10000次。
雖然隨機跳躍法很簡單,但對變量很多的問題不實用,僅適用於效率不重要的場合 [2] 
表 1<br>
試驗序號
隨機數
對應的設計變量
(1)
(2)
x1
x2
1
0.12606
0.63946
-7.47887
2.78913
67.65904
3
0.42469
0.84082
-1.50612
6.81649
22.14585
13
0.33082
0.86722
-3.38357
7.34448
16.40928
21
0.29605
0.69995
-4.07908
3.99909
8.56712
23
0.47964
0.51831
-0.40723
0.36612
-0.60582
118
0.42872
0.60919
-1.42552
2.18379
-1.00223
1238
0.43523
0.57343
-1.29534
1.46852
-1.05596
1836
0.43380
0.59430
-1.32398
1.88601
-1.14119
2451
0.44137
0.58901
-1.17266
1.78015
-1.20863
8573
0.44690
0.57240
-1.06193
1.44792
-1.23317
10000
無改進




正確解
——
——
-1.00000
1.50000
-1.25000
參考資料
  • 1.    數學辭海編輯委員會.數學辭海·第五卷:中國科學技術出版社,2002
  • 2.    盧險峯.最優化方法應用基礎:同濟大學出版社,2003年08月第1版:第85頁