1樓:網友
lingo變數界定函式共4種:
bin(x) :限制x為0或1
bnd(l,x,u) :限制l<=x<=u
free(x) :取消對變數x的預設下界為0的鋒梁限制,即x可以取任意實數。
gin(x) :限制x為整數。
在預設情況下,lingo規定變數是非負的,也就是說下界為0,所以才有@free(x)函式。 可以用乙個很大(小)的數來代表其中的一併基拆個界限。。
1.如果 x<=a則可以用@free(x)和@bnd(-10^5,x,a) 來表示。
2.如果 x>=a a>=0,則可絕棗以用@bnd(a,x,10^5)來表示。
a<=0,則可以用@free(x)和@bnd(a,x,10^5)來表示。
2樓:伍拾步
你說的有歧義。
1.限制一遲早派個變數大於乙個數和限制乙個變數小於乙個數,這兩個問題。
.如果是這種形式的話直接。
.x>a;(限制乙個變數x大於乙個數a),.xa或xb,則可以表碼賀示為(x-a)*(x-b)>0
另外還要注意lingo預設變數是非負的。
lingo11 @bnd函式怎麼只設上界或只設下界
3樓:網友
你直接用不等號連線不是很方便嗎 不知道用這樣的函式有什麼方便之處 @bnd還好 只取一邊實在沒有必要。
lingo8都沒這個函式了 肯定是沒有必要再取消的 你自己去看一下軟體自帶的sample
lingo 怎麼程式設計?
4樓:匿名使用者
變數界定函式。
變數界定函式實現對變數取值範圍的附加限制,共4種:
bin(x) 限制x為0或1@bnd(l,x,u) 限制l≤x≤u@free(x) 取消對變數x的預設下界為0的限制,即x可以取任意實數。
gin(x) 限制x為整數在預設情況下,lingo規定變數是非負的,也就是說下界為0,上界為+∞。free取消了預設的下界為0的限制,使變數也可以取負值。@bnd用於設定乙個變數的上下界,它也可以取消預設下界為0的約束。
也可以把變數範圍作為乙個條件。
5樓:網友
建議你去系統的看一下lingo的教程和例題 其實很簡單 就是把最優化問題的模型翻譯成lingo的語言 語法也不難。
那個設定取值範圍有@bnd函式 也可以直接用不等號來設定。
6樓:網友
利用bnd函式…@bnd(a,x,b)表示x取值在a,b之間…
7樓:網友
我在學問社群上看到很多lingo的教程和小貼士,你不妨去看看。
lingo問題 到底哪個地方錯了 求解釋 謝謝!
8樓:網友
你這個不是lingo的語言。
max =2*x - 3*y + 4*z;
4*x + 3*y + 2*z <= 10;
3*x + 5*y - z < 12;
x + y + 5*z > 8;
5*x - y - z > 2;
free( x); 說明:變數x沒有非負限制y<= 20; !說明:變數y的上界為20z>= 30; !說明:變數z的下界為30
使用matlab遺傳演算法工具箱如何加入目標函式中變數的約束條件啊,可否在m檔案中加?
9樓:
開啟遺傳演算法工具箱的窗體中會有下圖所示的選項,即是約束條件的。
至於新增的方式,這裡要重點的提一下,首先將問題抽象成規劃問題的標準形式(如果你不懂什麼是標準形式的話,建議你去翻閱運籌學那本書,上告訴你什麼是標準形式),然後用矩陣語言寫出來,最後將矩陣的係數填寫到線性不等約束和線性相等約束中,同時定義所求變數x的上界和下界(記住有多少個變數就有多少列,如果你發現有些條件中沒有出現某些變數,那麼就應該用0補足,這個是matlab解決規劃問題與lingo想比較麻煩的乙個地方,)。
當然可以,介面的東西是為了方便不熟悉matlab程式設計的人而設計出來的,但是其底層的演算法和介面肯定是有的。
碰到不懂的函式,請記得:help 函式名。
help ga 之後會得到一下一些函式。
gafind minimum of function using genetic algorithm //這個是定義。
syntax // 這個是語法也即是呼叫的規則。
x = ga(fitnessfcn,nvars)
x = ga(fitnessfcn,nvars,a,b)
x = ga(fitnessfcn,nvars,a,b,aeq,beq)
x = ga(fitnessfcn,nvars,a,b,aeq,beq,lb,ub)
x = ga(fitnessfcn,nvars,a,b,aeq,beq,lb,ub,nonlcon)
x = ga(fitnessfcn,nvars,a,b,aeq,beq,lb,ub,nonlcon,options)
x = ga(problem)
x,fval] = ga(..
x,fval,exitflag] = ga(..
直接給你將最長的那個吧。
x = ga(fitnessfcn,nvars,a,b,aeq,beq,lb,ub,nonlcon,options)
x是返回所求的解。
fitnessfcn是適應度函式。
nvars是適應度函式中所含變數的維數。
a是不等式約束中變數的係數矩陣,b是不等式約束中不含變數的值矩陣。
aeq是等式約束中變數的係數矩陣,beq是等式約束中不含變數的值矩陣。
lb是下界,ub是上界。
nonlcon 是非線性約束條件。
至於options嘛 我也木有用過,其實你也可以不用管的。
懂了木有呢,親?
lingo中@bnd表示什麼函式?謝謝了!
10樓:網友
表示變數範圍。
比如@bnd(1,x,2);表示x不小於1不大於2
11樓:網友
@bnd(l,x,u):限制l<=x<=u,可用作約束條件;是乙個界限變數。
12樓:網友
用」@bnd」語句設定變數的上下界,如bnd(l,x,u):限制l<=x<=u
matlab中如何只保留或兩個變數的資料,其他變數資料全部清楚
可以使用擬合,如果只是兩個變數,推薦cftool函式 即curve fitting tool 裡面可以選擇不用的函式型別以儘量符合你的曲線。subs就是代入已知值,如果ef已經得到數值,那麼用subs a subs nd subs g subs g 就可以了 matlab中怎麼定義一個變數為短整形或...
在linux下如何修改環境變數path啊
新增變數的話,建議可以使用 在root許可權下 path path bin bin為想要新增的目錄檔名 linux path 環境變數怎麼設定 1 直接用export命令 export path path opt au1200 rm build tools bin 檢視來是否已自經設好,bai可用d...
金蝶工資條目或變數未定義應發工資什麼情況啊?求解
尊敬的客戶 bai,您好 您的問題是不是du開啟工資zhi錄入,選擇過濾器dao後的提示,此 先定義比如 dima 顧名思義.有一個變數沒有定義但是直接使用了。金蝶專業版,在工資錄入時,過濾介面提示 工資專案或變數未定義基本工資 請問怎麼處理呢 這說明你的工資項沒有問題,但是工資專案間的計算關係設定...