Constrained Optimization library for equality and inequality constraints


14

Có đề xuất nào cho việc lựa chọn thư viện tối ưu hóa bị ràng buộc phù hợp với chức năng tối ưu hóa của tôi không? Tôi đang giảm thiểu ai) hàm phi tuyến tính với các ràng buộc tuyến tính và bất đẳng thức tuyến tính, và ii) có sẵn độ dốc và độ trễ của hàm.

Nếu nó giúp, chức năng tôi đang giảm thiểu là phân kỳ Kullback-Liebler .

constrOptim chỉ giải quyết các ràng buộc bất bình đẳng. Quadprog xử lý tứ giác . Sự tin tưởng không hỗ trợ các ràng buộc. Vì vậy, phân kỳ KL không phù hợp với các giải pháp này.

Có khá nhiều giải pháp trên trang R Cran Task để Tối ưu hóa . Iam có thể thực hiện tối ưu hóa trong MATLAB bằng cách sử dụng hàm fmincon () dường như sử dụng điểm bên trong hoặc phản chiếu theo vùng tin cậy. Lý tưởng nhất là có một thư viện rất phù hợp với vấn đề được xác định.


Là những hạn chế tuyến tính?
hồng y

@cardinal - có - các ràng buộc là tuyến tính
Ram Ahluwalia

2
Vì vậy, nếu các ràng buộc bình đẳng của bạn là Mộtx= =b, Ít nhất là một công việc xung quanh cho constrOptimsẽ bao gồm cảMộtxbMộtxb. Không?
Đức Hồng Y

Điều đó rất thông minh. Tôi sẽ khám phá điều này và xem cách nó thực hiện. Bạn nên xem xét việc đăng bài này như một câu trả lời. Tôi sẽ giữ câu hỏi mở trong một vài ngày để xem những công cụ nào khác có sẵn
Ram Ahluwalia

1
Thủ thuật @cardinal không giúp ích gì cho phương pháp điểm bên trong, giống như phương pháp của constrOptim, vì phương thức này cần một điểm khởi đầu vào bên trong khu vực khả thi - không có trên biên giới
stackovergio

Câu trả lời:


14

Cả hai gói, alabama và Rupolnp, đều chứa "[i] thực hiện phương pháp số nhân độ trễ tăng cường để tối ưu hóa phi tuyến tổng quát" --- như chế độ xem nhiệm vụ tối ưu hóa nói --- và khá đáng tin cậy và mạnh mẽ. Có thể xử lý các ràng buộc đẳng thức và bất đẳng thức được định nghĩa là các hàm (phi tuyến) một lần nữa.

Tôi đã làm việc với cả hai gói. Đôi khi, các ràng buộc dễ dàng hơn một chút để xây dựng với Rupolnp, trong khi alabama dường như nhanh hơn một chút.

Ngoài ra còn có gói Rdonlp2 dựa trên thư viện phần mềm nổi tiếng bên ngoài và trong cộng đồng tối ưu hóa. Thật không may, tình trạng giấy phép của nó là một chút không chắc chắn tại thời điểm này.


1
Chỉ muốn thêm một thuộc tính của các ràng buộc bất bình đẳng Alabama mà tôi tìm thấy ngày hôm nay. Nếu các ràng buộc bất bình đẳng của bạn tạo ra một vùng không khả thi, thì mã sẽ chạy mà không có bất kỳ thông báo cảnh báo / lỗi nào và lấy giá trị trung bình của các ranh giới làm giá trị cố định của tham số. Ví dụ: nếu bạn có x> 6 và x <4, thì giải pháp sẽ cung cấp giải pháp với x = 5 mà không có bất kỳ cảnh báo nào.
Gaurav Singhal

Có vẻ như câu trả lời này vẫn được truy cập và đọc. Do đó, tôi muốn thêm rằng có một gói mới NlcOptim (kể từ năm 2015). Nó giải quyết các vấn đề tối ưu hóa với các hàm mục tiêu và ràng buộc phi tuyến, trong đó các ràng buộc bất đẳng thức và bất đẳng thức được cho phép. Tôi sử dụng nó thường xuyên.
Hans W.
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.