1 / 32

Online Interactive Problem-Solving Venkateshwar Rao Thota Constraint Systems Laboratory

Online Interactive Problem-Solving Venkateshwar Rao Thota Constraint Systems Laboratory University of Nebraska-Lincoln. Outline. Strategies for problem solving GTAAP Interactive system Conclusions & future work. Strategies for problem solving. Batch processing

dillion
Download Presentation

Online Interactive Problem-Solving Venkateshwar Rao Thota Constraint Systems Laboratory

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. Online Interactive Problem-Solving Venkateshwar Rao Thota Constraint Systems Laboratory University of Nebraska-Lincoln

  2. Outline • Strategies for problem solving • GTAAP • Interactive system • Conclusions & future work

  3. Strategies for problem solving • Batch processing • Executing a series of non-interactive jobs all at one time • Interactive problem-solving • Interactive applications respond to commands as the user enters them • Computer and user work side-by-side to define, analyze, and solve a problem

  4. Start Build a model Problem instance Run solver Is Solution found? No Yes Output solution Exit Steps in batch processing • Analyze the problem • Build a model • Choose a solver and post problem instance • Wait until a solution is found or a termination condition is reached

  5. Search algorithms may not terminate in a reasonable amount of time Constraints may not be amenable to formal modeling Political correctness Preferences may vary with time and users User Cannot control search (its focus, progress) Cannot provide hints to break ties, balance tradeoffs Cannot modify/adapt problem encoding during processing without restarting from scratch Deficiencies of batch processing

  6. Advantages of interactive processing • User • has direct control of decisions being made • can enforce online personal preferences and alternative conditions • Goal: exploit • The processing power of computers and their ability of maintaining consistency • The human's domain expertise and intuition for creative solving abilities

  7. Start Build a model Problem instance Interactive solver Obtain user hints Reformulate problem Is Solution found? Output solution Yes No Exit Steps in interactive problem solving • Build a model • Post model to the interactive solver, which removes inconsistencies • User offers hints, makes or removes decisions • Update model and re-post to interactive solver

  8. Outline • Strategies for problem solving • GTAAP: • Background, problem modeling, system architecture • Interactive system • Conclusions & future work

  9. GTAAP • Given • A set of academic tasks • A set of GTAs to assign to these tasks • A set constraints restricting combinations • Find a consistent & satisfactory assignment • Consistent: assignment breaks no (hard) constraints • Satisfactory: assignment maximizes • number of courses covered • happiness of the GTAs

  10. GTAAP as a CSP • Variables • Courses involving grading, conducting lectures, labs & recitations • Values • GTAs + preference for each course (variable). • Constraints • Unary: • ITA-certification, enrollment, time conflict, zero preferences, etc. • Binary: • Equality: Courses should have same GTAs • Mutex: Courses should have different GTAs (overlapping) • Non-binary: • Same-TA, capacity, confinement constraint

  11. Server Environment (cse.unl.edu) Client Student Web-interface Profile Information Database (GTAs & Courses) Course Information Student Manager Web-interface HireGTAs Setup courses Interactive system Manager Interactive selections Interactive Solver GTAAP: System architecture

  12. Outline • Strategies for problem solving • GTAAP • Interactive system • Motivation & requirements • Components • Visual interfaces • Algorithms • Database • Conclusions & future work

  13. Manual solving Too many constraints: Tedious & error prone Unsatisfactory assignments Difficult to test alternative assignments Automated solvers BT [Glaubius], LS [Zou], ERA [Zou], RDGR [Guddeti] Large search space Often over-constrained (problematic for incomplete solvers) Difficulties of GTAAP

  14. Interactive processing General requirements • A visual interface for user interaction • An algorithm that • Accounts for user’s input and integrates it into the problem encoding • Propagates the effect of the decision to prepare the new encoding for another input from user • A database to store • Problem data (perhaps, also intermediate encodings) • Alternative partial or complete solutions

  15. Visual interface • Interface • Offers dual perspective: Course & GTA-centered • Shows legal choices: • possible (blue) • un-available (pink) • Sorts legal choices by decreasing preference and shows available capacity • User actions • Make an assignment (GTA to course, course to GTA) • Undo an assignment

  16. Dual perspective Course-centered view GTA-centered view

  17. Course-centered view

  18. Course-centered view Course name Course load Course number, section Course timings and days Assigned GTA Consistent GTAsList of available GTAs for assignment GTA Preference for course GTA name Available GTA capacity Inconsistent GTAsList of busy GTAs who cannot be assigned

  19. GTA-centered view

  20. GTA-centered view Courses assigned to GTA Advisor GTA name Speak test, ITA qualification, GTA capacity Courses that are available for assignment to GTA Courses that cannot be assigned GTA Preference for course Course number – section Course load Course name

  21. Visual interface: Other features • Show / Hide displayed attributes • Each attribute has an accessor method for controlling its display, thus allowing easy addition and removal of new attributes • Sorting according to an attribute Sorting functionality

  22. Visual interface: summary • An online web-based interface, available anytime & anywhere • Intuitive and easy to use • Offers a flexible dual perspective • Allows user to undo decisions • Instantly displays consequences of actions • Provides a sorting functionality for displaying results

  23. Algorithms for interactivity • Algorithms: efficient algorithms for maintaining problem consistency • Node-Consistency (NC) algorithm • Arc-Consistency (AC) algorithm • Propagation of available capacity (arc-consistency on a global constraint) • Functionalities • Making / undoing assignments • Propagating effect of modifications, including capacity

  24. Web-Server Interactive Solver (LISP based daemon process) Port file Interactive selections web-interface (PHP scripts) Consistency Algorithms SocketListener LISP command prompt CSP modelGTAAP structures MySQLDatabase TCP/IP connection Function access Database connection The algorithms in the system Server environment Client Manager (browser)

  25. Basic consistency algorithms • Node-consistency (NC) • Goes through each course • Ensures that all listed GTAs are legal • Arc-consistency (AC) • Goes through every binary constraint • Ensures that a GTA x is listed for one course only when there is another GTA y listed for the other course consistent with x given the binary constraint between the two courses, otherwise it removes GTA x • Propagating capacity constraint • Goes through all courses requiring a given GTA • Ensures that the course load does not exceed the GTA’s capacity

  26. Assignment Start • Assign GTA to course • Update capacity • Update domains • Propagate capacity • Perform AC Set course TA  g Capacity(g)  Capacity(g) - Load(c) Domain(c)  {g} For all unassigned courses,Propagate capacity of g Perform arc-consistency Exit

  27. Unassignment Start • Remove the course assignment • Update capacity • Do all the previous assignments and propagate the capacity • Run AC Unassign g from c Capacity(g) = Capacity(g) + Load(c) Store current assignments Reset all course domains For each stored assignment <c’,g’>1.Set course TA (c’)  g’2.Domain(c’)  {g’}3.Propagate capacity of g’ Perform arc-consistency Exit

  28. DataBase • Change problem definition [Lim] • Save / retrieve scenario • All the saved scenarios will be lost when data is re-fetched. Saved scenarios

  29. Outline • Strategies for problem solving • GTAAP • Interactive system • Conclusions & future work

  30. Implementation of interactivity • The visual interface in PHP • The propagation algorithmsin LISP • The database in MySQL[Lim] • We added 2 tables for storing alternative solutions

  31. Final note • Conclusions • Intuitive, facilitates problem solving • Helps manager assessing needed resources • Supports the quick development of ‘stable’ solutions • Future work • Comparison and combination of partial solutions • Cooperative, hybrid search • Visualization of solution space

  32. Thank you for your attention I welcome your questions…

More Related