1 / 8

A Student Advisory System: a configuration problem for constraint programming

A Student Advisory System: a configuration problem for constraint programming. Kevin McDonald & Patrick Prosser. The Problem. University degrees are now modular a degree is composed of a set of modules each module is worth a certain amount of credits

aarturo
Download Presentation

A Student Advisory System: a configuration problem for constraint programming

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Student Advisory System: a configuration problem for constraint programming Kevin McDonald & Patrick Prosser

  2. The Problem • University degrees are now modular • a degree is composed of a set of modules • each module is worth a certain amount of credits • students must accumulate a minimum number of credits • modules have pre and co-requisites • Students select modules • they design/configure their own degree course • they want to know implications of choices made • they want to know why certain choices are forced or disallowed

  3. The Glasgow Computer Science Problem (4th year of study) This is a pilot study • 4th year is split across two semesters • 8 modules must be taken • 4 or 5 modules can be taken in 1st semester • 3 or 4 modules can be taken in 2nd semester • there are 8 modules to choose from in 1st semester • there are 8 modules to choose from in 2nd semester • The 1st semester module NCT is a prerequisite for 2nd semester module AC

  4. Modeled as a CSP in Choco • Each module is an IntVar with 0/1 domain • take (1) or don’t take (0) • Each semester is an IntVar • the number of modules that can be taken in that semester • Constraints are • summation for each semester • summation in total • prerequisite as implication P  Q • The problem is NOT solved • the user selects modules or de-selects modules • the user can specify the number of modules in a semester • arc-consistency is established • user can step back (undo a decision)

  5. Explanations • User can ask why a module is disallowed or why a module is forced • why is a value disallowed? • why is a value forced? We use Ulrich Junker’s QuickXplain to explain event X

  6. And example of Explanations by QuickXplain • Assume we have made the following decisions • A,B,C,D.E and somewhere in that sequence X has occurred • undo all decisions • make decisions A, then B, then C, then D, … and X occurs! • D is a culprit! • Undo all decisions • make decisions D, then A, then B, … and X occurs • D and B are culprits! • Undo all decisions • make decisions D, then B, … and X occurs • D and B are a sound and minimal explanation! X could be any event

  7. Conclusion & Future Work • The CP encoding captures the dynamics of decision making • data base solutions failed to do this • QuickXplain is very neat • The encoding is simple • Although a CSP, it is not solved in the traditional sense • Did not need to use techniques from dynamic CSP • maybe required on large problem, due only to size. • A bigger problem with a GUI is “on the cards” • Why only arc-consistency? Why not higher levels of consistency?

  8. Questions?

More Related