Top Banner
Constraint Systems Laboratory 03/25/22 Zhang: MS Project Defense 1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects Juedong Zhang Acknowledgments: NSF Award RI-111795
33

Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

Dec 14, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 2: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 3: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 4: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 5: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 6: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 7: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 8: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 9: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

Constraint Systems Laboratory

04/18/23 Zhang: MS Project Defense 9

Modeling: Combining Preferences

Product of preferences is more sensitive

Page 10: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 11: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 12: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 13: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 14: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 15: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 16: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 17: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

Constraint Systems Laboratory

Evaluating Search: Solution Quality

Impact of the optimization criterion: comparing optimal solutions

04/18/23 Zhang: MS Project Defense 17

Page 18: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 19: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 20: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 21: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 22: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

Constraint Systems Laboratory

OPRAM Architecture

Remote Procedure Call (RPC)

04/18/23 Zhang: MS Project Defense 22

Page 23: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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:

Page 24: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

Constraint Systems Laboratory

Web GUI

04/18/23 Zhang: MS Project Defense 24

Page 25: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

Constraint Systems Laboratory

Legend’s Color Map

04/18/23 Zhang: MS Project Defense 25

Page 26: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 27: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 28: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

Constraint Systems Laboratory

Automatic Solver

04/18/23 Zhang: MS Project Defense 28

Three options:10 seconds1 minute5 minutes

Page 29: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 30: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

Constraint Systems Laboratory

04/18/23 Zhang: MS Project Defense 30

Outline Introduction Problem Modeling & Solving

Methods System Implementation & Features Conclusions & Future Work

Page 31: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 32: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

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

Page 33: Constraint Systems Laboratory 11/26/2015Zhang: MS Project Defense1 OPRAM: An Online System for Assigning Capstone Course Students to Sponsored Projects.

Constraint Systems Laboratory

04/18/23 Zhang: MS Project Defense 33

Thank you

I welcome your questions