۱۳۹۳/۰۹/۱۷, ۰۷:۰۱ ب.ظ
سلام قبلا سوالی مطرح شده مسائل از این دست چگونه حل میشوند.
maxz= 4x1-x2
s.t
x1+x2<=10
x1-x2<=8
x2<=4
x1>=0
x2>=0
که به شکل زیر پاسخ دادن .سوال من اینه می تونیم تابع به شکلی بنویسیم که ضرایب مشخص نباشه یعنی متغییر(قرار کاربر از طریق سی شارپ ضرایب وارد کند)
maxz= 4x1-x2
s.t
x1+x2<=10
x1-x2<=8
x2<=4
x1>=0
x2>=0
که به شکل زیر پاسخ دادن .سوال من اینه می تونیم تابع به شکلی بنویسیم که ضرایب مشخص نباشه یعنی متغییر(قرار کاربر از طریق سی شارپ ضرایب وارد کند)
کد:
clear all
close all
clc
x1=0:0.1:1000;
x1_length=length(x1);
x2=0:0.1:4;
x2_length=length(x2);
Z=0;
x1_max=0
x2_max=0;
Z_max=0;
for nn=1:x1_length
for mm=1:x2_length
if (x1(nn)+x2(mm)<=10 && x1(nn)-x2(mm)<=8)
Z=4*x1(nn)-x2(mm);
if (Z>Z_max)
Z_max=Z;
x1_max=x1(nn);
x2_max=x2(mm);
end
end
end
end
x1_max
x2_max
Z_max