An Interactive, Constraint-Based System for Task Allocation in an Academic Environment Ryan Lim, Praveen Guddeti, and Berthe Y. Choueiry Constraint Systems Laboratory Computer Science & Engineering University of Nebraska-Lincoln {rlim, vgudetti,
To access the system, a person can login securely from anywhere over the internet. The system targets two types of users: a department administrator, we will call Chris, and a graduate student, we will call Pat. Pat wants to apply for a TA-ship. Chris decides whether Pat is hired and what are her duties. If you would like to test the system, contact our team (or the demo chair) for a password to our demo site. Chris, the administrator Pat, the Graduate student
When Pat logs into the system, she is presented with a list of semesters for which the department is or will be accepting applications. Her selections are confirmed to her by after every update. The modes she can choose from are listed as buttons at the top of the page. This list of buttons is permanent and Pat can freely navigate from one mode to another. Pat is instructed to update her academic record and her teaching preferences.
As advised, Pat first pulls up her academic record to update it. This is important information that the department uses for decision making. It is in Pat’s interest to keep it as up to date and accurate as possible. She still remembers when she had to fill this information on paper and make sure the department receives it on time. At least now, she gets a confirmation of the data by . Hopefully soon, the system will be able to automatically pull all this information from university databases.
Now, Pat specifies her teaching preferences for each of the courses offered by the department on a scale from 5 to 0. A legend, permanently displayed at the bottom of the screen, reminds Pat about the preference meanings. When Pat specifies that she will enroll in a particular class, then her preference is automatically set to 0. She can access the official course descriptions online via the “Course descriptions” button.
To help us improve the system, Pat can choose to fill a simple survey on the ease of navigation and data entry. Now, Pat can safely logout and wait for the department to decide of the fate of her application. She can update her information at any point in time and will be sent a message confirming her updates for her archives.
Chris, the manager, logs in via the same interface as Pat, but he is presented with a different set of modes accessible with the buttons permanently listed at the top of the screen. GTAs GTAs: Chris can access and modify information about GTAs. He can view, sort, and generate PDF reports of students’ academic record & preferences. He can hire, release, and specify the hiring percentage (i.e., GTA capacity) of an applicant, and also send individual or group messages to applicants. Classes Classes: In this modes Chris can access and modify information about classes. He specify course loads, their types (e.g., grading, lab, or lecture), and various dependencies among courses. Interactive selection: Interactive selection: This is currently the most valued mode, it enables Chris to interactively make individual or group assignments and investigate alternative solutions. Search Search: When Chris is not in a playful mode, he can launch a variety of search techniques to automatically solve the problem. The next cool thing is hybridization, which will allow these algorithms to collaborate, each doing what they are best at. Chris can’t wait for such strategies to be available … System admin System admin: Luckily, Chris has a friendly access to the processes controlling the server and the application: he does not have to mess with shell-level commands.
“GTAs” mode Before he can start solving the problem, Chris needs to fill some information that define the constraints of the application. If you are impatient to see search at work, jump to the Interactive Selection mode. First, the “GTAs” mode: Chris is presented with several functions to view information about the applicants such as their academic records, preferences, and employment history. These functions are listed as buttons on the left hand margin, and are specific to each mode.
“All GTAs in system” The “All GTAs in system” function lists all the GTAs who have access to this system with the timestamps of their last academic record and teaching preference entries. By clicking on the timestamps the manager may edit the academic record or view the preference values for a particular GTA.
This system is used by the department to store GTA employment history records. Clicking on the green areas allows the manager to view and change the records.
These records include their hired capacity, salary and assigned courses.
“Applied” The “Applied” function provides a page of all candidate GTAs who have applied for the current semester (top left pull down menu). Here, Chris hires and releases GTAs by marking or unmarking the checkboxes on the left. He can also specify their hiring capacity (.25,.33,.5,.66,.75 or 1).
“Hired” The “Hired” function, on the other hand, lists only hired GTAs, so Chris is not distracted by a long list. Similar to the previous function, this function allows Chris to edit, view and print the academic records and teaching preferences.
“Filter” Assistantships are competitive. It is important to ensure that hired GTAs fill some selection criteria. The “Filter” function allows Chris to selectively display the list of GTAs that match or exceed the department’s expectations and priorities (in terms of GPA, PhD/MS program, ITA qualifications, employment history, current support, etc.) The selective query functionality is really useful for filtering qualified applicants, reinforcing a fair selection and reducing human error.
“Preference Ranking: Applied” The “Preference Ranking: Applied” function sorts the highest preference classes per GTA. Chris likes this summary because he can visually identify students with limited top preferences. He often refers to it when making selections interactively. The same function exists sorting hired GTAs.
Edit record” Although rarely needed, Chris may be required to “Edit (the academic) record” of the GTAs. Chris can print a (PDF) hard copy of the record using the “pretty print” to fill the cabinets of the graduate office.
Chris can access (i.e., view and print) GTA’s teaching preferences. “GTAs” “Classes.” These functions are all accessible from the “GTAs” mode, the following button in line is for accessing and setting up “Classes.”
“Classes” The “Classes” button allows Chris to set up constraints regarding the classes offered by the department during a semester.
“Load & Type” The “Load & Type” function allows Chris to specify the class load and its type (i.e., lecture, grading, lab, or recitation). Typically, classes with large enrollment numbers are given a higher course load (0,.25,.33,.5,.66,.75, 1).
“Confinement” “Same-TA” “Confinement” is a constraint that restricts a GTA exclusively to classes in a specific group. “Same-TA”, on the other hand, is a constraint forcing all courses in a group to have the same TA.
duplicated Occasionally, classes may have to be duplicated because enrollment is too large and sessions are split. removed Also, some courses may have to be removed.
“Dependencies” For a given lecture, there may be other classes (e.g., lab, recitation) associated with it. In this example, the class “Intro to Computer Science” has two lab classes associated with it. Chris uses the function “Dependencies” to declare such associations.
“Preassignment” The “Preassignment” function allows Chris, via a pull-down menu for each class, to assign a GTA to the class, overriding all constraints. Chris remains in control.
Chris likes to check for a given class the list of students sorted according to their highest preferences (5 or 4). He feels that this perspective is useful and helps him during decision making. He still remembers sorting this data manually…
Interactive selection GTAs to Classes” Interactive selection is Chris’ favorite mode. It allows him to interactively make consistent decisions. The function “GTAs to Classes” displays the list of classes. For each class, a pull-down menu lists qualified GTAs (those selectable with a blue background, and those busy elsewhere with a pink background). Further, within the menu, GTAs are sorted by their decreasing preferences to encourage Chris to choose a GTA who likes the course. The current available capacity of a GTA is shown in parenthesis “()”.
Classes to GTAs Adopting a dual perspective (Classes to GTAs), Chris can choose one or more class for a given GTA. At any point in time, Chris can switch from a GTA-centered view (this slide) to a class-centered view (the previous slide). He finds this functionality really empowering: he can choose what to focus on.
Interactive Selections Multiagent ERA Heuristic backtrackRandomized backtrackStochastic local search In addition to Interactive Selections, Chris has access to a number of automated search algorithms. Multiagent ERA, Heuristic backtrack, Randomized backtrack, Stochastic local search are currently available. Each has its advantages and shortcomings. Some are quick others can solve tight problems. The next cool step is to design hybrid strategies so that these search mechanisms can collaborate.
results are displayed When search halts, the results are displayed. For now, they don’t look so compelling, but at least, they can be found.. In the future, Chris will be able to choose portions of solutions (built automatically or interactively) and compose them freely
Online demo available upon request