preferred citation style for this presentation a. horni and f. ciari (2009) modeling shopping...

46
Preferred citation style for this presentation A. Horni and F. Ciari (2009) Modeling Shopping Customers & Retailers with the Activity-based Multi-agent Transport Simulation MATSim, CCSS Seminar, Zurich, April 2009.

Post on 19-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Preferred citation style for this presentation

A. Horni and F. Ciari (2009) Modeling Shopping Customers & Retailers with the Activity-based Multi-agent Transport Simulation MATSim, CCSS Seminar, Zurich, April 2009.

Customer Shopping Location Choice

F. Ciari & A. Horni

IVT, ETH Zurich

Status Update & Open Questions

Modeling Shopping Customers & Retailers with the Activity-based Multi-agent Transport Simulation MATSim:-

Retailer Location Choice

Link loadsTravel distancesTravel times…Location choice:Catchment areaNumber of visitors…

3

MATSim: Model Purpose

Purpose: Model patterns of people’s activity scheduling and participation behavior at high level of detail.

Goal: Average working day of Swiss resident population (> 7.5 M) in „reasonable“ time

→ 2009 (KTI project)

Dynamic,Disaggregated

Method: Coevolutionary, agent-based algorithm adopted

MATSim: Structure → Iterative4

initial demand

analysesexecution scoring

replanning

Fixed attributes e.g. home location, census data

Utility function f (t):activity participation, travel

Share x of agents (usually 10%):Time, route, location choice

Exit conditon:„Relaxed state“, i.e. equilibrium

Agents‘ day plans

MATSim: Structure5

initial demand

analysesexecution scoring

replanning

Share x of agents (usually 10%):Time, route, location choice

replanning

Exit conditon:„Relaxed state“, i.e. equilibrium

Utility function f (t):activity participation, travel

Agents‘ day plans

Fixed attributes e.g. home location, census data

MATSim: Structure6

Controler → Replanning

replanning

StrategyManagerperson.removeWorstPlan();strategy.run(person);

PlanStrategy

this.planSelector.selectPlan(); person.copySelectedPlan();this.plans.add(plan);

PlanStrategyModule.handlePlan(plan);

for all persons who are chosen to make replanning

e.g. selectExpBeta: selection dependent on plan score

i.e., route, time or location choice

Nash eq. = stable state in sim→ Exit condition

Local opt. ≠ Nash eq.→ Probabilistic p(score)

Interpretation

7

MATSim - Coevolution

Agent i

Plan 0

Plan 1

Plan 2

Plan 3

Individual learning

Agent j

Plan 0

Plan 1

Plan 2

Plan 3

species iIndivid. i,0

Plan 0

Individ. i,1

Plan 1

Individ. i,2

Plan 2

Individ. i,3

Plan 3

species jIndivid. j,0

Plan 0

Individ. …

Plan ..Competition on the infrastructure

→ Score (fitness)

Weakest die→ Generations

person.removeWorstPlan()Agent …

Plan ..

Coevolution: „The evolution of two or more interdependent species, each adapting to changes in the other. […]“The American Heritage Dictionary of the English Language

Evolution: „(Biology): Change in the gene pool of a population from generation to generation by such processes as mutation, natural selection, and genetic drift. […]“ „www.dictionary.com“

8

What are we searching & How are we searching?

Iterate until „relaxed state“ is reached

Equilibrium

≠ Network equilibrium Wardrop (tt)

Planningequilibrium =? Nash

Multilateral (but uncoordinated) changes in a replanning step! → coalition-proof eq.?

What are we searching & How are we searching?

Iterate until „relaxed state“ is reached

Equilibrium

≠ Network equilibrium Wardrop (tt)

Planningequilibrium =? Nash

Multilateral changes in a replanning step But: Not coordinated.→ No coalition-proof eq.

Non-cooperative, coordination game (non-zero-sum)

10

What are we searching & How are we searching?

Non-cooperative, coordination game (non-zero-sum)

Pure Mixed

? ?

Equilibrium

Existence

Uniqueness

Yes

?No

Yes?Existence conditions

Results:e.g. link volumes

Results: Prob. of e.g. link volumes

Selection of plan for execution:

p(score) → mixed│agent‘s memory│ << #possible strategies of an agent

Score and hence p not stable between iterations

Battle of the sexes

Player 1

Store 0

Store 10,0c,d

a,b0,0

Refinements?Closest to SO?Largest basin of attraction? …

Player 0

11

What are we searching & How are we searching?

