Как использовать Cplex .dll файл в Python - PullRequest
0 голосов
/ 05 ноября 2019

Я использую файл cplex .dll в python, чтобы решить хорошо сформулированную проблему lp с помощью решения для целлюлозы. Вот код

здесь модель - объект целлюлозы, созданный с использованием библиотеки целлюлозы

Когда я запускаю a.actualSolve (Model), я получаю следующую ошибку из файла subprocess.py.

OSError: [WinError 193]% 1 не является допустимым приложением Win32

Я пытался использовать 32- и 64-разрядные Python, но не смог решить.

import pulp a = pulp.solvers.CPLEX_CMD ("расположение файла cplex dll")

a.actualSolve (модель)

Я ожидаю, что файл cplex dll решит мою проблемусформулировал оптимизационную модель и дал мне решение для всех переменных.

1 Ответ

0 голосов
/ 05 ноября 2019

Решатель CPLEX_CMD - это оболочка для CPLEX Interactive , , а не DLL . Вы можете передать путь к файлу cplex.exe в конструктор или просто убедиться, что он находится в вашем PATH (см. Добавление каталога в переменную среды PATH в Windows ).

Чтобы использовать DLL-файл CPLEX, вам нужно использовать решатель CPLEX_DLL (см. Исходный код PuLP ). Вам также необходимо отредактировать файл конфигурации PuLP, указав расположение DLL-файла CPLEX.

Например, в Windows ваш файл pulp.cfg может выглядеть следующим образом:

[locations]
...
CplexPath = cplex1290.dll
...

Это предполагает, что двоичный каталог CPLEX уже находится в вашем PATH (точно так же, как в cplex.exe выше). Кроме того, вы можете указать абсолютный путь к cplex1290.dll в файле конфигурации.

...