academic advisor: prof. ronen brafman team members: ran isenberg mirit markovich noa aharon alon...

15
Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman A Day In a City ADD Presentation

Post on 19-Dec-2015

219 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman

Academic Advisor:Prof. Ronen Brafman

Team Members:Ran IsenbergMirit MarkovichNoa AharonAlon Furman

A Day In a CityADD Presentation

Page 2: Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman

Outline• System Requirements• System Architecture• Class Diagram• User Interface• Algorithm• Task List

Page 3: Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman

System RequirementsFunctional

requirements Answering a

question. Evaluating an

activity Changing the

duration of an activity in the schedule.

Removing an activity from the schedule.

Search for an activity

Details about an activity

Change city.

Non functional requirementsSpeedCapacityModularityProgramming

LanguageExternal APISE Project constraints

Page 4: Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman

System Architecture

Database

Page 5: Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman

System Architecture (Cont.)

Page 6: Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman

Class DiagramSCUFacad

e

CityModelHandler Solver

GUIController

Database

DBHandler ExhaustiveSolver

DistributedSolver

Schedule

Activity

Page 7: Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman

MCVMV Pattern

View ViewModel

Controller

Model

Page 8: Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman

User Interface

Change City

Choose city: HAIFA

TEL-AVIVHADERA……Submit

Page 9: Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman
Page 10: Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman
Page 11: Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman
Page 12: Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman

The AlgorithmThe algorithm is based on the article

“Asynchronous Forward Bounding for Distributed COPs, Amir Gershman, Amnon Meisels and Roie Zivan – '09”.

Each agent represents an activity in a city.The domain values of each agent represent

the time interval between the opening hour and the closing hour of the activity, partitioned into 30 min segments.

In addition, the value of the best schedule found so far, and the number of agents who didn't participate in that schedule are stored as global variables.

Page 13: Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman

Bahai Gardens

Museum of Art

German Colony

Mall

ScheduleThe first agent tries to assign a value from its domain.

09 :00−09 :3009 :3 0−10 :0 010 :00−10 :3010 :3 0−11:00

0 8: 00−08 : 300 8: 3 0−09: 0009 :00−09 :3009 :3 0−10 :0 0

09 :00−09 :3009 :3 0−10 :0 010 :00−10 :3010 :3 0−11:00

09 :3 0−10 :0 010 :00−10 :3010 :3 0−11:00

The agent sends the partial assignment to the next agent

The agent also sends a request to all agents with id greater than his to estimate if they will participate in the assignment in order to calculate how many agents are not going to participate in the current assignment

Meanwhile the second agent tries to assign a value from its domain, sends the partial assignment etc…

Page 14: Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman

When some agent receives an evaluation from other agents regarding how many of them will not participate in the new assignment, he checks whether this value is larger than the number of agents not participating in the schedule found so far. If it is, the new schedule can’t be better than the one found already and the current branch can be pruned.

If the last agent fills the partial assignment and the value of that assignment is greater than the current solution, he will advertise the solution to all agents.

Page 15: Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman

Task ListDevelopment

15/02 – 30/04Database & City Model diagrams

15/02 – 05/03Persistence layer handlers

01/03 – 10/03Solver

15/03 – 30/04Logic Layer (Façade, GUI Controller)

30/03 – 20/04Views and ViewModels

07/04 – 15/04Testing + Unit Testing

01/04 – 30/04Prototype Submission

30/04