Tải bản đầy đủ (.docx) (10 trang)

bài giảng về Tối ưu hóa

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (345.29 KB, 10 trang )

TỐI ƯU HĨA
I.
Khái niệm
- Tối ưu hóa là hoạt động có mục đích, nhằm có được kết quả tốt nhất (giá trị của
các tham số đối tượng) trong các điều kiện thích hợp.
- Tối ưu hóa gồm:
 Tìm cực trị của hàm đang được xét.
 Điều kiện tối ưu để thực hiện quy trình cơng nghệ
II.
Phân loại
- Tối ưu hóa một thơng số
- Tối ưu hóa nhiều thơng số
III. Trình tự thực hiện bài tooán tối ưu
B1: Chọn tiêu chuẩn tối ưu hóa
B2: Lập quan hệ (mơ hình tốn học) giữa hàm mục tiêu và các yếu tố khảo sát thơng qua
thí nghiệm hoặc các quy luật (cân bằng vật chất, cân bằng năng lượng, v.v) hoặc chuẩn số
thực nghiệm.
B3: Tìm thuật tốn (phương pháp tìm giá trị tối ưu) của mục tiêu.
IV.

Tiêu chuẩn tối ưu hóa

Các tiêu chí này cần định lượng được, duy nhất, kiểm tra và thực thi được. Tiêu chí đề ra
càng cao thì càng khó thực hiện.
 Chỉ tiêu công nghệ: năng suất, hiệu suất, v.v.
 Chỉ tiêu kinh tế: giá thành, chi phí năng lượng, chi phí nhân cơng, v.v.
 Chỉ tiêu kinh tế kỹ thuật (nếu đảm bảo chỉ tiêu kinh tế kỹ thuật sẽ thỏa được các
chỉ tiêu kinh tế).
 Chỉ tiêu khác như tâm lý, thẩm mỹ, môi trường, xã hội, v.v.
V.
Tối ưu hóa hàm một biến


1. Đặt vấn đề:
Tìm x để f(x)  Min, g(x)  Max
2. Yêu cầu:
-

Hàm f(x) có dạng giải tích

-

Biết khoảng khảo sát a,b]: trên [a,b] f(x) chỉ có 1 cực tiểu duy nhất

-

Sai số cho phép:  > 0 bé tùy ý

3. Phương pháp thực hiện
-

Phương pháp phân đôi


-

Phương pháp lát cắt vàng

-

Phương pháp dùng công cụ máy tính

4. Phương pháp nhân đơi

B1: Tìm khoảng chứa nghiệm [a;b] có 1 nghiệm duy nhất bằng cách vẽ đồ thị, chọn ε tùy
ý
B2: Tính c=

a+ b
2

B3: Biết c, yinhs giá trị x1 từ đó tính được giá trị f(x1) và f(x2) tương ứng
B4: So sánh giá trị f(x1) và f(x2)
Nếu f(x1) < f(x2) thì thay b bằng c, nếu f(x1) > f(x2) thì thay a bằng c
B5: Tính Δ = |b –a| mới tìm đượcb –a|b –a| mới tìm được mới tìm được
Nếu Δ < ε thì dừng thì ta coi 1 giá trị bất kỳ trên đoạn [a;b] là nghiệm. Nếu không, ta
quay trở lại bước 2 với giá trị a, b mới và tiếp tục xét



5. Phương pháp lát cắt vàng
Thế nào là lát cắt (tỷ số) vàng ?

AC BC
=
BC AB

Trong đó:
L= AC =

3−√ 5
=0,382
2


AC + BC = 1
L + 0,618 = 1
B1: Tìm khoảng chứa nghiệm [a;b] có 1 nghiệm duy nhất bằng cách vẽ đồ thị, chọn ε tùy
ý
B2: Tính L = a + 0,382.|b –a| mới tìm đượcb – a|b –a| mới tìm được
B3: Biết c, giá trị x1 từ đó tính được giá trị f(x1) và f(x2) tương ứng
B4: So sánh giá trị f(x1) và f(x2)
Nếu f(x1) < f(x2) thì thay b bằng L, nếu f(x1) > f(x2) thì thay a bằng L
B5: Tính Δ = |b –a| mới tìm đượcb – a|b –a| mới tìm được mới tìm được
Nếu Δ < ε thì dừng thì ta coi 1 giá trị bất kỳ trên đoạn [a;b] là nghiệm. Nếu không, ta
quay lại bước 2 và giá trị a, b mới và tiếp tục xét.


