- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
在 Microsoft Solver Foundation 中,我想知道是否可以添加一个值取决于决策值的参数。
即我想要 TSP 模型的一些东西,但它还应该考虑从一个点到另一个点的流量。请注意:流量取决于销售人员在该路线上行驶的时间。
这是模型:
我有一个城市间所有可能组合的矩阵。
Decision 变量是销售人员路线的 Order
。 0是第一个,1秒,...
我有一个属性 timeToTravel
,它绑定(bind)到一个属性,该属性根据 Order
值计算路线发生的时间,并返回包括交通在内的旅行时间在一天中的那个时间。
在我看来,当 Solve
函数被调用时,参数值被读取一次并被缓存,我说得对吗?如果是,有没有人有解决这个问题的建议?
最初我问这个问题 on the MSF forum但我认为它会在 Stack Overflow 上得到更多关注。此外,我对 MSF 以外的其他求解器持开放态度,但我更愿意留在 .NET 环境中。
最佳答案
有一篇关于使用 Solver Foundation 解决“静态”旅行商问题的好文章 here .如果您还没有自己的实现,也许您可以将您的解决方案基于该代码。
这是上述文章中的目标表述:
// Goal: minimize the length of the tour.
Goal goal = model.AddGoal("TourLength", GoalKind.Minimize,
Model.Sum(Model.ForEach(city, i =>
Model.ForEachWhere(city,
j => dist[i, j] * assign[i, j], j => i != j))));
如果我理解正确,在你的问题中,两个城市之间的旅行时间取决于一天中的时间?
我不相信您可以在优化期间动态更新 dist[,]
double
数组。但是,使用 Model 的构建 block 类,应该可以将 dist[,]
数组重新表述为一组函数,这些函数取决于已经行驶的总距离/时间。
为了完整性,here是另一篇关于使用 OML 制定 TSP 的有趣文章。
关于c# - 取决于 MSF 中决策的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11040197/
是否有显示测试用例数量以提供决策/条件覆盖率的工具? 例如: if(x>0) if(x0) 3 个案例足以覆盖决策/条件。 if(x>0) if(x0) 4 个案例足以覆盖决策/条件。 这是真的吗?
我正在尝试找到一种优雅的方式来实现易于维护的决策算法,因为决策的条件可能经常变化。 我将尝试更具体地举一个例子: 假设我正在尝试管理一家餐厅厨房的 cooking 厨师团队。 每个厨师都知道如何 co
我需要一个 Android Activity ,它应该显示一个字段,如带有图像的标题和其下方的几个动态生成的项目(我认为是 1 到 100)。如果我不想让 headsection 滚动,我会使用 Li
我正在编写函数以从值列表中提供最大值(value)。我的问题是如果所有值都相同怎么办?例如, 30,29,34,45 简单。最大值为 45。现在, 20,20,20,20 这里的最大值是20吗?或者没
我需要知道哪个检索事件日志的速度更快,但我在比较中找不到:假设需要查找的所有列都有btree索引,需要查找的json对象中的所有键都有GIN索引。 case 1: ActivityID (in
我需要在我的 iPhone 应用程序中显示一个表格: neither the number of cells nor the contents are known at compile time, b
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 9 年前。 Improve this ques
这是针对在 MinGW/Windows 上使用 SDL 的小型游戏项目。 我正在研究一个物理引擎,我的想法是拥有一个Physics::Object,所有物理对象都应该派生自它,并且它会在全局 Phys
我有一个小的 LINQ 查询来填充下拉控件(WinForms Telerik 应用程序),其中的数据行显示两个值(ITNBR 和描述): var query = from i in db.ItemMa
我正在尝试使用 antlr 3 为我的语法生成词法分析器和解析器。有人可以解释这个错误是什么意思吗? error(211): T.g:14:6: [fatal] rule stmt has non-L
partykit包很好地表示了决策树。我遇到的唯一问题是标签很长然后它们重叠。是否可以移动这些标签以防止它(见下图中的蓝色箭头)? library("rpart") library("partykit
所以我环顾四周,似乎找不到合适的解决方案来解决我的问题。 问题 在我的布局中,我希望能够根据数据库中的内容选择在运行时是否存在导航项: 当前布局(导航栏) @Html.Acti
我目前正在创建一个机器学习 jupyter 笔记本作为一个小项目,并希望显示我的决策树。但是,我能找到的所有选项都是导出图形然后加载图片,这相当复杂。 所以想问问有没有办法不用导出加载图形,直接显示我
grammar AdifyMapReducePredicate; PREDICATE : PREDICATE_BRANCH | EXPRESSION ; PREDICA
我是一名优秀的程序员,十分优秀!