Tối đa hóa hàm lồi (tối thiểu hóa hàm lõm) với ràng buộc tuyến tính


10

Vấn đề là

maxf(x) subject to Ax=b

trong đó f(x)=i=1N1+xi4(i=1Nxi2)2 ,
x=[x1,x2,...,xN]TRN×1
ARM×N

Chúng ta có thể thấy rằng f(.) Ở dạng 1+y2 và là một hàm lồi.
Cũng có thể chỉ ra rằng f (.) Được giới hạn trong [2,2] .

Đây là một vấn đề tối thiểu hóa lồi với một ràng buộc tuyến tính.

Các thuật toán tiêu chuẩn được sử dụng để giải quyết các loại vấn đề này là gì?

Sử dụng bản chất cụ thể của vấn đề, có thể giải quyết nó bằng bất kỳ phần mềm / gói tối ưu hóa tiêu chuẩn nào không?


Bạn đã thử sử dụng hệ số nhân Lagrange để xem liệu điều đó có biến đổi nó thành một thứ gì đó dễ điều khiển hơn không?
Nathaniel

Câu trả lời:


7

Bạn có thể tận dụng cấu trúc của vấn đề, mặc dù tôi biết không có người giải quyết đóng gói sẵn sẽ làm điều đó cho bạn.

Về cơ bản, những gì bạn đang tìm kiếm là tối thiểu hóa một hàm lõm trên một đa giác lồi (hoặc đa diện lồi). Một tìm kiếm nhanh đã đưa ra một số nguồn có liên quan (tôi mơ hồ nhớ một trong những nguồn này được đề cập khi tôi tham gia một lớp học về lập trình phi tuyến hơn bốn năm trước):

Falk, JE, và Hoffman, tối thiểu hóa lõm KL thông qua các đa giác sụp đổ , Research Research, 1986, Vol. 34, số 6, tr. 919-929.

Hoffman, KL Một phương pháp để giảm thiểu các hàm lồi trên toàn cầu so với các tập lồi , Lập trình toán học, 1981, Vol. 20, tr. 22-31.

Benson, HP Một thuật toán hữu hạn để giảm thiểu lõm qua khối đa diện , Naval Research Logistics, 1985, Vol. 32, số 1, tr. 165-177.

Một loạt các tài liệu tham khảo trên trang web của Barshe Meyer .

Có nhiều nguồn hơn nếu bạn Google "thu nhỏ chức năng lõm trên polytope" (hoặc thay thế "polytope" bằng "polyhedron").


2

Tôi đã tham dự một vài năm trước một bài giảng về tối ưu hóa. Trước đó, chúng tôi đã sử dụng Matlab kết hợp với YALMIP.

Wiki YALMIP


1

Vấn đề này có thể được coi là một sự khác biệt của vấn đề lập trình hàm lồi (DC). Có một tài liệu phong phú về lập trình DC, bạn có thể tìm kiếm các nghiên cứu liên quan ở đó. Một trong những phương thức được biết đến nhiều nhất là phương pháp DCA, xem ví dụ: http://lma.univ-pau.fr/meet/mamern09/en/Lethi-MAMERN09.pdf

Một bài báo gần đây khảo sát tài liệu DC ở một mức độ nào đó và có thể có ích là: https://arxiv.org/pdf/1511.01796.pdf

Bạn cũng có thể sử dụng một số phương pháp tổng quát hơn cho các vấn đề không liên quan, ví dụ: phương pháp dựa trên prox được đưa ra trong: http://num.math.uni-goettingen.de/~ssabach/BST2013.pdf


0

Tôi sẽ cung cấp thuật toán Frank Wolfe và các phương pháp liên quan để bạn xem xét. Về cơ bản, bạn tuyến tính hóa hàm mục tiêu và giải quyết LP kết quả ở mỗi lần lặp. Tuy nhiên, tôi nghĩ rằng bạn sẽ cần thêm giới hạn trên để làm cho phương pháp này hiệu quả.x

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.