a day in a city add presentation

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

Upload: lane-walters

Post on 03-Jan-2016

31 views

Category:

Documents


7 download

DESCRIPTION

A Day In a City ADD Presentation. Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman. Outline. S ystem Requirements System Architecture Class Diagram User Interface Algorithm Task List. System Requirements. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: A Day In a City ADD Presentation

Academic Advisor:Prof. Ronen Brafman

Team Members:Ran IsenbergMirit MarkovichNoa AharonAlon Furman

A Day In a CityADD Presentation

Page 2: A Day In a City ADD Presentation

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

Page 3: A Day In a City ADD Presentation

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: A Day In a City ADD Presentation

System Architecture

Database

Page 5: A Day In a City ADD Presentation

System Architecture (Cont.)

Page 6: A Day In a City ADD Presentation

Class DiagramSCUFacad

e

CityModelHandler Solver

GUIController

Database

DBHandler ExhaustiveSolver

DistributedSolver

Schedule

Activity

Page 7: A Day In a City ADD Presentation

MCVMV Pattern

View ViewModel

Controller

Model

Page 8: A Day In a City ADD Presentation

User Interface

Change City

Choose city: HAIFA

TEL-AVIVHADERA……Submit

Page 9: A Day In a City ADD Presentation
Page 10: A Day In a City ADD Presentation
Page 11: A Day In a City ADD Presentation
Page 12: A Day In a City ADD Presentation

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: A Day In a City ADD Presentation

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: A Day In a City ADD Presentation

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: A Day In a City ADD Presentation

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