Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clarify meaning of kHighsStatusWarning in Highs_run #1562

Open
amigalemming opened this issue Jan 7, 2024 · 5 comments
Open

Clarify meaning of kHighsStatusWarning in Highs_run #1562

amigalemming opened this issue Jan 7, 2024 · 5 comments
Assignees
Labels
enhancement New feature or request

Comments

@amigalemming
Copy link

I am uncertain how to cope with kHighsStatusWarning of Highs_run. It seems to be returned in cases where the optimization result is unreliable. But what is the difference to kHighsStatusError? Is there a function to get more information about the meaning of the warning? I'd like to see a clarification in highs_c_api.h or in the documentation.

@jajhall
Copy link
Member

jajhall commented Jan 7, 2024

This warning flag indicates that something unusual has happened, but that the problem has been solved OK.

I'll add a comment to this effect in the documentation.

@amigalemming
Copy link
Author

In #1561 I get kHighsStatusWarning but the result deviates considerably from the result that finished with kHighsStatusOk, thus I guess, it is wrong.

@jajhall
Copy link
Member

jajhall commented Jan 7, 2024

OK I'll get to the bottom of this when I investigate #1561

@jajhall
Copy link
Member

jajhall commented Jan 7, 2024

Having looked at your example from #1561, to be more precise Highs_run(highs) returning kHighsStatusWarning indicates that something unusual has happened, but that the problem may have been solved OK. To determine this, the user should look at the model status and number of primal and dual infeasibilities.

@jajhall
Copy link
Member

jajhall commented Jan 7, 2024

Beyond looking for logging lines with the prefix "Warning", here is no current way for users to identify retrospectively the reason for the kHighsStatusWarning return. The same is true for kHighsStatusError. The difference between the two is that when Highs_run(highs) returns kHighsStatusError, it is known that the solve has failed

@jajhall jajhall added the enhancement New feature or request label Jan 8, 2024
@jajhall jajhall self-assigned this Jan 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants