SlideShare a Scribd company logo
1 of 20
平行粒子群最佳化應用於桁架
結構設計
指導老師:洪士林 教授
學生:洪銘澤
1
 背景
平行運算
最佳化
 動機
 目的
 方法
 測試案例
大綱
2
 一般傳統連續程式
 平行運算利用多核心處理
平行運算
3
待解問題
tN ‧‧‧ ‧‧‧ t2 t1 t0
處理器
指令待解問題
tN ‧‧‧ ‧‧‧ t2 t1 t0
處理器
處理器
處理器
4
國道一號泰山收費站
最佳化
5
 最佳化早期使用梯度作為搜尋方向的根據
優點:收斂快計、算量小
缺點:容易掉入局部最佳解
最佳化
6
0
10
20
30
40
50
60
70
80
90
100
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
搜尋初始點示意圖
 又稱仿生最佳化
 常見非傳統最佳化
粒子群最佳化(PSO)
基因演算法(GA)
蟻群演算法(ACO)
模擬退火眼算法(SA)
調和搜尋演算法(HS)
禁制搜尋法(TS)
非傳統最佳化
7
 1995年由學者Eberhart和Kennedy提出粒子群最
佳化(Particle Swarm Optimization, PSO)
 模擬動物群體行為的最佳化演算法
粒子群最佳化
8
 背景
 動機
為何需要平行運算
最佳化演算法缺點
 目的
 方法
 測試案例
大綱
9
 節省時間
利用更多核心減少運算時間
 解決大計算量的問題
結構最佳化、模擬流體、或氣象。
 更有效率地運用硬體
核心數增加
為何需要平行運算
10
 粒子群最佳化
大量迭代次數
大量粒子搜尋
 目標函數
本身計算量
多個局部最佳解
最佳化演算法缺點
11
 背景
 動機
 目的
 方法
 測試案例
大綱
12
 妥善利用電腦硬體
利用多執行緒達到平行運算效果
 減少運算時間
目的
13
 背景
 動機
 目的
 方法
OpenMP
粒子群最佳化
 測試案例
大綱
14
Open specification for Multi-Processing
 應用程式介面(API)
多執行緒
共享記憶體
 適用性
C/C++和Fortran
 Fork-Join模型
 編譯器指導指令基礎(compiler directive based)
OpenMP
15
Fork-Join
16
A B C A B C D A B
A
B
C
D
A
B
C
A
B
粒子群最佳化
17
粒子群最佳化
18
粒子群最佳化
19
20

平行粒子群最佳化應用於桁架結構