Tìm việc tối thiểu của một đối tượng chức năng để hạn chế phi tuyến Tìm điểm mà chức năng Rosenbrock được giảm thiểu trong một vòng tròn, còn bị hạn chế ràng buộc. Fun = @ (x) 100 * (x (2) -x (1) ^ 2) ^ 2 + (1-x (1)) ^ 2; Tìm trong phạm vi khu vực $ 0 le x (1) le 0,5 $, $ 0,2 le x (2) le 0.8 $. lb = [0,0.2]; ub = [0.5,0.8]; Cũng nhìn vào bên trong vòng tròn trung tâm tại [1 / 3,1 / 3] với bán kính 1/3. Sao chép đoạn mã sau vào một tập tin trên con đường của bạn tên là MATLAB® circlecon.m. % Bản quyền 2015 MathWorks, Inc. chức năng [c, ceq] = circlecon (x) c = (x (1) -1/3) ^ 2 + (x (2) -1/3) ^ 2 - (1/3) ^ 2; ceq = []; không có hạn chế tuyến tính, do đó thiết lập các đối số cho []. A = []; b = [] ; Aeq = []; beq = []; Chọn một điểm ban đầu đáp ứng tất cả các hạn chế. x0 = [1 / 4,1 / 4]; . Giải quyết các vấn đề nonlcon = @circlecon; x = fmincon (vui vẻ, x0, A , b, Aeq, beq, lb, ub, nonlcon) tối thiểu địa phương thấy rằng đáp ứng các hạn chế. Tối ưu hóa hoàn thành bởi vì hàm mục tiêu là không giảm trong hướng khả thi, để trong vòng các giá trị mặc định của khoan dung tối ưu, và hạn chế được hài lòng để trong giá trị mặc định dung sai chế.
đang được dịch, vui lòng đợi..