VI. Tối ưu hóa hàm nhiều biến
1. Đặt bài tốn
- Cần tìm cực trị ( cực tiểu) của hàm nhiều biến u = f( 𝑥1, x2, x3,…, xn)
- Cần tìm X* = 𝑥1*, x2*,x3*,…, xn* để f(X*)→ min
- Nếu cần tìm X* để g(X*) → Max thì đặt f(X) = -g(X).
- Tìm X* để f(X*) → Min cũng đồng nghĩa với việc tìm g(X*) → Max
2. Giả thiết
- F(X) có dạng giải tích
- Biết bộ giá trị X0 = 𝑥10, x20, …, xn0 gần đúng ban đầu
- Biết sai số cho phép : Ꜫ
3. Thực hiện
Bước 1: Tìm X0 : Bộ số gần đúng ban đầu
 Khơng có phương pháp chung cho mọi bài toán mà phụ thuộc nhiều vào kinh
nghiệm
 Trong ngành cơng nghệ hóa học thì:
o Nồng độ thường có giá trị từ 0 → 1.
o Các biến thường không âm, nghĩa là X ≥ 0.

Các biến trong quy hoạch thực nghiệm: 0, ±1, ± α
Bước 2: Tìm X* thông qua Xo theo 1 trong 3 phương pháp:



4.

Luân phiên từng biến
Phương pháp Gradient
Phương pháp dùng máy tính
Ví dụ

Tìm cực tiểu của hàm: f(x) = (x1 – 2 )4 + (x1 – 2 )2.x22 + (x2 + 1)2 bắt điểm đầu ở X0= [1;1]
với sai số Ꜫ = 10-6
4.1.

Phương pháp luân phiên từng biến

Bước 1: Xem x2 = const, ta tìm cực trị của hàm f(x1, 1)
Bước 2: Xem x1 = const, ta tìm cực trị của hàm f( 1, x2)
Bước 3:
 Nếu Δ = |b –a| mới tìm được x10 − x11|b –a| mới tìm được + |b –a| mới tìm đượcx20 − x21|b –a| mới tìm được > Ꜫ thì thay Xo bằng X và tiến hành vịng lặp kế
tiếp
 Nếu Δ = |b –a| mới tìm được x10 − x11|b –a| mới tìm được + |b –a| mới tìm đượcx20 − x21|b –a| mới tìm được < Ꜫ thì ta sẽ dừng vịng lặp và kết luận
 f(x1, 1) = f(x1, 1) = (x1 – 2 )4 + (x1 – 2 )2 + 4


f(x1, 1) min tại x1 = 2
 f( 1, x2) = (x2 + 1)2 + x22 + 1
f( 1, x2) min tại x2 = - 0,5

 Δ = |b –a| mới tìm được1-2|b –a| mới tìm được + |b –a| mới tìm được1-(-0,5)|b –a| mới tìm được = 2,5 > Ꜫ
→ Tiến hành vòng lặp kế tiếp với X1 = (2,-0.5)
Thực hiện tương tự với X1 = (2,-0.5)
f(x1, x2 ) min tại X2 = (2,-1)
Δ = |b –a| mới tìm được2-2|b –a| mới tìm được + |b –a| mới tìm được-0,5 – (-1)|b –a| mới tìm được = 0,5 > Ꜫ
→Tiến hành lặp lần 3 với X2 = (2,-1)
f(x1, x2 ) min tại X3 = (2,-1)
Δ = |b –a| mới tìm được2-2|b –a| mới tìm được + |b –a| mới tìm được-1 – (-1)|b –a| mới tìm được = 0 < Ꜫ = 10-6 → Dừng lặp

Kết quả:
Sau 3 lần lặp, Δ=0 < Ꜫ → Dừng lặp
f(x)min = 0 tại x1 = 2 , x2 = -1
4.2.

Phương pháp Gradient

Thuật toán gradient:
Biết hàm: f(X) với giá trị gần đúng ban đầu: X0 = X10, X20,... Xn0


Tính:
 xi,k+1 = xi,k ∓ h ∇ f ( Xi,k)
 với: dấu – tìm min cịn dấu + tìm max
 h là khoảng cách từ O đến Xk

4.2.1. Phương pháp Newton
YÊU CẦU: Hàm mục tiêu có đạo hàm cấp 2 liên tục
BƯỚC KHỞI TẠO: Chọn sai số số ε > 0 . Lấy 1 điểm xuất phát X0
BƯỚC LẶP THỨ K:
Điều kiện dừng: |b –a| mới tìm đượcf(Xk+1) – f(Xk)|b –a| mới tìm được < ε

Thực hiện:
S K =−∇ f (X ¿¿ k) ¿
 Chọn vector chỉ hướng ⃗
 Phương pháp Newton truyền thống: không sử dụng bước nhảy h do khơng có
