Comments (3)
@Siddiq200 Thanks for letting us know about the bug. It has been fixed.
from timetabler.
Could you please provide a complete example (however small it may be) where this fails (i.e., field input, inputs, and custom constraints)?
from timetabler.
->Fields
weights: # Assignment, high level
instructor: [-1, -1]
segment: [-1, -1]
is_minor: [-1, -1]
program: -1
classroom: [-1, -1]
slot: [-1, -1]
# Predefined Weights
# instructorSingleCourseAtATime
# classroomSingleCourseAtATime
# programSingleCoreCourseAtATime
# minorInMinorTime
# twoLectures of same
# exactlyOneSlotPerCourse
# exactlyOneInstructorPerCourse
# exactlyOneSegmentPerCourse
# exactlyOneIsMinorPerCourse
# exactlyOneClassroomPerCourse
# coreInMorningTime
# programAtMostOneOfCoreOrElective
predefined_weights:
- clause: 0
weight: 1
segments:
start: 1
end: 2
instructors:
- T1
- T2
- T3
- T4
- T5
- T6
- T7
- T8
- T9
- T10
classrooms:
- number: CS001
size: 200
- number: CS002
size: 200
- number: CS003
size: 200
- number: CS004
size: 200
- number: CS-Lab-001
size: 250
- number: CS-Lab-002
size: 250
programs:
- BSCS-S1-A
- BSCS-S2-A
slots:
- name: MO1
is_minor: false
time_periods:
- day: Monday
start: 8:01
end: 9:30
- name: MO2
is_minor: false
time_periods:
- day: Monday
start: 9:31
end: 11:00
- name: MO_LAB_1
is_minor: lab
time_periods:
- day: Monday
start: 8:01
end: 10:00
- name: MO_LAB_2
is_minor: lab
time_periods:
- day: Monday
start: 10:01
end: 12:00
- name: MO_MI_1
is_minor: true
time_periods:
- day: Monday
start: 8:01
end: 9:00
- name: MO_MI_2
is_minor: true
time_periods:
- day: Monday
start: 9:01
end: 10:00
- name: TU1
is_minor: false
time_periods:
- day: Tuesday
start: 8:00
end: 9:30
- name: TU2
is_minor: false
time_periods:
- day: Tuesday
start: 9:31
end: 10:59
- name: TU_MI_1
is_minor: true
time_periods:
- day: Tuesday
start: 8:01
end: 9:00
- name: TU_MI_2
is_minor: true
time_periods:
- day: Tuesday
start: 9:01
end: 10:00
- name: WE1
is_minor: false
time_periods:
- day: Wednesday
start: 8:00
end: 9:29
- name: WE2
is_minor: false
time_periods:
- day: Wednesday
start: 9:31
end: 10:59
- name: WE_LAB_1
is_minor: lab
time_periods:
- day: Wednesday
start: 8:01
end: 10:00
- name: TH1
is_minor: false
time_periods:
- day: Thursday
start: 8:00
end: 9:29
- name: TH2
is_minor: false
time_periods:
- day: Thursday
start: 9:31
end: 10:59
- name: FR1
is_minor: false
time_periods:
- day: Friday
start: 8:00
end: 9:29
- name: FR2
is_minor: false
time_periods:
- day: Friday
start: 9:31
end: 10:59
->Input
name,class_size,instructor,segment,is_minor,BSCS-S1-A,BSCS-S2-A,classroom,slot
CS3550,40,T1,12,No,Core,No,,
CS6250,40,T2,12,No,Core,No,,
CS5470,10,T3,12,No,Core,No,,
CS3550,40,T1,12,No,Core,No,,
CS6250,40,T2,12,No,Core,No,,
CS5470,10,T3,12,No,Core,No,,
->Output
name | class_size | instructor | segment | is_minor | BSCS-S1-A | BSCS-S2-A | classroom | slot
-- | -- | -- | -- | -- | -- | -- | -- | --
CS3550 | 40 | T1 | 12 | No | Core | No | CS001 | TU1
CS6250 | 40 | T2 | 12 | No | Core | No | CS001 | TH2
CS5470 | 10 | T3 | 12 | No | Core | No | CS001 | WE1
CS3550 | 40 | T1 | 12 | No | Core | No | CS001 | MO1
CS6250 | 40 | T2 | 12 | No | Core | No | CS001 | TU2
CS5470 | 10 | T3 | 12 | No | Core | No | CS001 | MO2
->Custom
COURSE * INSTRUCTOR {T1} NOT IN SLOT {MO1,TU1} WEIGHT -1
from timetabler.
Related Issues (20)
- Weights corresponding to custom constraints are not added correctly HOT 2
- Command line arguments
- Improve documentation
- Improve error messages
- Use GoogleTest for testing
- Custom constraints for "COURSES EXCEPT LIST ..."
- Create test suite and mechanism to test on randomly generated test cases
- Create a video tutorial on how to install/use etc.
- Remove IITH specific statement in the description HOT 2
- Use glog for logging HOT 1
- Add support for multiple instructors
- Unclear terminology HOT 1
- Issue with PEGTL
- Error parsing constraints HOT 1
- timetabler -f fields.yml -i input.csv -c custom.txt -o output.csv
- [INFO] Input is valid [ERROR] custom.txt:1:0(0) Error parsing custom constraints HOT 1
- Use Tseitin encoding to decrease memory usage HOT 3
- Add comments in all the files HOT 1
- Change Makefile to CMake HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from timetabler.