使用 Julia 和 gurobi 进行二次约束 MIQP

2023-11-29

这是试图回答以下问题:https://matheducators.stackexchange.com/questions/11757/small-data-sets-with-integral-sample-standard-deviations

因此,以下代码的目的是查找具有整数标准差的小数据集的示例。这可以表述为二次约束混合整数二次规划,因此我尝试使用 Julia 的 Gurobin。以下是我的代码:

using JuMP  
using Gurobi

m = Model(solver = GurobiSolver() )
@variable(m,  0<= x[1:20] <= 100,  Int)
@variable(m,  Gj,  Int)
@constraint(m,  Gj == sum(x[1:20])/20 )
@variable(m,  Var,  Int)
@constraint(m,  Var == sum( (x[1:20]-Gj).^2/19) )
@variable(m,  sd,  Int)
@constraint(m, sd * sd == Var)
### We need some restrictions to avoid all equal, < or zero,  solutions:
@constraint(m,  sd >= 5)
@objective(m, Min, sd)

print(m)

status = solve(m)

println("Objective value: ", getobjectivevalue(m) )

x = getvalue(x)

运行此结果:

ERROR: Gurobi.GurobiError(10021, "Quadratic equality constraints")
Stacktrace:
 [1] optimize(::Gurobi.Model) at /home/kjetil/.julia/v0.6/Gurobi/src/grb_solve.jl:7
 [2] optimize!(::Gurobi.GurobiMathProgModel) at /home/kjetil/.julia/v0.6/Gurobi/src/GurobiSolverInterface.jl:294
 [3] #solve#101(::Bool, ::Bool, ::Bool, ::Array{Any,1}, ::Function, ::JuMP.Model) at /home/kjetil/.julia/v0.6/JuMP/src/solvers.jl:173
 [4] solve(::JuMP.Model) at /home/kjetil/.julia/v0.6/JuMP/src/solvers.jl:148

有任何想法吗?


像 Gurobi Optimizer 这样的数学编程求解器无法求解具有二次等式约束的模型。以下是 Gurobi Optimizer 可以解决的约束类型。要使用 Gurobi Optimizer 求解模型,您必须将约束转换为这些形式之一,例如二次不等式约束。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Julia 和 gurobi 进行二次约束 MIQP 的相关文章

