Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for...
-
Upload
willis-richardson -
Category
Documents
-
view
216 -
download
0
Transcript of Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for...
Constraint Systems Laboratory
04/18/23 Zhang: MS Project Defense 1
OPRAM: An Online System for Assigning Capstone Course
Students to Sponsored Projects
Juedong Zhang
Acknowledgments: NSF Award RI-111795
Constraint Systems Laboratory
04/18/23 Zhang: MS Project Defense 2
Outline Introduction
• Background• Motivations• Contributions
Problem Modeling & Solving Methods System Implementation & Features Conclusions & Future Work
Constraint Systems Laboratory
04/18/23 Zhang: MS Project Defense 3
Background CSE Capstone Course
• An integral part of the undergraduate curriculum• Professional development opportunities
ParticipantsStudents, sponsors, CSE faculty, & iLab staff
Team formation
Constraint Systems Laboratory
04/18/23 Zhang: MS Project Defense 4
Motivations Team assignment is challenging
• Large class (CS + CE)• Various constraints
• Capacity limit for each project• Students’ preferences• Sponsors’ preferences
Constraint-based system for decision support• Automatic solver generates solutions upon request • Interactive solver maintains consistency for user• Visual support guides user to make good assignments
Constraint Systems Laboratory
04/18/23 Zhang: MS Project Defense 5
Contributions1. Modeled the task as a Constrained Optimization
Problem (COP) with three optimization criteria2. Designed a search algorithm that can generate the
optimal solution in a reasonable amount of time3. Developed an interactive solver that maintains
consistency while the user explores the search space 4. Created a web GUI interface that encapsulates both
solvers and provides an unified user experience5. Co-built an MySQL database for data persistence
Constraint Systems Laboratory
04/18/23 Zhang: MS Project Defense 6
Outline Introduction Problem Modeling & Solving Methods
• Problem modeling• Problem solving methods• Evaluation of search performance
System Implementation & Features Conclusions & Future Work
Constraint Systems Laboratory
04/18/23 Zhang: MS Project Defense 7
Modeling: COP Given
• Variables: The students enrolled in the Capstone Course• Domains: The projects applied to which a student applies• Hard constraints:
• A project’s capacity limit• A student does not choose a project or a sponsor does not
choose a student• Soft constraints: Students/sponsors preferences between 0…5• Objective function: Three criteria based on preferences
Query: find a value for each variable such that • All hard constraints are satisfied and • The objective function is optimized
Constraint Systems Laboratory
04/18/23 Zhang: MS Project Defense 8
Modeling: Soft Constraints Students preferences
“I am interested in working on this project.”
Sponsors preferences
“I think this student is a good fit for my project.”
Agreeableness of the statement
a preference score
Constraint Systems Laboratory
04/18/23 Zhang: MS Project Defense 9
Modeling: Combining Preferences
Product of preferences is more sensitive
Constraint Systems Laboratory
04/18/23 Zhang: MS Project Defense 10
Modeling: Objective Function Avg
• Maximize the average value over all preferences
Geo Avg• Maximize the geometric average value over all preferences
Maxmin• Maximize the minimum value over all preferences
Constraint Systems Laboratory
Problem Solving Method Backtrack search Variable Ordering
• First choose the student with the least number of projects (i.e., least-domain first)
Value Ordering• Assign to a student first the project with the highest preference
(i.e., most promising value)
Constraint propagation by local consistency Exhaustive, depth-first search Branch-and-bound with a heuristic function
04/18/23 Zhang: MS Project Defense 11
Constraint Systems Laboratory
Local Consistency Node consistency
• Apply to the zero preference constraint• Remove the 0 value from the domain of every variable
Generalized arc consistency (GAC)• Apply to the capacity constraint• Remove the value (project) from the domain of all
future variables when the load of that project is reached
04/18/23 Zhang: MS Project Defense 12
GAC is the foundation of our interactive solver
Constraint Systems Laboratory
Heuristic Function h Given an assignment of i variables
• The cost of the partial solution
• The estimated cost of remaining assignments
• The total estimated cost
h(.)• Choose the value with highest preferences, even if values are
inconsistent with partial solution• h(.) is admissible, it never underestimates the cost of the real
solution
04/18/23 Zhang: MS Project Defense 13
Constraint Systems Laboratory
Search: FC-BnB search algorithm
Forward checking (FC) algorithm [Haralick and Elliott, 1980]
• A systematic search technique• After a variable is instantiated, it looks ahead (executes GAC)• When detecting a domain wipeout, it backtracks chronologically
Branch-and-Bound• Finds a first solution quickly, the incumbent• After a variable is instantiated, compares the quality of current
solution to that of the incumbent, updates incumbent• Exhaustive search, linear in space
04/18/23 Zhang: MS Project Defense 14
FC- BnB is the foundation of our automatic solver
Constraint Systems Laboratory
{(P2,5)}
{(P2,5), (P1,3)}
{(P3,3), (P1,1)}
Variable Domain
CurrentVariable
If Avg optimization criterion is used
f ((V1,5), (V2,5), (V3,3), (V4,5), (V5,5), (V6,))
= g ((V1,5), (V2,5)) + h ((V3,3), (V4,5), (V5,5), (V6,3))
= ((5 + 5) + (3 + 5 + 5 + 3)) / 6
= 4.33 Estimated solution quality at V2. Proceed to V3 only if it is better than incumbent
FutureVariables
V1 V2 V3 V4 V5 V6
(P2,5) (P2,5) (P3,3) (P1,5) (P3,5) (P1,3)
The h function ignores hard constraintsAssignments made by FCV1
V2
V3
V4
V5
V6
Illustrating Search: Example
{(P1,5), (P3,3)}
Projects removed by FC to comply with the capacity constraints
Six students V1 ~ V6
Three projects P1 ~ P3, each with a capacity of 2
04/18/23 Zhang: MS Project Defense 15
Constraint Systems Laboratory
Evaluating search: CPU
Data Sets• Fall 2013: 45 students, 11 projects• Spring 2014: 10 students, 3 projects
Impact of the h function
04/18/23 Zhang: MS Project Defense 16
Constraint Systems Laboratory
Evaluating Search: Solution Quality
Impact of the optimization criterion: comparing optimal solutions
04/18/23 Zhang: MS Project Defense 17
Constraint Systems Laboratory
04/18/23 Zhang: MS Project Defense 18
Outline Introduction Problem Modeling & Solving Methods System Implementation & Features
• System architecture• iLab infrastructure• OPRAM architecture
• OPRAM Functionalities• Web GUI• The Legend’s color map• Interactive solver• Automatic solver• Solution comparison
Conclusions & Future Work
Constraint Systems Laboratory
04/18/23 Zhang: MS Project defense 19
iLab Infrastructure
A user’s view
UserRegistration
InformationExchange
ProjectAssignment
Students / Sponsors
ProgressManagement
Instructors / iLab Staff
iLabAdministrator Module we developed
Module in progress
Constraint Systems Laboratory
04/18/23 Zhang: MS Project defense 20
iLab Infrastructure
A system view
UserRegistration
InformationExchange
iLabDB
ProgressManagement
iLab Info Project
OPRAMProjectAssignment
iLab X Project
Module we developed
Module we co-developed
Module in progress
Constraint Systems Laboratory
OPRAM Architecture
Google Web Toolkit
04/18/23 Zhang: MS Project Defense 21
Server(Backend)
Client(GUI)
RPC
Google Web Toolkit Application
Java EE AJAX
Runs in Browser
Runs on Server
Constraint Systems Laboratory
OPRAM Architecture
Remote Procedure Call (RPC)
04/18/23 Zhang: MS Project Defense 22
Constraint Systems Laboratory
OPRAM Architecture
Software design
04/18/23 Zhang: MS Project Defense 23
RPC
GUIServiceClientImpl.Service
Async.
ServiceServiceServerImpl.
ClientServer
DBAccess
AutoSolver
InteractiveSolver
Request
Reply
Interface
ImplementationColor legend:
Constraint Systems Laboratory
Interactive Solver: Student View
04/18/23 Zhang: MS Project Defense 26
Project not available
Total number of students
1-semester or2-semester student
Preference
Constraint Systems Laboratory
Interactive Solver: Project View
04/18/23 Zhang: MS Project Defense 27
Project overview sub-panel Individual project sub-panel
Project not available
Total numberof projects
How manymore students
can be assignedAverage preference
Individual projecttab
Preference
Display the list of projects applied by the student when mouseover the preference
Project the student currently assigned to is shown in bold
Constraint Systems Laboratory
Automatic Solver
04/18/23 Zhang: MS Project Defense 28
Three options:10 seconds1 minute5 minutes
Constraint Systems Laboratory
Solution Comparison
04/18/23 Zhang: MS Project Defense 29
Only comparable solutions are displayed
Three additional metrics for current solution listed
Constraint Systems Laboratory
04/18/23 Zhang: MS Project Defense 30
Outline Introduction Problem Modeling & Solving
Methods System Implementation & Features Conclusions & Future Work
Constraint Systems Laboratory
Conclusions Designed & implemented a web-base system
for Capstone Course project assignment decision support
OPRAM demonstrated significant improvements • on time to solution • as well as the quality of assignment found
CSE faculty and iLab staff are satisfied with OPRAM’s capabilities and have decided to take advantage of it in the upcoming semester
04/18/23 Zhang: MS Project Defense 31
Constraint Systems Laboratory
Future Work A formal proof for NP-hardness of this assignment
problem Explore other optimization criteria such as “stable
matching” Explore whether or not ‘a minimum size per project’ is
appropriate Support further interoperability between our two solvers Conduct longitudinal study of usefulness & flexibility
04/18/23 Zhang: MS Project Defense 32