special problem presentation
DESCRIPTION
Presentation of "An Efficient Preference-Based Personal Task Scheduler", a Special Problem by Gabriel John P. Gagno of the University of the Philippines Los BanosTRANSCRIPT
![Page 1: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/1.jpg)
AN EFFICIENT PREFERENCE-BASED PERSONAL TASK SCHEDULERGabriel John P. GagnoNovember 24, 2014Institute of Computer ScienceFrancisco O. Santos HallUniversity of the Philippines Los Baños
![Page 2: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/2.jpg)
INTRODUCTION
![Page 3: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/3.jpg)
BACKGROUND
Scheduling is key to beating real-world deadlines. Everyone does some way of scheduling as a way to plan their
activities in a day. Scheduling allows people to plan ahead their activities with
efficiency and ease.
![Page 4: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/4.jpg)
BACKGROUND
The main aim of scheduling is to find a way to minimize submissions after the deadline (avoid being late).
Scheduling also aims to minimize idle time and keep the person productive at all times.
![Page 5: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/5.jpg)
BACKGROUND
Scheduling itself takes time. Currently, scheduling personal tasks are done manually. People spend time creating plans/schedules first before doing
the tasks.
![Page 6: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/6.jpg)
OBJECTIVES
The study aims to devise an algorithm that organizes tasks according to the user’s preference and organize them into a timetable.
Find an algorithm that arranges tasks into a list satisfying the user’s preferences
Dynamically assign tasks into a timetable. Build an application that implements the devised algorithm. Measure user satisfaction of the application (based on the
generated schedules).
![Page 7: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/7.jpg)
SIGNIFICANCE
This study aims to benefit students and working people. Saves time Allows them to start working instead of planning first Less energy spent on planning
![Page 8: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/8.jpg)
PROPOSED SOLUTION
![Page 9: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/9.jpg)
A GENERAL NOTATION FOR SCHEDULING
The scheduling problem in this paper’s context can be defined as with the triplet
is the machine environment indicates a release date indicates that preemption is allowed The objective is to minimize the tardiness in all of the schedule
![Page 10: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/10.jpg)
JOBS, TASKS, AND HABITS
Jobs are the inputs that a single machine (i.e. person) has to do. It has the following properties:
Processing time Release date
The application divides the general concept of jobs in scheduling theory into two: tasks and habits.
Tasks are jobs that have a deadline, a defined number of operations, and a duration. These tasks are the ones that could be scheduled.
Habits are jobs that do not have the same properties as tasks, but they have an assigned frequency. These jobs represent real-life jobs that are repeatable over time.
![Page 11: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/11.jpg)
JOB WEIGHT
Each task is assigned its own weight. Weights are to facilitate the ranking of the tasks in the priority
queue. The weight formula is denoted by
indicates the time constant is the due date is the current date is the constant for processing time is the processing time
![Page 12: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/12.jpg)
PRELIMINARY RESULTS
![Page 13: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/13.jpg)
THE APPLICATION
Reverie is a Java-based application that generates schedules based on these user preferences:
Deadline Completion time
Users can input tasks and habits Users can set their preferences Could run in the background
![Page 14: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/14.jpg)
INITIAL SCHEDULE
We provide a pre-built schedule with the following task already in store:
Job Title: CMSC150 Job Note: Optimize Job Deadline: 11/28/2014 4:00 PM Number of Operations: 1 Duration of each operation: 3
This job is initially assigned the following dates in the schedule: Start time: 11/24/2014 5:10 AM End Time: 11/24/2014 8:10 AM
![Page 15: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/15.jpg)
INITIAL SCHEDULE
Time Sunday Monday Tuesday Wednesday Thursday Friday Saturday
5-66-77-88-99-1010-1111-1212-11-2
Do CMSC150
![Page 16: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/16.jpg)
INITIAL SCHEDULE
We provide three sample inputs, shown in the next slide. All three inputs have one operation only.
![Page 17: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/17.jpg)
INITIAL SCHEDULE
Input 1 Job Title: do SP Job Deadline:
11/24/2014 5:00 PM
Operation Duration: 3
Input 2 Job Title: laundry Job Deadline:
11/24/2014 5:00 PM
Operation Duration: 1
Input 3: Job Title: do 137 Job Deadline:
11/24/2014 5:00 PM
Operation Duration: 2
![Page 18: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/18.jpg)
TEST RUN
Running them in the application, we arrive at the following schedule.
jobId, job start, job end
![Page 19: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/19.jpg)
TEST RUN
Time Sunday Monday Tuesday Wednesday
Thursday
Friday Saturday
5-66-77-88-99-1010-1111-1212-11-2
laundry
Do 137
Do SP
Do CMSC 150
![Page 20: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/20.jpg)
PROTOTYPE STATUS
Weight model is being continuously improved (and proven). Algorithm is being continuously improved to eventually allow
multi-operational jobs (i.e. allowing preemption/staggering). Graphical, more user-friendly interface is not yet available.
![Page 21: Special Problem Presentation](https://reader036.vdocuments.site/reader036/viewer/2022062500/55cf9214550346f57b9357a5/html5/thumbnails/21.jpg)
END