Gecode / Gecode/gecode

Expose Gecode scheduling constraints with (start, duration, end) tasks to MiniZinc

未关闭
#80 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
good first issue help wanted
主要语言
C++
星标
335
派生
88
平均合并
1 小时 28 分钟
30 天内合并 PR
1

描述

In Gecode, many [scheduling constraints](https://www.gecode.org/doc-latest/reference/group__TaskModelIntScheduling.html) constraints take a triple of `start`, `duration`, and `end` variables for each task, while the coresponding constraints in MiniZinc work with only a `start` and `duration`.

The idea is to add new custom constraints in [gecode.mzn](https://github.com/Gecode/gecode/blob/develop/gecode/flatzinc/mznlib/gecode.mzn) for the `cumulative`, `cumulatives`, and `unary` variants and matching posting functions in [the registry](https://github.com/Gecode/gecode/blob/develop/gecode/flatzinc/registry.cpp).

贡献指南

这个仓库没有索引到贡献指南

调研方向

首先阅读 gecode/flatzinc/mznlib/gecode.mzn 以及 gecode/flatzinc/registry.cpp 中对应的 posting 代码。将现有的 scheduling 约束变体与 Gecode 的开始时间、持续时间和结束时间任务表示,以及关联的 MiniZinc 约束进行比较。当 cumulative、cumulatives 和 unary 变体都存在自定义约束及匹配的 posting 函数时,即视为完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
cpp
领域
tooling
Issue 类型
功能
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
42/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。