⚡ 编程实验室🏗️ HTML🎨 CSS⚡ JavaScript🐍 Python🗄️ SQL☕ Java⚛️ React💚 Vue🟢 Node.js⚙️ C语言🐘 PHP🐹 Go🔷 TypeScript🐬 MySQL🔧 C++🎯 C#🦀 Rust🅱️ Bootstrap💡 jQuery🎸 Django🍃 MongoDB👗 Sass🎪 Kotlin📊 R语言📋 XML📊 Excel🐘 PostgreSQL🐳 Docker🅰️ Angular🎮 游戏🏠 网站首页

规划求解与Python协同:用openpyxl构建非线性约束优化模型

利用Python的scipy库处理Excel Solver无法求解的非线性问题,并通过openpyxl回写结果。 · 难度:入门 · +10XP

规划求解与Python协同:用openpyxl构建非线性约束优化模型

Excel内置的规划求解(Solver)只能处理线性、整数或简单非线性问题,复杂工程优化(如涉及三角函数、微分方程)往往无法收敛。本教程教你搭建Python-Excel协同工作流:用openpyxl读取Excel中的参数和约束条件,调用scipy.optimize.minimize(支持L-BFGS-B, SLSQP等算法)求解,再将最优解写回Excel单元格。你将学到如何处理xlwings或pyxll无法安装的环境,纯用openpyxl实现双向数据交换,并保留单元格格式和公式。

import openpyxl
from scipy.optimize import minimize

wb = openpyxl.load_workbook('model.xlsx') sheet = wb['Sheet1']

def objective(x): sheet['B1'] = x[0] sheet['B2'] = x[1] wb.save('temp.xlsx') # 读取目标函数所在单元格 return sheet['C1'].value

res = minimize(objective, [1,1], method='SLSQP') print(res.x)

Ctrl+Enter
🚀 升级VIP
解锁全部课程+AI助手

🏆 学习排行

加载中...

📊 统计

📖 254 篇
0 完成
🔥 0