本地VS Code中PuLP无可用求解器,同LP代码在Google Colab可正常运行的问题求助
本地VS Code中PuLP无可用求解器,同LP代码在Google Colab可正常运行的问题求助
我在用PuLP运行线性规划模型时遇到了报错:AttributeError: 'NoneType' object has no attribute 'actualSolve'。
为了排查问题,我尝试查看系统中可用的求解器,运行了以下代码:
import pulp print(pulp.listSolvers()) print(pulp.listSolvers(onlyAvailable=True))
第一个打印语句能输出一长串求解器名称,但第二个语句返回的是空列表[],说明本地环境里没有任何可用的PuLP求解器。
我已经试过先通过pip uninstall pulp卸载PuLP,再重新安装,还尝试直接指定求解器:solver = pl.getSolver('CPLEX_CMD'),但这些操作都没解决问题,所有操作都是在VS Code中完成的。
奇怪的是,我把完全相同的线性规划代码放到Google Colab里运行,却能正常求解,没有任何报错。我实在搞不懂为什么同一个代码在不同环境下表现差异这么大,到底是哪里没配置对?
附上我的线性规划代码:
from pulp import LpProblem, LpMinimize, LpVariable, LpConstraint, lpSum, value # Define the problem prob = LpProblem("Minimize_Operating_Cost", LpMinimize) # Define decision variables x1 = LpVariable("Hours_Facility_1", lowBound=0) x2 = LpVariable("Hours_Facility_2", lowBound=0) # Objective function: Minimize cost prob += 120 * x1 + 220 * x2, "Total_Cost" # Constraints prob += 300 * x1 + 350 * x2 >= 4500, "Regular_Detergent_Constraint" prob += 220 * x1 + 450 * x2 >= 5200, "Concentrate_Detergent_Constraint" # Solve the problem prob.solve() # Extract results x1_opt = value(x1) x2_opt = value(x2) min_cost = value(prob.objective) # Display results x1_opt, x2_opt, min_cost
备注:内容来源于stack exchange,提问作者gunsnfloyd
相关产品推荐
相关产品推荐

