Ràng buộc khiến thời khóa biểu FET của bạn không thể xếp được
Một ràng buộc sai có thể khiến tệp FET không thể giải được và việc tìm kiếm chạy hàng giờ, do đó hãy kiểm tra tệp trước, một việc miễn phí và chỉ mất vài giây.

Bạn nhập xong dữ liệu. Bạn nhấn nút Tạo trong FET. Rồi bạn chờ.
Mười phút trôi qua. Một giờ trôi qua. Số tiết giảng được xếp không bao giờ đạt đến tổng số. Cuối cùng, bạn dừng việc tạo và không có được thời khóa biểu nào. Tệ hơn nữa là bạn không biết tại sao.
Vấn đề thường chỉ nằm ở một ràng buộc
Một thời khóa biểu của trường có hàng trăm ràng buộc. Hầu hết chúng đều đúng. Một trong số đó thì không, và bạn không thể thấy nó.
Ví dụ:
- Một lớp học 31 học sinh chỉ có thể sử dụng các phòng học có 30 chỗ ngồi.
- Một giáo viên có 26 giờ dạy, nhưng chỉ rảnh 24 tiết.
- Một quy tắc khiến một tiết giảng không có thời gian bắt đầu hợp lệ nào trong tuần.
- Bốn tiết học phải diễn ra vào các ngày khác nhau, nhưng nhóm lớp chỉ học có ba ngày.
Mỗi điều này đều khiến thời khóa biểu trở nên bất khả thi. Không có cách sắp xếp nào có thể thỏa mãn nó. Nhưng tệp trông vẫn bình thường. FET mở nó và bắt đầu tìm kiếm.
Tại sao việc tìm kiếm không cho bạn biết
FET làm rất tốt công việc của mình. Nó tìm kiếm một cách sắp xếp tuân thủ mọi ràng buộc. FET từ chối một số tệp ngay lập tức. Đối với nhiều vấn đề khác, nó bắt đầu một cuộc tìm kiếm không thể thành công.
Một cuộc tìm kiếm thất bại chỉ cho bạn biết một điều: cuộc tìm kiếm này không tìm thấy cách sắp xếp nào. Nó không thể phân biệt giữa "các ràng buộc của bạn khiến điều này là không thể" và "lần này tôi không tìm thấy". Vì vậy, bạn thay đổi một trọng số, bạn thử lại, và bạn lại chờ đợi.
Đó là lý do bạn tốn hàng giờ. Thời gian bị lãng phí vào một cuộc tìm kiếm không bao giờ có thể thành công, chứ không phải vào việc giải quyết.
Đếm trước, rồi tìm kiếm sau
Có một câu hỏi nhanh hơn để hỏi trước khi bạn tạo: thời khóa biểu này có khả thi không?
Câu hỏi đó không cần tìm kiếm. Nó cần tính toán số học. Chức năng kiểm tra đọc các ràng buộc của bạn và đếm không gian còn lại mà chúng cho phép:
- số giờ một giáo viên phải dạy, so với số tiết còn trống
- số thời gian bắt đầu mà một tiết giảng còn lại, sau khi áp dụng mọi quy tắc
- liệu hai tiết học bắt buộc phải diễn ra có bị ép vào cùng một tiết hay không
- liệu một nhóm các tiết học có cần nhiều ngày hơn số ngày trong tuần hay không
Khi một trong những số đếm này về không, thời khóa biểu là bất khả thi. Đó không phải là một phỏng đoán về độ khó. Đó là một bằng chứng, và chức năng kiểm tra đưa ra nó trong vài giây.
Nó chỉ ra quy tắc cụ thể
Một bằng chứng chỉ hữu ích khi bạn có thể hành động dựa trên nó. Mỗi phát hiện đều cho biết điều gì sai, bằng từ ngữ đơn giản, và nêu tên các quy tắc liên quan.

Trong ví dụ trên, Môn Toán · 9A có 31 học sinh. Phòng học lớn nhất mà ràng buộc Phòng học ưu tiên cho tiết giảng cho phép có 30 chỗ ngồi. Cách khắc phục rất rõ ràng: cho phép một phòng học lớn hơn, hoặc tách lớp.
Các phát hiện được chia thành các nhóm. Đã chứng minh là bất khả thi chứa các vấn đề mà không trình giải nào có thể vượt qua. Các nhóm khác chứa các lỗi có thể xảy ra và những điều làm cho một tệp trở nên khó. Đọc thêm tại Bốn loại phát hiện.
Hai nơi để sử dụng
Không cần tài khoản: trình trợ giúp FET. Truy cập fetviewer.com/check và chọn tệp .fet của bạn. Nó miễn phí và không giới hạn số lần kiểm tra lại. Tệp của bạn vẫn ở trên máy tính của bạn. Trình duyệt của bạn chỉ gửi một bản tóm tắt đến máy chủ của chúng tôi, và bản tóm tắt không chứa tên: giáo viên, phòng học và các nhóm lớp được truyền đi dưới dạng số. Chúng tôi không lưu trữ gì cả. Xem Kiểm tra tệp mà không cần tài khoản.
Bên trong tài khoản của bạn: Kiểm tra sơ bộ. Khi bạn nhập thời khóa biểu của mình, trang Kiểm tra sơ bộ nằm cùng với các ràng buộc trên màn hình dữ liệu. Mỗi phần ràng buộc cũng hiển thị một dòng tóm tắt ở trên cùng. Thay đổi một ràng buộc, và kiểm tra lại trong khi bạn làm việc. Xem Chức năng kiểm tra sơ bộ làm gì.
Điều nó không thể cho bạn biết
Chức năng kiểm tra chứng minh các trường hợp bất khả thi. Nó không thể chứng minh rằng một tệp sẽ giải được, và nó không thể cho bạn biết FET sẽ mất bao lâu. Một kết quả kiểm tra sạch sẽ loại bỏ một lý do thất bại. Việc tìm kiếm vẫn là công việc của FET.
Vì vậy, hãy sử dụng cả hai, theo thứ tự này:
- Kiểm tra tệp.
- Sửa những gì mà chức năng kiểm tra đã chứng minh.
- Sau đó để FET tìm kiếm.
Đọc so sánh đầy đủ tại Chức năng kiểm tra khác với việc để FET giải quyết như thế nào.
Trước lần chờ đợi lâu tiếp theo
Lần tới khi việc tạo chạy quá lâu, hãy dừng nó lại. Hãy kiểm tra tệp trước. Nếu một ràng buộc khiến thời khóa biểu trở nên bất khả thi, bạn sẽ biết trong vài giây, và bạn sẽ thấy đó là ràng buộc nào.