R - Reticulate - Python - Pyomo - Failed to create solver [WinError 6]

Hey community,

I tried to run the following code via R with reticulate and pyomo based on the solver "cbc". The Python-code is working if I execute the code independently of R. Executing the code in R with the package "reticulate" doesn't work.

Information about the Python-code: A Simple Concrete Pyomo Model - Simple Models — Pyomo 6.1.2 documentation

Thanks in advance for your help!

Br, Alex

Code in R:



Code in Python:

from pyomo.environ import *

import pyutilib.subprocess.GlobalData
pyutilib.subprocess.GlobalData.DEFINE_SIGNAL_HANDLERS_DEFAULT = False

model = ConcreteModel()

model.x = Var([1,2], domain=NonNegativeReals)

model.OBJ = Objective(expr = 2*model.x[1] + 3*model.x[2])

model.Constraint1 = Constraint(expr = 3*model.x[1] + 4*model.x[2] >= 1)

opt = SolverFactory('cbc')

Error in R

Error in py_run_file_impl(file, local, convert) : 
  RuntimeError: Attempting to use an unavailable solver.

The SolverFactory was unable to create the solver "cbc"
and returned an UnknownSolver object.  This error is raised at the point
where the UnknownSolver object was used as if it were valid (by calling
method "solve").

The original solver was created with the following parameters:
	type: cbc
	_args: ()
	options: {}
WARNING: Failed to create solver with name 'cbc': Could not execute the
    command: 'C:\Program Files\cbc-win64\cbc.exe -stop'
    	Error message: [WinError 6] Das Handle ist ungültig

Additional information:

python:             C:/Anaconda/python.exe
libpython:          C:/Anaconda/python38.dll
pythonhome:         C:/Anaconda
version:            3.8.8 (default, Apr 13 2021, 15:08:03) [MSC v.1916 64 bit (AMD64)]
Architecture:       64bit
numpy:              C:/Anaconda/Lib/site-packages/numpy
numpy_version:      1.20.3
pyomo_version:      5.7.2
reticulate_version: 1.20
cbc_version:        2.10.3
RStudio_version:    1.4.1717
Spyder_version:     5.0.5

This topic was automatically closed 21 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.