フィルターのクリア

Why does the [x,fval,ex​itflag,out​put,lambda​] = linprog(f,​A,b,Aeq,be​q,lb,ub) function return only integer numbers?

2 ビュー (過去 30 日間)
Romeo Tahal
Romeo Tahal 2022 年 10 月 27 日
回答済み: Sarthak 2023 年 9 月 11 日
Hi, I'm doing an optimization problem where I use the [x,fval,exitflag,output,lambda] = linprog(f,A,b,Aeq,beq,lb,ub) funtion. However, the results I get give me only integer numbers. For example, I'm expecting a result like 1.710, but I get 2.0. When I expect a value of 0.855, I get 1.0
How can I get the rational numbers with decimals, instead of only integer numbers?
  8 件のコメント
Romeo Tahal
Romeo Tahal 2022 年 10 月 28 日
The results are slightly higher than expected, but I can live with that.
Torsten
Torsten 2022 年 10 月 28 日
If you know a solution you can live with, you don't need an optimizer, do you ?

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

回答 (1 件)

Sarthak
Sarthak 2023 年 9 月 11 日
Hi Romeo,
I understand that you want to set the precision of the output variable.
You can use the format function to set the precision of the output.
format long
x,fval,exitflag,output,lambda = linprog(f,A,b,Aeq,beq,lb,ub);
To know more information about the format function, you can visit the documentation page of format.
I hope this solves your query.

カテゴリ

Help Center および File ExchangeOptimization についてさらに検索

製品


リリース

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by