Trong trường hợp hoặc hàm mục tiêu hoặc một trong số các ràng buộc là phi tuyến, chúng ta có BTQHPT. Trong các mô hình tối ưu dựa trên BTQHPT nói chung, và trong các mô hình tối ưu trong lĩnh vực nông nghiệp nói riêng, lời giải tối ưu toàn cục có một ý nghĩa quan trọng. Chẳng hạn trong thiết kế máy nông nghiệp, sau khi dùng phương pháp phân tích hồi quy nhiều chiều, ta thường thu được hàm mục tiêu có dạng phi tuyến. Các bài toán tối ưu toàn cục cũng có thể nảy sinh trong quy hoạch kinh tế –
sinh thái vùng, hay xác định cơ cấu đất canh tác – cây trồng. Bài toán đặt ra là phải tìm được lời giải tối ưu toàn cục. Có rất nhiều phương pháp giải các lớp bài toán tối ưu phi tuyến riêng biệt, nhưng chưa có phương pháp nào tỏ ra hữu hiệu cho mọi bài toán tối ưu phi tuyến, đặc biệt là cho các bài toán với một số hay tất cả các biến quyết định nhận các giá trị nguyên (Nguyễn Hải Thanh, 2007).
Những năm gần đây trong lĩnh vực nông, lâm nghiệp đã có rất nhiều công trình nghiên cứu ứng dụng toán học và các mô hình toán học. Một số nghiên cứu bao gồm:
- Ứng dụng mô hình bài toán quy hoạch trong việc sử dụng đất của nông hộ trên địa bàn huyện Trùng Khánh, tỉnh Cao Bằng. Luận văn thạc sỹ khoa học. Trường đại học Nông Nghiệp I, Hà Nội (Nguyễn Tuấn Anh, 2004).
- The Integration of GIS and Fuzzy AHP-Group for Land Suitability Analysis, presented at the 10th Annual Asian Conference and Exhibition on Geospatial Information, Technology & Application: Geospatial Convergence –Paradigm for Future, Jakarta, Indonesia, 17-19 Oct. 2011 (Le Canh Dinh, Tran Trong Duc 2011). - Đánh giá thích nghi đất đai và ứng dụng mô hình toán tối ưu đa mục tiêu làm cơ sở cho quy hoạch sử dụng đất nông nghiệp tại huyện Cờ Đỏ - Thành phố Cần Thơ. Trường Đại học Cần Thơ ( Nguyễn Hữu Kiệt, 2013).
- Ứng dụng GIS và AHP trong quy hoạch phát triển cao su tại huyện Thuận Châu, tỉnh Sơn La. Trường Đại học Tây Bắc ( Nguyễn Tiến Chính, 2014).
Ngoài các ứng dụng trên, các vấn đề nghiên cứu cụ thể (study cases) cũng được nhiều tác giả nghiên cứu và triển khai trong thực tế và mang lại lợi ích thiết thực, cho thấy tầm quan trọng của việc ứng dụng các mô hình bài toán tối ưu trong việc giải quyết các vấn đề thực tế.
Các kết quả đạt được trong các nghiên cứu trên là tương đối khả quan. Đây chính là cơ sở cho việc ứng dụng toán học và các mô hình toán học nhằm phát triển nông nghiệp nói riêng cũng như phát triển kinh tế - xã hội nói chung.
Các phương pháp tối ưu toán học có thể áp dụng trong các lĩnh vực nông nghiệp rất đa dạng cũng như trong hầu hết các lĩnh vực kinh tế, xã hội khác. Một vấn đề được đặt ra khi thiết lập các mô hình bài toán tối ưu là phải xác định rõ các yêu cầu, các mục tiêu cụ thể cần đạt tới, các điều kiện hạn chế (ràng buộc) của bài toán, các yếu tố đầu vào cần xem xét cũng như phải bỏ ra nhiều công sức để thu thập các dữ liệu thực tế đa dạng với độ tin cậy cao đồng thời cũng cần phải lựa chọn một phương pháp tối ưu toán học phù hợp làm công cụ để giải quyết mô hình bài toán.
Trong các bài toán kỹ thuật, công nghệ, quản lý kinh tế, nông nghiệp v.v... nảy sinh từ thực tế, chúng ta thường phải xem xét đồng thời một lúc nhiều mục tiêu. Các mục tiêu này thường là khác về thứ nguyên, tức là chúng được đo bởi các đơn vị khác nhau. Những tình huống như vậy tạo ra các bài toán đa mục tiêu. Người kỹ sư/người ra quyết định lúc này cần phải tối ưu hoá (cực đại hoá hoặc cực tiểu hoá tuỳ theo tình huống thực tế) không phải là chỉ một mục tiêu nào đó, mà là đồng thời tất cả các mục tiêu đã đặt ra (Nguyễn Hải Thanh, 2007).
Tuy nhiên, các mục tiêu này thường đối chọi cạnh tranh với nhau. Việc làm tốt hơn mục tiêu này thường dẫn tới việc làm xấu đi một số mục tiêu khác. Vì vậy việc giải các bài toán tối ưu đa mục tiêu, tức là tìm ra một phương án khả thi tốt nhất theo một nghĩa nào đó, thực chất chính là một bài toán ra quyết định. Có thể thấy lại ở đây một lần nữa khẳng định "Tối ưu hoá chính là một công cụ định lượng chủ yếu nhất của quá trình ra quyết định".
Hiện tại các tài liệu, sách chuyên khảo, tạp chí cập nhật về các lĩnh vực liên ngành giữa Toán, Vận trù học, Khoa học Quản lý, Tin học, Công nghệ, Kinh tế, Nông nghiệp,... đề cập rất nhiều tới bài toán tối ưu đa mục tiêu. Vấn đề nghiên cứu cơ sở lý thuyết, thuật toán, lập mô hình, xây dựng hệ máy tính trợ giúp quyết định, và áp dụng các mô hình tối ưu đa mục tiêu cho các quá trình công nghệ, quản lý,... là một vấn đề liên ngành được rất nhiều nhà nghiên cứu khoa học và kĩ sư thực hành quan tâm. Mô hình tối ưu đa mục tiêu có dạng sau đây:
Min fj(X), X = (x1, x2, …, xn) j = 1, 2, …, p (p ≥2) với: (i) gj(X) ≤ 0, j = 1, 2, …, k,
(ii) gj(X) = 0, j = k+1, k+2, …, m,
Trong các bài toán thực tế có thể bổ sung các ràng buộc đạng: (iii) ai ≤ xi ≤ bi, i = 1, 2, …, n.
Trong mô hình này, ta có p mục tiêu cần tối ưu hoá, các hệ số của các hàm mục tiêu và ràng buộc nói chung được giả sử là các giá trị thực xác định (cũng gọi là giá trị rõ). Trong trường hợp có ít nhất một trong các hàm mục tiêu hay các hàm ràng buộc là hàm phi tuyến, chúng ta có bài toán quy hoạch đa mục tiêu phi tuyến. Còn nếu tất cả các hàm mục tiêu và các hàm ràng buộc đều là hàm tuyến tính, chúng ta có mô hình quy hoạch tuyến tính đa mục tiêu với dạng chính tắc như sau:
Min CX với ràng buộc X ∈ D, trong đó:
D = { X ∈ Rn
: AX ≤ B, X ≥ 0 } với A là ma trận cấp m x n và B ∈Rm
1.4.6 Các khái niệm cơ bản của bài toán tối ưu đa mục tiêu:
Khái niệm then chốt trong tối ưu hoá đa mục tiêu là khái niệm phương án tối ưu Pareto.
Định nghĩa 1: Một phương án tối ưu Pareto X* có tính chất sau đây:
i) Trước hết nó phải thuộc vào miền các phương án khả thi của bài toán, tức là phải thoả mãn tất cả các ràng buộc: X* ∈ D.
ii) Với mọi phương án khả thi khác X ∈ D mà có một mục tiêu nào đó tốt hơn (tồn tại
chỉ số i sao cho fi(X) tốt hơn fi(X*)) thì cũng phải có ít nhất một mục tiêu khác xấu hơn (tồn tại j ≠ i sao cho fj(X) xấu hơn fj (X*)).
Nói một cách khác, không tồn tại một phương án khả thi nào X ∈ D có thể trội hơn
X* trên tổng thể.
Định nghĩa 2: Giải bài toán tối ưu toàn cục đa mục tiêu là chọn ra từ tập hợp P các
phương án tối ưu Pareto của bài toán một (một số) phương án tốt nhất theo một nghĩa nào đó dựa trên cơ cấu ưu tiên của người ra quyết định. Các phương án như vậy còn được gọi là phương án thoả dụng.
Cách 1: Bằng một phương pháp tối ưu toán học thích hợp tìm ra tập hợp P tất cả các phương án tối ưu Pareto. Người ra quyết định sẽ đề ra cơ cấu ưu tiên của mình đối với tập P. Lúc này các phương pháp toán chẳng hạn như giải tích phân loại, các phương pháp lọc v.v... được áp dụng để tìm ra phương án tối ưu cho bài toán đa mục tiêu ban đầu.
Cách 2: Việc tìm tập hợp P trong trường hợp các bài toán tối ưu phi tuyến là khá khó, nếu không nói là không thể tìm được. Vì vậy, so với cách 1, cách 2 sẽ tiến hành theo trình tự ngược lại. Trước hết người ra quyết định sẽ đề ra cơ cấu ưu tiên của mình. Dựa vào cơ cấu ưu tiên đó, các mục tiêu sẽ được tổ hợp vào một mục tiêu duy nhất, tiêu biểu cho hàm tổng tiện ích của bài toán. Bài toán tối ưu với hàm mục tiêu tổhợp này sẽ được giải bằng một phương pháp tối ưu toán học thích hợp, để tìm ra một (hoặc một số) phương án tối ưu Pareto. Lúc này, người ra quyết định sẽ chọn ra trong số các phương án tối ưu Pareto đó một phương án tốt nhất.
Chúng ta sẽ tiếp tục phân tích cách thứ 2. Rõ ràng, người ra quyết định không thể đề ra cơ cấu ưu tiên của mình một cách chính xác ngay từ đầu. Trong quá trình giải bài toán, trong mỗi bước lặp, sau khi xem xét lại cơ cấu ưu tiên đã đề ra, cũng như phương án
tối ưu trung gian, người ra quyết định có thể dựa vào các thông tin đó để thay đổi lại cơ cấu ưu tiên của mình. Sau đó, quá trình giải lại được tiếp tục, cho tới khi một phương án tối ưu cuối cùng được đưa ra.
Định nghĩa 3: Phương pháp giải bài toán tối ưu dựa trên sự trợ giúp của hệ máy tính,
nhằm giúp người ra quyết định từng bước thay đổi các quyết định trung gian một cách thích hợp để đi tới một phương án tối ưu Pareto thoả mãn nhất, được gọi là phương pháp tương tác người - máy tính. Cho tới thời điểm hiện nay, hàng chục phương pháp giải tương tác bài toán tối ưu đa mục tiêu đã được đề cập tới trong các tạp chí chuyên ngành, và đa số chúng đều 10có những ứng dụng rất thành công trong nhiều lĩnh vực. Một trong các lớp phương pháp quan trọng và khá thuận tiện cho người sử dụng là phương pháp tương tác người - máy tính giải bài toán tối ưu đa mục tiêu với các yếu tố cấu thành sau:
- Cơ cấu ưu tiên của người ra quyết định và hàm tổ hợp tương ứng.
- Kiểu tương tác người - máy tính: các thông tin nào máy tính phải đưa ra lại trong các bước lặp trung gian, và cách thay đổi các thông số của cơ cấu ưu tiên từ phía người ra quyết định.
- Kỹ thuật tối ưu toán học được xây dựng dựa trên lý thuyết tối ưu hoá nhằm tìm ra các phương án tối ưu Pareto cho các bài toán cần giải trong các bước lặp trung gian.
1.4.7 Phương pháp thõa dụng mờ giải bài toán quy hoạch tuyến tính đa mục tiêu
Theo Nguyễn Hải Thanh (2007), phương pháp thõa dụng mờ là phương pháp nhằm đưa ra không phải chỉ một phương án tối ưu Pareto thõa mãn nhất mà là một tập SP các phương án tối ưu Pareto cần xem xét. Thuật giải thõa dụng mờ giải BTQHTT đa mục tiêu như sau:
a. Bước khởi tạo
Nhập số liệu cho các hàm mục tiêu tuyến tính Zi (i = 1, 2, ..., p) và m điều kiện ràng buộc cho bài toán cần giải. Giải BTQHTT cho từng mục tiêu Zi (i = 1, 2, ..., p) với miền ràng buộc D được xác định bởi m ràng buộc ban đầu để thu được các phương án tối ưu X1, X2,..., Xp (nếu với một mục tiêu nào đó bài toán không cho phương án tối ưu thì cần xem xét để chỉnh sửa lại các điều kiện ràng buộc ban đầu).
Tính các giá trị hàm mục tiêu tại các phương án tối ưu X1, X2, ..., Xp. Lập bảng thông tin, xác định giá trị cận trênZBi ,cận dưới Ziwcủa mục tiêu Z1, Z2, …, Zp. Với
B i
Z Zi(Xi) và Zwi = Min{Zi(Xj): j = 1,2, …, p}. Xác định các hàm thõa dụng mờ cho từng mục tiêu
µi(Zi) = w i B i w i i Z - Z Z - Z , i = 1, 2, …, p = Đặt: Sp = {X1, X2, ..., Xp}, k =1 và ai(k) = ZBi với i = 1, 2, …, p b. Các bước lặp (xét bước lặp thứ k) Bước 1:
Tiếp theo xây dựng hàm thõa dụng tổ hợp từ các hàm thõa dụng trên u = w1 µ1(Z1) + w2 µ2(Z2) + … + wp µp(Zp)
Trọng đó, w1, w2, …, wp là các trọng số, phản ánh tầm quan trọng của từng hàm thõa dụng trong thành phần hàm thõa dụng tổ hợp, được người giải lựa chọn thõa mãn điều kiện sau:
w1 + w2 + …+ wp = 1 và 0 ≤ w1, w2, …, wp ≤ 1
Giải bài toán tối ưu với hàm thõa dụng tổ hợp với các ràng buộc ban đầu và các ràng buộc bổ sung Zi(X) ≤ ai(k) với i = 1, 2, …, p để tìm ra phương án tối ưu của bước lập thứ k là X(k) và các giá trị của hàm mục tiêu Zi cũng như các hàm thỏa dụng µi(Zi) với i = 1, 2, …, p.
Bước 2:
Nếu µmin = Min {µi(Zi): j = 1, 2, …, p} thì phương án X(k) tìm được không chấp nhận được. Trong trường hợp phương án X(k) được chấp nhận vào tập Sp cácphương án tối ưu cần xem xét X(k) không thuộc Sp.
Nếu muốn tiếp tục mở rộng tập Sp thì đặt k = k + 1.
Nếu k > L1 hoặc số lần bước lặp liên tiếp tập Sp không được mở rộng vượt quá L2 (L1 và L2 được người giải tùy chọn) thì đặt Bi
) k (
i Z
a với i = 1, 2, …, p.
Chọn ngẫu nhiên một chỉ số h thuộc {1, 2, …, p} để đặt lại giá trị B
h w h ) k ( h Z ,Z a Quay về bước 1.
Nếu người giải bài toán không muốn mở rộng tập Sp thì chuyển sang bước 3.
Bước 3:
Loại khỏi tập Sp các phương án bị trội.
Kết thúc. Đưa ra các phương án tối ưu. Tuy nhiên, thường các mục tiêu thường cạnh tranh với nhau, khi đáp ứng mục tiêu này sẽ làm xấu mục tiêu khác. Do đó, việc giải bài toán tối ưu đa mục tiêu là hình thức đưa ra quyết định để tìm ra phương án khả thi nhất cân bằng các mục tiêu đơn lẻ theo quyết định của người làm quy hoạch.
1.4.8 Một số phầm mềm giải bài toán tối ưuPhần mềm Microsoft Excel Phần mềm Microsoft Excel
Microsoft Excel 2000, 2003 có các công cụ toán học rất mạnh để giải các bài toán tối ưu và thống kê toán học. Excel có thể giải được các loại bài toán tối ưu: BTQHTT tổng quát, các biến có thể có ràng buộc hai phía, ràng buộc cũng có thể viết ở dạng hai phía; bài toán vận tải có hai chỉ số; bài toán quy hoạch nguyên (các biến có điều kiện nguyên hay boolean); bài toán quy hoạch phi tuyến. Số biến của BTQHTT hay nguyên có thể lên tới 200 biến. Excel còn có thể giải các bài toán hồi quy trong thống kê toán học: hồi quy đơn, hồi quy bội, hồi quy mũ.
Dùng Solver ta có thể tìm cực đại hay cực tiểu của một hàm số đặt trong một ô gọi là ô đích. Solver chỉnh sửa một nhóm các ô (gọi là các ô có thể chỉnh sửa) có liên quan trực tiếp hay gián tiếp đến công thức nằm trong ô đích để tạo ra kết quả. Ta có thể thêm vào các ràng buộc để hạn chế các giá trị mà Solver có thể dùng. Đối với BTQHTT Solver dùng phương pháp đơn hình, đối với quy hoạch phi tuyến Solver dùng phương pháp tụt gradient để tìm một cực trị địa phương.
Phần mềm Lingo
Lingo là phần mềm giải các mô hình tối ưu hóa: tối ưu tuyến tính, tối ưu phi tuyến tính, tối ưu toàn phương, tối ưu ngẫu nhiên và tối ưu biến nguyên. Phần mềm Lingo giúp cho việc giải các bài toán này hiệu quả, dễ dàng và nhanh chóng. Phần mềm Lingo cung cấp gói tích hợp bao gồm một ngôn ngữ mạnh mẽ cho thể hiện mô hình tối ưu hóa, được sử dụng trong nhiều lĩnh vực xây dựng, công nghiệp, kinh tế,…
Phần mềm RST2ANU
Phần mềm RST2ANU 1.0 được sử dụng để giải các bài toán ưu toàn cục phi tuyến dạng tổng quát với các biến liên tục, các biến nguyên và cho các bài toán hỗn hợp nguyên. Quá trình xây dựng phương pháp tính toán tối ưu, thuật giải, cài dặt trên ngôn ngữ C và sau này là ngôn ngữ Visual C++ 6.0 cũng như chạy thử nghiệm kéo dài gần tám năm. Ngoài ưu điểm giải được các bài toán hỗn hợp nguyên, phần mềm có độ tin cậy rất cao trong việc tìm ra các phương án tối ưu toàn cục và có giao diện thân thiện đối với người sử dụng. Phần mềm đã được đóng gói tránh sao chép và có thể dùng để giải các bài toán lớn khi được cài đặt trên hệ máy tính mạnh.