시간표 정도는 자동으로

복학 준비를 하면서, 어제 신촌으로 이사도 하고 준비가 착착 되어가고 있습니다~
이제 내일부터는 수강신청인데, 항상 할 때마다 과목끼리 충돌 검사도 하고, 주4를 만들려면 어떻게 해야하나 항상 고민을 하는게 참 귀찮았습니다. 그래서, 아무래도 이런 작업은 사람이 할 일이 아닌 것같아서 자동으로 선호도를 입력하면 시간표를 만들어 주는 스크립트를 하나 만들었습니다. 으흐흐~

우선 입력값으로 들어가는 것은, 후보 과목들의 기본 정보들과 각 수업의 대체 그룹 (같은 그룹에서는 1과목만 신청하게)을 CSV로 지정해서 그것을 프로그램에서 읽어옵니다. 그리고, 그 외의 정보로 따로 들어오는 것은

  • 신청 학점 (최소, 최대)
  • 주4일 선호 가중치
  • 주3일 선호 가중치
  • 학교에 있는 시간 가중치 (-로 주면 가급적이면 공강을 줄임)
  • 이른 아침 시작 가중치 (-로 주면 아침 수업을 피함)
  • 저녁 수업 가중치 (-로 주면 저녁 수업을 피함)
  • 과목별 선호도 (학점에 곱함)
  • 수업 과집중 가중치 (-로 주면 수업이 너무 많이 몰리는 것을 피함)

으흐흐 그래서 시간표를 몇 개 뽑아 봤더니 직접 손으로 짠 것보다 만족스러운 것이 몇개 나오는군요~ 수강신청 하다가 몇개 꽉 찼을 때도 대안 시간표를 쉽게 새로 생성이 가능!

CSV 파일 형식은 이런 식으로 입력합니다. (그룹,가중치…,학점 순)

소스는 snippets/aratt에 있습니다. (프로그램 이름은 Arranger for the Relaxed Assembly of TimeTable 에서 따왔습니다. -_-;) 라이선스는 언제나 그렇듯 libpng/zlib license를 적용합니다.

4 thoughts on “시간표 정도는 자동으로”

  1. 강의실이나 강의시간이 바뀌어서 파란색으로 되어 있는 경우엔 에러나네요.   뒤에

  2. nbsp 뒤에 FONT 가 들어가서, 빈칸을 긁어옵니다..

    실용영어회화 waive 같이 sched 와 places 가 비어있는 경우도 에러가 나네요..

    좀 고쳐보긴 했는데 몇가지 넘들이 시간표로 안들어가서.. 버그리포팅 하고 도망갑니다. =3=3

Comments are closed.