MATLAB LMI in Matlab scaling to improve condition number?

AI Thread Summary
The discussion centers on optimizing a matrix A with varying units for time (T) and length (L) to achieve the smallest condition number after scaling with a diagonal matrix D. The user is facing challenges in formulating this as an optimization problem, particularly in deriving the gradient for a gradient-based approach or implementing Linear Matrix Inequalities (LMI) in MATLAB. The goal is to find optimal values for T and L that minimize the condition number of the product A*D. While a global optimization method, such as a genetic algorithm, is suggested, the user is specifically seeking a gradient-based method or LMI approach for a more precise solution. The context of the problem is rooted in personal research rather than a textbook or homework scenario, emphasizing its fundamental mathematical nature.
ytht100
Messages
20
Reaction score
0
A=[ 8147 6324 9575 9572
9058 0975 9649 4854
1270 2785 1576 8003
9134 5469 9706 1419];

D=diag([T^(-3)*L^2 T^(-3)*L^2 T^(-1)*L T^0*L^0]);

I have matrix A whose first two columns are of the units T^3/L^2, third columns unit is T/L, and the last column is non-dimensional. T is time and L is length.

Therefore, if I give different (including non-integer) units to T and L by multiplying A with D for scaling A, I have different resulting matrix A*D with different condition number.

Question: how can obtain an optimal T and L?

Attempted solutions: 1, it seems like an optimization problem. But I don't know how to optimize it, I don't know how to obtain the gradient? The real situation has much bigger A, therefore can't be solved analytically for eigenvalue, therefore can'b be solved analytically for condition number.
2, it seems the problem can be converted into Linear Matrix Inequalities for solution in Matlab (http://users.isy.liu.se/rt/andersh/teaching/lmi.pdf). But I don't know exactly how? Specifically, I don't know to code the problem into a style of https://www.mathworks.com/help/robust/lmis.html.

Could you please provide any suggestions? I am stucked weeks on this problem.
 
Physics news on Phys.org
Can you provide some context here?

What is it you’re trying to solve?

Is this a physics problem? Is it homework?

Did it come from some book?

Is it something for your work or research?

One way to optimiz is to try a range of values for t and for l and then see which one gives you the best results.

It’s not clear to me what best results means in this case. Is the determinate of the AD product at a minimal value? Or something else entirely?
 
It is my own research. I am trying to solve a kind of least-square problem. If you see the link I provided above (http://users.isy.liu.se/rt/andersh/teaching/lmi.pdf) you will understand more what I am talking about. Also you can read the book of Byod (https://people.eecs.berkeley.edu/~elghaoui/Pubs/lmibook.pdf, page37-38) you will understand more.

Actually the question does NOT need a context because it is a basic and fundamental math problem.

I can understand your suggestion "One way to optimiz is to try a range of values for t and for l and then see which one gives you the best results.", your suggestion is a kind of global optimization method such as genetic algorithm. I am looking for a gradient-based method or Matlab's LMI-based method.

As I have said in the topic, the best result means the smallest condition number.
 
Last edited:

Similar threads

Replies
3
Views
4K
Back
Top