4.1. Các phƣơng pháp giải bài toán tối ƣu đơn mục tiêu
Có nhiều phương pháp giải bài toán tối ưu đơn mục tiêu. Dưới đây trình bày một số phương pháp thông dụng như sau [36]:
- Phương pháp đồ thị: Phương pháp đồ thị chỉ giải bài toán đơn mục tiêu gồm hai biến. Để đạt được kết quả tối ưu của bài toán này bằng cách vẽ bởi các điều kiện ràng buộc và hàm mục tiêu.
- Phương pháp biến đổi đơn hình: Phương pháp này được đưa ra bởi George B. dantzig vào năm 1947. Đây là phương pháp phổ biến và hiệu quả nhất để giải bài toán quay hoạch tuyến tính. Với phương pháp này có thể giải bài toán tối ưu đến hàng nghìn biến.
- Phương pháp Gradien
Cho hàm mục tiêu f(x) với n biến: x1, x2, …, xn. Khi đó véc tơ Gradien của hàm f(x) tại điểm x* có dạng [41]: T n x x f x x f x x f x f ( *) ( ), ( ),..., ( ) * 2 * 1 *
Hình 4.1: Véc tơ Gradien cho hàm f(x1, x2, x3) tại điểm x*
Phương pháp Gradien cho độ hội tụ nhanh bởi vì véc tơ Gradien chỉ ra hướng tăng nhanh nhất hoặc hướng giảm nhanh nhất của hàm mục tiêu tại x*.
- Phương pháp Lagrange
Phương pháp này chuyển từ bài toán tìm cực trị của hàm f(x) thành tìm nghiệm của hệ phương trình đạo hàm riêng của hàm f(x) theo các biến số. Phương pháp Lagrange cũng cho sự hội tụ nhanh, tuy nhiên nó có hai nhược điểm đó là: (i) khi số biến lớn thì rất khó nhận được các đạo hàm dưới dạng giải tích; (ii) thời gian chuẩn bị bài toán lâu.
Mặc dù phương pháp này nhận được lời giải chậm hơn nhưng lại thỏa đáng theo quan điểm sử dụng vì các phương pháp này có thuật giải đơn giản, dễ lập trình trên máy.
- Phương pháp lát cắt vàng
Phương pháp lát cắt vàng rất hiệu quả cho việc tìm cực tiểu của hàm một biến. Nội dung của phương pháp này được miêu tả như sau [36]:
Để tìm cực tiểu của hàm f(x) trong một khoảng đã cho, hàm được ước lượng nhiều lần và tìm kiếm một cựu tiểu địa phương. Để giảm bớt số lượng hàm đánh giá thì cách tốt nhất để xác định hàm f(x) đã được tìm thấy và một tỷ lệ gọi là lát vắt vàng được cho bởi (lát cắt vàng là r = (51/2
- 1)/2). Để sử dụng phương pháp này, hàm phải có một cực tiều thích hợp trong khoảng đã cho.
Nếu hàm f(x) là một mối trên [a,b] thì có thể xảy ra thay thế khoảng đã cho bằng một khoảng con mà f(x) đảm nhiệm giá trị cực tiểu của nó. Để tìm kiếm lát cắt vàng hai điểm trong gồm c = a + (1-r).(b - a) và d = a + r.(b - a) được yêu cầu. Kết quả sẽ có a < c < d < b. Hàm f(x) là một mối, giá trị của hàm f(c) và f(d) nhỏ hơn so với max f a ,f b. Từ điều này, có hai trường hợp để xem xét được chỉ ra trên hình 4.2.
Nếu f(c) < f(d) thì ở đó phải là cực tiểu trong khoảng con [a,d] và khi thay thế b với d và tiếp tục sự tìm kiếm trong khoảng con mới. Nếu f(d) < f(c) thì giá trị cực tiểu phải xuất hiện trong khoảng [c,b]. Trong trường hợp này a sẽ được thay thế bởi c và sự tìm kiếm sẽ được tiếp tục.
Hình 4.2: Phương pháp lát cắt vàng [35]:
(a)nếu f(c)< f(d) thì sử dụng đoạn[a,d]; (b) nếu f(d)< f(c) thì sử dụng đoạn[c,b]
- Phương pháp tìm kiếm trực tiếp
Robert Hooke and T. A. Jeeves đã đưa ra phương pháp tìm kiếm trực tiếp vào năm 1961 [42]. Nội dung của phương pháp này là ở mỗi bước chỉ biến đổi một biến, còn các biến khác để nguyên cho tới khi nào đạt giá trị cực tiểu ứng với biến đã biến đổi thì mới biến đổi. Đặc điểm của phương pháp này đơn giản, tuy nhiên sự hội tụ rất lâu với những bài toán phức tạp.
4.3. Lựa chọn phƣơng pháp giải bài toán tối ƣu đơn mục tiêu
Qua phân tích, tác giả đã chọn phương pháp tìm kiếm trực tiếp là phương pháp để giải các bài toán tối ưu đơn mục tiêu. Sở dĩ như vậy là vì phương pháp này cho phép giải đơn giản, dễ làm. Hơn nữa, các hàm mục tiêu đã xây dựng cũng khá đơn giản (chỉ gồm hai biến) nên sử dụng phương pháp này cũng cho hội tụ nhanh.
Hình 4.3: Sơ đồ thuật toán của phương pháp tìm kiếm trực tiếp
j = j+1 f = f(x1, x2) x1(i), x2(j) i = i+1 fmin end end