or-tools - 使用 CP-SAT 预测 300 万个布尔变量
问题描述
亲爱的,我想了解我是否正确使用了 CP-SAT 算法。基本上,我的代码会自动创建一个模型来读取带有数据集的 csv。我的代码为数据集的每条记录创建 model.NewBoolVar() 乘以优化问题要采取的可能决策的数量......例如,如果我有一个包含 1 百万条记录的数据集,我必须在 3选项,模型将包含 3 百万个布尔变量。3 百万个布尔值的组合是我优化问题的解决方案。
目前在 100K 变量之后,程序变得不稳定并且 python 崩溃。你认为我试图不正确地使用 CP-SAT 吗?你有这种卷的经验吗?
非常感谢。干杯
解决方案
你知道这是一个 NP 问题。因此,您可能正在创建大小为 2^3000000000 的搜索树。
推荐阅读
- android - 存储访问框架 - 文件夹中的文件操作产生的事件
- ios - iOS 13.x 上的 CoreData NSExpression "max:" 函数行为
- reactjs - 使用 React 和 AspnetCore 下载大文件以打开浏览器保存(标题)
- javascript - 当我需要在 url 中使用参数时如何从数据库中获取数据?
- java - 在 Java Struts Web 应用程序中使用 JSch 文件上传损坏
- objective-c - iOS 13 UIImagePickerController 图像/视频网格位于导航栏后面
- git - 在我的合并中避免其他团队成员提交
- vue.js - Vee-validate 3.0 使用 vue-18n 和 TS 配置 defaultMessage
- angular - Angular 总是在页面重新加载时重定向到默认路径
- dynamic - Angular 表单控件启用动态禁用