coin-or / Couenne

Convex Over and Under Envelopes for Nonlinear Estimation
Eclipse Public License 1.0
72 stars 8 forks source link

ERROR: Solver (asl) returned non-zero return code (3221226505) #48

Open d568-ubi opened 4 years ago

d568-ubi commented 4 years ago

Hello

I will appreciate if someone can help with the meaning of this code: ERROR: Solver (asl) returned non-zero return code (3221226505)

best regards MCoimbra

merraksh commented 4 years ago

Hello. It would help to see how this happened; for example, which modeling language, what model you used, preceding output, etc. From the information you gave it seems that the ASL interface, which takes care of computing objective function, constraint violation, Hessian, etc., of the nonlinear problem has failed. This does not seem connected to Couenne but rather to ASL, which is one of the libraries used by Couenne.

 

Hope this helps.

 

Regards,

Pietro

 

Sent: Wednesday, September 09, 2020 at 6:56 PM From: "d568-ubi" notifications@github.com To: "coin-or/Couenne" Couenne@noreply.github.com Cc: "Subscribed" subscribed@noreply.github.com Subject: [coin-or/Couenne] ERROR: Solver (asl) returned non-zero return code (3221226505) (#48)

 

Hello

I will appreciate if someone can help with the meaning of this code: ERROR: Solver (asl) returned non-zero return code (3221226505)

best regards MCoimbra

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

d568-ubi commented 4 years ago

Hello. It would help to see how this happened; for example, which modeling language, what model you used, preceding output, etc. From the information you gave it seems that the ASL interface, which takes care of computing objective function, constraint violation, Hessian, etc., of the nonlinear problem has failed. This does not seem connected to Couenne but rather to ASL, which is one of the libraries used by Couenne.   Hope this helps.   Regards, Pietro   Sent: Wednesday, September 09, 2020 at 6:56 PM From: "d568-ubi" notifications@github.com To: "coin-or/Couenne" Couenne@noreply.github.com Cc: "Subscribed" subscribed@noreply.github.com Subject: [coin-or/Couenne] ERROR: Solver (asl) returned non-zero return code (3221226505) (#48)   Hello I will appreciate if someone can help with the meaning of this code: ERROR: Solver (asl) returned non-zero return code (3221226505) best regards MCoimbra — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

Hi Pietro

Thank you so much for the answer.

I'm modeling with pyomo and using couenne as a solver for power system analysis. The problem is a MINLP. Couenne is solving 5 bus system but not 118 bus system. Ipopt solver is solving both problems (5 and 118 bus) but it can not handle binary variables as it is for NLP problems. So, I thought the problem could be with couenne as the objective and constraints seems to be right, perhaps.

There is a troubleshooting table that defines the code meaning?

Regards MCoimbra

merraksh commented 4 years ago

Hi, indeed if the problem has binary variables then Ipopt doesn't return a feasible (integer) solution while Couenne can. Couenne uses Ipopt as a NLP solver when looking for feasible solutions. I'm not sure about the size of the problem but given that you go from 5 to 118 (Couenne being unable to solve the latter) it's probably a memory issue, or an error that is not encountered by standalone Ipopt but rather by Ipopt when used by Couenne. I am not aware of any troubleshooting table for those error codes, which again are generated by the Ampl Solver Library (ASL) and not Couenne.

 

Regards,

Pietro

   

Sent: Wednesday, September 09, 2020 at 9:35 PM From: "d568-ubi" notifications@github.com To: "coin-or/Couenne" Couenne@noreply.github.com Cc: "Pietro Belotti" petr7b6@gmail.com, "Comment" comment@noreply.github.com Subject: Re: [coin-or/Couenne] ERROR: Solver (asl) returned non-zero return code (3221226505) (#48)

 

Hello. It would help to see how this happened; for example, which modeling language, what model you used, preceding output, etc. From the information you gave it seems that the ASL interface, which takes care of computing objective function, constraint violation, Hessian, etc., of the nonlinear problem has failed. This does not seem connected to Couenne but rather to ASL, which is one of the libraries used by Couenne.   Hope this helps.   Regards, Pietro   Sent: Wednesday, September 09, 2020 at 6:56 PM From: "d568-ubi" notifications@github.com To: "coin-or/Couenne" Couenne@noreply.github.com Cc: "Subscribed" subscribed@noreply.github.com Subject: [coin-or/Couenne] ERROR: Solver (asl) returned non-zero return code (3221226505) (#48)   Hello I will appreciate if someone can help with the meaning of this code: ERROR: Solver (asl) returned non-zero return code (3221226505) best regards MCoimbra — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

Hi Pietro

Thank you so much for the answer.

I'm modeling with pyomo and using couenne as a solver for power system analysis. The problem is a MINLP. Couenne is solving 5 bus system but not 118 bus system. Ipopt solver is solving both problems (5 and 118 bus) but it can not handle binary variables as it is for NLP problems. So, I thought the problem could be with couenne as the objective and constraints seems to be right, perhaps.

There is a troubleshooting table that defines the code meaning?

Regards MCoimbra

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

d568-ubi commented 4 years ago

Ok, thank you again Pietro.

I appreciate your quick response and advice.

best regards MCoimbra

kbensafta commented 2 years ago

Hi,

In case this could be useful to anyone: I am getting the same error using pyomo and octeract (using ipopt under the hood) to solve a NLP problem. This error arises whenever I let an uncompleted line in the octeract option file.

e.g. : having in the option file: MAX_SOLVER_TIME = instead of MAX_SOLVER_TIME = 20 will return the error in question.

defencedog commented 1 year ago

I am having similar issue on ARM64 Android Example from https://github.com/SolverMax/Collated/blob/main/Non-linear-functions/Non-convex-MINLP-with-Couenne/Non-convex-MINLP.ipynb

In [18]: import pyomo.environ as pyo
    ...:
    ...: def ObjRule(m):
    ...:     return 3*m.x1**4-4*m.x1**3-12*m.x1**2 + 3*m.x2**4-4*m.x2**3-12*m.x2**2
    ...:
    ...: model = pyo.ConcreteModel(name="Nonconvex MINLP sample")
    ...:
    ...: model.x1 = pyo.Var(domain=pyo.Integers, bounds=(-5, 5), initialize=-1)
    ...: model.x2 = pyo.Var(domain=pyo.Integers, bounds=(-5, 5), initialize=-1)
    ...:
    ...: model.OBJ = pyo.Objective(rule = ObjRule, sense = pyo.minimize)
    ...:
    ...: opt = pyo.SolverFactory('couenne')
    ...: res = opt.solve(model, tee=False)
    ...:
    ...: print(f"\nObjective:{model.OBJ()}")
    ...: print(f"x1: {model.x1()}")
    ...: print(f"x2: {model.x2()}")
ERROR: Solver (asl) returned non-zero return code (-6)
ERROR: Solver log: Couenne devel -- an Open-Source solver for Mixed Integer
    Nonlinear Optimization Mailing list: couenne@list.coin-or.org
    Instructions: http://www.coin-or.org/Couenne couenne: ANALYSIS TEST:
    Couenne: new cutoff value -1.0000000000e+01 (0.019385 seconds) terminating
    with uncaught exception of type Bonmin::TNLPSolver::UnsolvedError*
---------------------------------------------------------------------------
ApplicationError                          Traceback (most recent call last)
<ipython-input-18-b13c923328e4> in <cell line: 14>()
     12
     13 opt = pyo.SolverFactory('couenne')
---> 14 res = opt.solve(model, tee=False)
     15
     16 print(f"\nObjective:{model.OBJ()}")

/data/data/com.termux/files/usr/lib/python3.9/site-packages/pyomo/opt/base/solvers.py in solve(self, *args, **kwds)
    594                 elif hasattr(_status, 'log') and _status.log:
    595                     logger.error("Solver log:\n" + str(_status.log))
--> 596                 raise ApplicationError(
    597                     "Solver (%s) did not exit normally" % self.name)
    598             solve_completion_time = time.time()

ApplicationError: Solver (asl) did not exit normally

ASL build / compile logs attached ASL_Config_Build.log.txt