排课布尔可满足性[多项式时间减少]最后一部分 [英] Class Scheduling to Boolean satisfiability [Polynomial-time reduction] Final Part

查看:177
本文介绍了排课布尔可满足性[多项式时间减少]最后一部分的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我,因为几个星期的工作,现在一个项目非常有趣,但不幸的是一个非常复杂的背景。

I'm working since few weeks now on a project really interesting but unfortunately with a very complex background.

我已经问3个问题:

  • <一个href="http://stackoverflow.com/questions/29251041/class-scheduling-to-boolean-satisfiability-polynomial-time-reduction-final-par">Class调度布尔可满足性[多项式时间减少]最后一部分(这里)
  • <一个href="http://stackoverflow.com/questions/29140280/class-scheduling-to-boolean-satisfiability-polynomial-time-reduction-part-2?lq=1">Class调度布尔可满足性[多项式时间减少]第2部分
  • <一个href="http://stackoverflow.com/questions/28983729/class-scheduling-to-boolean-satisfiability-polynomial-time-reduction?lq=1">Class调度布尔可满足性[多项式时间减少]
  • Class Scheduling to Boolean satisfiability [Polynomial-time reduction] Final Part (here)
  • Class Scheduling to Boolean satisfiability [Polynomial-time reduction] part 2
  • Class Scheduling to Boolean satisfiability [Polynomial-time reduction]

在他们两个,我得到我的回答(再次感谢您@Amit),但现在已经到了最后的部分,谁将会使这个项目可用:)

in both of them, I get my answer (thank you again @Amit) but now arrived the final part, who will make this project useable :)

我现在可以管理:

  • N个时区间。
  • ç课程。
  • T老师。
  • 在酒店的客房。

我的约束是如下:

  • 2的老师不能在同一个房间在同一时间。
  • 2个疗程不能在同一个房间在同一时间。
  • 教师可以教只有特定的课程。
  • 在有些课程可能发生只在特定的时间间隔。

这就是现在,我的结果是:

So this is for now, my result :

不过这里来,我要补充的最后一部分:我要管理一群学生,有以下限制:

But here comes the final part that I want to add : I want to manage group of students, with the following constraints :

  • 在一组只有一些课程做。
  • 2+组可以在同一个房间里只对特定课程的同时(如独断当然为例)

此外,我成功分离约束,但我不知道如何将这一约束成时间间隔不能重叠的约束。

Again, I success to isolate the constraint, but I have no idea on how to transform this constraint into a "time-intervals should not overlap" constraint.

在此先感谢, 最好的问候,

Thanks in advance, Best regards,

推荐答案

由于学生只能在一个地方的时间:

Since a student can only be in one place at a time:

讲座为连接到同一组学生课程不应该在时间上重叠。

Lectures for courses attached to the same student group should not overlap in time.

编辑:

应该有不同的学生群体重叠没有限制。如果你有这样的限制,你应该将其删除!

There should be no constraint on different student groups overlapping. If you have such a constraint you should remove it!

的约束是对课程。如果你schdeule一个讲座课程A,那么它可能没有任何其他课程的学生群体(县),参加课程A.它也可能不重叠由同一位老师持有的任何其他课程重叠的讲座。

The constraints are on courses. If you schdeule a lecture for course A, then it may not overlap a lecture for any other course for the student group(s) that attend course A. It may also not overlap any other course held by the same teacher.

所以,你有一个多对许多学生和课程,教师和课程之间的许多一对多的关系之间的关系。

So, you have a many-to-many relationship between students and courses and a many-to-many relationship between teachers and courses.

您要安排一些讲座为每门课程有没有老师,没有学生有重叠的讲座约束。

You want to schedule a number of lectures for each course with the constraint that no teacher and no student has overlapping lectures.

关于

2+团可以是在同一个房间中只对特定课程的同时(如独断当然例如)

2+ groups can be in the same room in the same time only for specific courses (like Magistral course for example)

如果该基团可以不混合,那么它是不一样的场(即使该受试者可以是相同的)。因此,如果两个学生团体不能混用对Java,那么你需要将其建模为两个独立的课程,的Java组1 的Java组2

If the groups may not mix, then it is not the same course (even though the subject may be the same). So if two student groups can not mix for Java, then you need to model it as two separate courses, Java group1 and Java group2.

这篇关于排课布尔可满足性[多项式时间减少]最后一部分的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