vecto chỉ phương Sk để tính bước nhảy nên h = 1 với mọi phép lặp
−1
 Tính Sk theo công thức: X k+1= X k −h k [ ∇2 ( X )k ] ∇ f ( X k )
 Kiểm tra điều kiện. Nếu thỏa điều kiện thì dừng phép lặp. Nếu khơng thì tiếp tục
thực hiện phép lặp.
4.2.2. Phương pháp đường dốc nhất
4.2.3. Ưu điểm: chỉ cần 1 vector gradient tại điểm làm vector chỉ phương, kết hợp
vector gradient là vector chỉ hướng thay đổi nhanh nhất của hàm số → Bài toán
tiến rất nhanh.


Ưu điểm: chỉ cần 1 vector gradient tại điểm làm
vector chỉ phương, kết hợp vector gradient là vector
chỉ hướng thay đổi nhanh nhất của hàm số → Bài
toán tiến rất nhanh.

- BƯỚC KHỞI TẠO: Chọn sai số ε > 0. Lấy 1 điểm xuất phát Xo.
- BƯỚC LẶP THỨ k:
Điều kiện dừng: |b –a| mới tìm được|b –a| mới tìm được ∇ f (Xk)|b –a| mới tìm được|b –a| mới tìm được < ε, với
¿

Thực hiện:
S K =−∇ f (X ¿¿ k) ¿
 Chọn vector chỉ hướng ⃗
 Chọn bước nhảy h là khoảng cách ngắn nhất từ toạn độ đầu Xo đến Xk bằng cách
Sk )

thực hiện bài toán cực tiểu hàm 1 biến f(Xk + hk⃗
 Kiểm tra điều kiện |b –a| mới tìm được|b –a| mới tìm được∇ f(Xk)|b –a| mới tìm được|b –a| mới tìm được < ε. Nếu thỏa điều kiện thì dừng phép lặp. Nếu khơng
thì tiếp tục thực hiện phép lặp.
VII. Lập mơ hình bài tốn tối ưu

Các bước lập mơ hình
Bước 1. Đặt ẩn và xác định điều kiện cho từng ẩn.
Bước 2. Xác định các điều kiện ràng buộc giữa các ẩn.
Bước 3. Xác định hàm mục tiêu
Bước 4. Hoàn thiện mơ hình


Giải bài toán

-

X = (x
x f(X)
) thỏa
(2), (3) => X là 1 phương
1, xmục
2,…,
Hàm
tiêu: n
→ Max/Min
án.

Mơ hình tốn học

-


Phương án X được gọi là phương án tối ưu (PATU)
nếu
X thoả
Hệ ràng
buộc cả (1).

Ràng buộc chính

* Giải bài tốn QHTT là đi tìm PATU.
Ràng buộc dấu

Mơ hình của bài tốn QHTT dạng tổng quát



Giải bài toán
-

X = (x1, x2,…, xn) thỏa (2), (3) => X là 1 phương án.

-

Phương án X được gọi là phương án tối ưu (PATU) nếu X thoả cả (1).

* Giải bài tốn QHTT là đi tìm PATU.
Mơ hình của bài tốn QHTT dạng chính tắc
QHTT dạng CHÍNH TẮC = QHTT dạng TỔNG QUÁT + 2 Điều kiện
Điều kiện 1: Các ràng buộc chính (2) là các phương trình
Điều kiện 2: các ràng buộc dấu (3) thỏa x j ≥ 0 ∀ j=1 ´,n (thực tế luôn thỏa)

* Xử lý ràng buộc chính
-

Trường hợp 1: Mang dấu “≥”
Thêm vào bài toán ẩn phụ dương với dấu “−” trước ẩn


-

Trường hợp 2: Mang dấu “≤”
Thêm vào bài toán ẩn phụ dương với dấu “+” trước ẩn

Mơ hình của bài tốn QHTT dạng chuẩn
QHTT dạng chuẩn = QHTT dạng chính tắc + 2 điều kiện
Điều kiện 1: Các hệ số tự do của ràng buộc chính (2) khơng âm: b i ≥ 0 ∀ i=1 ,´m (thực tế
luôn thỏa)
Nếu bi < 0, tiến hành đổi dấu của ràng buộc chính thứ i tương ứng.
Điều kiện 2: Ma trận hệ số A của ràng buộc chính (2) có đủ m cột đơn vị
-

Nếu ma trận A thiếu cột đơn vị thứ k thì thêm vào bài tốn ẩn giả xn+k ≥ 0 và
cộng vào ràng buộc chính thứ k
Hàm mục tiêu thay đổi như sau:
Đối với bài toán min: f(x) = f(x) + M(ẩn giả)
Đối với bài toán max: f(x) = f(x) – M(ẩn giả)
Vói M vơ cùng lớn




×