#locations#activities × tper iteration. Search space prohibitively large to be searched exhaustively or – even worse – globally at random.

Idea: Adapt local search techniques from optimization (e.g. simulated annealing).

Location Choice in MATSim - Status

First results: • Local search• Improvement of realism by competition on the activities

infrastructure

Future work:• Impr. local search & capacity restraints• Validation• Utility function extension• Analyzing existence and uniqueness of solution

13

Local Search Adopted to Coevolutionary Systems

Tie together location choice and time choice (t) p(accept bad solutions) > 0

Day plan

Aktivity i - WorkLocationStart time, duration…

Aktivity i+1 - ShoppingDuration

Aktivity i+2 - HomeLocationStart time, duration…

Location Set:Locations consistent with time choice (ttravel ≤ tbudget)

Travel time budget

Time GeographyHägerstrand

14

r = tbudget/2 * v

Check all locationsttravel ≤ tbudget

→ choice set

Check ∑ttravel ≤ tbudget

Random choice

Based on PPA-Algorithm Scott, 2006

„Implicit choice set“Chains of consecutive shopping activities

Location Choice in MATSim - Status

First results: • Local search• Improvement of realism by competition on the activities

infrastructure

Future work:• Impr. local search & capacity restraints• Validation• Utility function extension• Analyzing existence and uniqueness of solution

Time-dependent

capacity

Penalty funtion

Power function (cost-flow function for roads, BPR)

(load/capacity) : parameters

16

Competition on Activities Infrastructure

Micro-census 2005

17

Simulation Scenario

Region Zurich: 30 km radius circle, center Bellevue; 10% sample

Initial location assignment: Region Zurich

18

Simulation Scenario - Configurations

19

20

21

Results – Shopping Facility Load

22

Shopping Facility Load

23

Results – Computation Times

s/it (500 iterations)

Location Choice in MATSim – Conclusions I

First results: • Local search:

Local search productive (w/ same computational effort per iteration).

• Competition on the activities infrastructure:

Balanced facility load → number of implausibly overloaded facilities reduced

Location Choice in MATSim – Conclusions II

Future work:• Local search

• Improvements + extended analysis

• Activity location competition• Diversification of capacity restraint functions

• Utility function extension• Influencing factors + activity classification

• Validation• Counting data, GPS (FCD), Micro census

• Analyzing existence and uniqueness of computed solution• Exit condition

Application of estimated modelsHypothesis testing

26

Introducing retailer agents in the MATSim toolkit and modeling their location

choices

27

Who are Retailers in MATSim?

from www.wikipedia.org:

Retailer: “In commerce, a retailer buys goods or products in large quantities from manufacturers or importers, either directly or through a wholesaler, and then sells smaller quantities to the end-user.“

In MATSim:

Retailer: “Person or entity having the control on one or more shopping facilities”

28

Motivations & Tasks

Motivations:

• First step to a fully agent-based representation of the system • Correctly predict the location choices of retailers under a

given policy scenario• Estimate a benchmark value for retailers (# customers,

turnaround, etc…) under a given policy scenario

Tasks:

• Define/implement retailer agents in the MATSim framework• Enrich individual agents (customer aspect)

29

Individual Agent Framework

Individual Agent

Personal attributes

• Age

• Gender

• Home location

• Work location

• Driving License

• Car availability

• Transit tickets ownership

• Income

• Household

Knowledge

• Memory of previous plans (score)

• Shop Attributes (Price, Quality, Parking, etc.)

Objective function

• Time based

• Utility based with budget constraints

Location choice methodology

• Not optimized

• Optimized in time and space

Current MATSim

Next Stage

30

Individual Agent Framework

Individual Agent

Personal attributes

• Age

• Gender

• Home location

• Work location

• Driving License

• Car availability

• Transit tickets ownership

• Income

• Household

Knowledge

• Memory of previous plans (score)

• Shop Attributes (Price, Quality, Parking, etc.)

Objective function

• Time based

• Utility based with budget constraints

Current MATSim

Next Stage

Location choice methodology

• Optimized in time and space

31

Importance of Location for Retailers

32

Common Methods and Tools in Retail Location Planning

Technique/s Subjectivity CostTechnical

experience required

Computing and data

needs

rules of thumb,

checklists,

ratio and analogue methods

multiple regression

discriminant analysis,

cluster analysis,

gravity models

Expert systems,

neural networks

Ada

pte

d fr

om H

ern

ande

z an

d B

enni

nson

, 20

00

33

Practice in Location Choices

Extensive literature research

11 explorative interviews accomplished in Germany and Switzerland in 2008