随机推荐

  • 是否可以使用回调类型定义来定义函数?

    我对使用预定义回调类型定义函数感兴趣 假设我已经定义了回调类型 typedef BOOL is trigger required cb void 现在我想使用上述类型声明并定义一个函数 我想做这样的事情 is trigger require
  • Ubuntu 上的 Docker hello-world - 权限被拒绝

    我正在尝试让 docker v 1 8 2 在 Ubuntu 14 04 上工作 使用 docker 配置文件中的 g 选项 Ubuntu 位于 USB 密钥上 在不使用机器磁盘的情况下提取映像时出现错误 结果是docker拉取了hello
  • 使用 javascript 正则表达式替换和增加整数值

    给定以下字符串 XXXX Units 4 Test XXXX 我想替换每次出现的Unit x with Unit x 1 我正在尝试使用正则表达式来实现此目的 如名称所示Units需要首先进行字面匹配 我正在尝试这样的事情 test rep
  • Shiny:根据输入选择输入子集

    编辑 感谢您的帮助 我的代码存在多个问题 但主要问题是我缺少 Observe 语句 以下解决了问题 get ddf lt reactive filter poskick Name input player observe updateSel
  • iPhone AVCaptureDeviceInput 如何设置音频捕获的质量?

    以下代码在 44100 深度 2 处工作正常 一些检查和代码被删除 这似乎是默认值 由于这个界面可用 但没有很好的记录 有人知道如何更改默认质量吗 audioCaptureDevice AVCaptureDevice defaultDevi
  • 从交互式图表中抓取数据

    是否可以获取交互式图表背后的数据这个网页 抱歉 网站需要登录 当我用鼠标悬停在图表上时 数据就会显示出来 但是如何获取这些数据呢 以下是该网站 HTML 源代码的摘录
  • 如何防止 youtube iframe 从独立应用程序重定向到 Youtube 应用程序?

    我开发了一份网络杂志揭示js 当然 用户可以决定为他 她自己的智能手机或平板电脑创建快捷方式 创建一个独立的应用程序 该应用程序不会在普通浏览器中打开 带有网址栏 导航命令等 为此 我使用这段代码 一切正常 除了当我滑动到内容中有 YouT
  • 寻找可以在 WinForms 应用程序中播放 AVI 文件的组件(.NET 或 COM/ActiveX)[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我正在寻找类似 Windows Media Player 控件之类的可以托管在表单上的东西 WMP 不适合我 因为我需要一个可以按顺序播放连续附加的
  • 使用箭头键移动 PictureBox - 处理 PictureBox 中的键盘事件

    我有一个PictureBox我使用下面的代码来移动我的对象 我需要在表单中添加一些按钮 但是当我启动程序时 箭头键在按钮中导航 而不是我的输入按键 我尝试过很多 像这样的方式PictureBox Focus and PictureBox S
  • 使用自定义字体而不包含在 info.plist ios 中

    在 iOS 中 如果我们想使用自定义字体 我们必须包含font ttf在应用程序包中并添加font ttf作为字体键的值信息列表 file 我想使用自定义字体 在设备中安装应用程序后 将从我的服务器下载其 ttf 文件 1 是否可以在我的应
  • Office Outlook Web Addin 不适用于 Office Client 2016

    我使用 Angular 5 版本开发了一个插件 我已经构建了它并使用 sercure http 部署在 Apache 服务器上 我通过使用不同的用户登录在 Office Web App 上测试了这个插件 我发现它按我的预期工作 但现在的问题
  • 将派生类型映射到 EF 中的同一个表

    以下简单的代码示例说明了相关场景 我有一个 Person 实体 它只是映射到数据库中的 Person 表 我正在使用默认的实体对象代码生成器 public partial class Person 我有一个从 Person 派生的 Pers
  • Smooch:如何进行依赖于回发的状态转换?

    我正在尝试根据 Smooch 回发有效负载将脚本从一种状态转换为另一种状态 但收到错误代码 H12 考虑这个例子https github com smooch smooch bot example 假设我修改了脚本https github
  • (8051) 检查是否设置了一位

    我正在为 8051 微控制器编写程序 在程序的第一部分中 我做了一些计算 并根据结果 我要么点亮 LED 要么不点亮 使用CLR P1 7 其中 P1 7 是微控制器中连接 LED 的端口 在程序的下一部分中 我想检索该位 也许将其存储在某
  • 如何在 Python 中进行 DNS 查找,包括引用 /etc/hosts?

    dnspython会很好地完成我的 DNS 查找 但它完全忽略了 etc hosts 是否有一个 python 库调用可以做正确的事情 即先签入etc hosts 否则只能回退到 DNS 查找 我不太确定你是否想要进行 DNS 查找your
  • 如何更改 ggplot 中美学层的顺序?

    如何更改美学层的顺序 这是和例子 dat lt tibble acc rep c 0 1 200 rt rnorm 400 0 5 0 1 dat gt ggplot aes x rt fill factor acc geom densit
  • 使用媒体会话 Web API 的媒体通知不适用于 Web 音频 API

    我正在尝试在我的 PWA 中针对当前播放的音频内容实现自定义通知 正如标题所述 我使用 Android v8 1 0 和 Google Chrome 应用程序 v68 0 x 根据this文章 The Media Session API i
  • 在 Identity 2.0 中扩展 IdentityUserRole

    因此 我的系统要求角色具有关联的到期日期 我已经实现了 Identity 2 0 框架 一切进展顺利 但我遇到了一个问题 让我怀疑我的结构 public class ApplicationUserRole IdentityUserRole
  • 如何防止ListView扩大窗口尺寸?

    我将 ListView 放在 View 的中间行 该视图包含在 SizeToContent 设置为 WidthAndHeight 的窗口中 ListView 最初是空的 但底层 ViewModel 在此过程中填充了此列表视图 中间的 Gri
  • 使用 Julia 和 gurobi 进行二次约束 MIQP

    这是试图回答以下问题 https matheducators stackexchange com questions 11757 small data sets with integral sample standard deviation