Hello sir;
i am trying to find minimum of a function by putting more than one vectors in a single step to get a constant cost value.
bk=magic(4)=[16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1]
function=bk1'*H1'*H1*bk1-2*yr'*H1*bk1;
where yr is a column vector, H1 is a square matrix and bk1 is a column of bk.
i want to put each vector of bk in above function and select the minimum value in a single command.
i tried this one but it doesn't works.
[cost_value, indx]=min(abs(bk(:,[1:end])'*H1'*H1*bk(:,[1:end])-2*yr'*H1*bk(:,[1:end])));
please help

3 件のコメント

John D'Errico
John D'Errico 2016 年 3 月 6 日
編集済み: John D'Errico 2016 年 3 月 6 日
As you wrote it, that is not a function. It is an expression. Also, you cannot use the name "function" for a variable name.
If you are trying to find a minimum of a function, use an optimizer. Min is not an optimizer. Tools like fminsearch, fminunc, fmincon are optimzers.
Arif Ullah khan
Arif Ullah khan 2016 年 3 月 6 日
thnx for reply how but can i implement this to get the minimum value as well the index of the vector which gives the minimun value
Arif Ullah khan
Arif Ullah khan 2016 年 3 月 6 日
actually i want to find the column of bk which gives minimum value for the expression

サインインしてコメントする。

 採用された回答

Image Analyst
Image Analyst 2016 年 3 月 6 日

0 投票

What is bk1 and H?
Anyway, why not just assign it to a numerical array and use min:
f =bk1'*H1'*H1*bk1-2*yr'*H1*bk1
[minFValue, linearIndexAtMinFValue] = min(f(:));
or
[rowAtMin, colAtMin] = find(f == min(f(:)))

2 件のコメント

Arif Ullah khan
Arif Ullah khan 2016 年 3 月 6 日
編集済み: Arif Ullah khan 2016 年 3 月 6 日
bk1 is each column of bk matrix while H1 is a square matrix actually i want to find the column of bk which gives minimum value for the expression
Image Analyst
Image Analyst 2016 年 3 月 6 日
Yep, my code will do it.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeLinear Programming and Mixed-Integer Linear Programming についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by