Results:

Location strategies vary both between and within different retail sectors

Location choices are still heavily based on experience and intuition, particularly those decisions at the micro scale

Simpler methodologies are still predominant, more sophisticated are sometimes used as a posterior confirmation

34

Retailer Agent Framework

Retailer Agent

Attributes

• Type

• Facility portfolio

• Price level

• …

Knowledge

• Customers

• Competitors

• Land Prices

• Land use regulation

Objective

• Max. Customers

• Max. Revenue

• Max. Market share

Location choice methodology

• Market ratio

• Catchment area

• Checklists

35

Retailer Agent Framework

Retailer Agent

Attributes

• Type

• Facility portfolio

• Price level

• …

Knowledge

• Customers

• Competitors

• Land Prices

• Land use regulation

Objective

• Max. Customers

• Max. Revenue

• Max. Market share

Location choice methodology

• Market ratio

• Catchment area

• Checklists

•…

Refinements

36

Retailer agents – Relocation steps

A new random link is proposed

The ratio # residents / #shopsin the new area is higher

Stay on the current linkNo

The daily traffic volume on the new link is higher

No

Yes

Move to the new link

Yes

NEXT

ITERATION

The retailer already owns a shop in this area

Yes

No

Global search

37

Simulation Inputs and Parameters

Inputs: • Retailers file:

List of retailer agents and shop facilities controled by them

• Links file

• Links allowed for the relocation of shop facilities

Parameters:

• Frequency of retailers relocation

• Catchment area dimension

MATSim: Actual framework38

initial demand

analysesexecution scoring

replanning

Share x of agents (usually 10%):Time, route, location choice

Fixed attributes Utility function f (t)

replanning

Exit conditon:„Relaxed state“, i.e. equilibrium

MATSim: Framework with Retailer Agents39

initial demand

analysesexecution scoring

Fixed attributes Utility function f (t)

replanning

Exit conditon:„Relaxed state“, i.e. equilibrium

Retailer agents‘ facilities:Location choice

Retailers replanning

40

Results: Simulation Scenario - Region Zurich

• Number of shops relocating: 80

0

20

40

60

80

100

120

0 5 10 15 20 25 30 35 40 45 50

ITERATION

Cu

sto

mer

s

AV.Customers

41

Issues and possible solutions

Simulations with different combination of input parameters: No relaxation is observed

Real Optimization Technique (e.g. SA)?

Same story as before: Search space prohibitively large ...

Alternative: Adapt local search techniques …• In each iteration• Outer loop

→ Replanning of person agents → relaxed state → local search

Interpretation

42

Customers & retailers – Coevolution

Agent i

Plan 0

Plan 1

Plan 2

Plan 3

Agent j

Plan 0

Plan 1

Plan 2

Plan 3

species iIndivid. i,0

Plan 0

Individ. i,1

Plan 1

Individ. i,2

Plan 2

Individ. i,3

Plan 3

species jIndivid. j,0

Plan 0

Individ. …

Plan ..

Weakest die→ Generations

person.removeWorstPlan()

Agent u

Plan 0

Plan 1

Plan 2

Plan 3

- - - - - - - - -

Agent v

Plan 0

Plan 1

Plan 2

Plan 3

species uIndivid. u,0

Plan 0

Individ. …

Plan ..

species vIndivid. v,0

Plan 0

Individ. …

Plan ..

retailer.removeWorstPlan()

Main limitations

• The land market is not represented• Introduction of monetary costs for activities and taking into

account prices for them • Retail shops are undifferentiated• Persons behavior on Saturday is different than during the week

-> Simulating only Mo-Fr retailers’ location decision are biased • …

Conclusions and future work

Conclusions:

• The new retailer agents have been introduced in MATSim, but their behavior still has many limitations and a strategy to produce meaningful and easily interpretable results hasn‘t been found yet

Future work:

• Try to use a local search• Define an exit condition• Overcome some of the limitations (e.g. take into account

different types of retail shops, account for monetary costs, etc…)

45

THANK YOU FOR YOUR ATTENTION !

MATSim project page: www.matsim.orgFurther publications: http://www.ivt.ethz.ch/vpl/publications/reports

Activity Classification & Utility Function

Store load – store capacity

Activity classificationshop, leisure

Status quo

(Shopping) location choice

Utility function

TimeTime & route choice

Alternative (Store) This summer (data set available)• Store size, local store density Later:• Parking, Product range, Price level

Situation…

Person Age, Income,Education

Next steps

Micro census (e.g. shopping)