3.5 Synthetic Population

From NFTPO Model
Revision as of 14:29, 9 November 2020 by Bstabler (talk | contribs) (Updated to NERPMAB2)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Overview

In trip-based models, trip rates are applied to aggregate households grouped in Traffic Analysis Zones (TAZs) to generate trips. On the other hand, in an activity-based model (ABM), choices involving activities and trips are simulated for each of the individual persons in households. Hence, it is necessary to first develop a “synthetic population” of the regions’ residents. Synthetic population is a list of households and persons that is based on observed or forecasted distributions of socioeconomic attributes and created by sampling detailed Census microdata. This produces individual household agents and individual person agents that are subjects of the simulation.

Prior to their use in the simulation, synthetic populations are represented in data tables, often in a relational database or some equivalently structured file system. Typically there are separate tables for households and person records. The household records file provides details about various household-level socio-demographic attributes such as household income, size, number of workers, etc. Similarly, the person records file provides information about person-level attributes such as age, gender, employment status, etc. Person records are linked to household records through ID numbers.

TABLE 3-2 SAMPLE HOUSEHOLD RECORDS FILE

hhno

hhsize

hhvehs

hhwkrs

hhftw

hhptw

hhret

hhoad

hhuni

hhhsc

hh515

hhcu5

hhincome

hownrent

hrestype

hhparcel

hhtaz

hhexpfac

samptype

1

1

-1

1

-1

-1

-1

-1

-1

-1

-1

-1

75095

-1

1

2699

227

1

11

2

1

-1

1

-1

-1

-1

-1

-1

-1

-1

-1

58074

-1

1

2699

227

1

11

3

1

-1

0

-1

-1

-1

-1

-1

-1

-1

-1

30288

-1

3

23479

227

1

11

4

1

-1

0

-1

-1

-1

-1

-1

-1

-1

-1

1802

-1

3

37105

227

1

11

TABLE 3-3 SAMPLE PERSON RECORDS FILE

hhno

pno

pptyp

pagey

pgend

pwtyp

pwpcl

pwtaz

pwautime

pwaudist

pstyp

pspcl

pstaz

psautime

psaudist

puwmode

puwarrp

puwdepp

ptpass

ppaidprk

pdiary

pproxy

psexpfac

1

1

1

41

1

1

-1

-1

-1

-1

0

-1

-1

-1

-1

-1

-1

-1

-1

-1

-1

-1

1

2

1

1

34

1

1

-1

-1

-1

-1

0

-1

-1

-1

-1

-1

-1

-1

-1

-1

-1

-1

1

3

1

5

26

1

0

-1

-1

-1

-1

1

-1

-1

-1

-1

-1

-1

-1

-1

-1

-1

-1

1

4

1

4

34

2

0

-1

-1

-1

-1

0

-1

-1

-1

-1

-1

-1

-1

-1

-1

-1

-1

1

Population synthesized by any synthetic population generator may be used with DaySim as long as the required household and person socio-demographic attributes are provided to it in the appropriate format. PopulationSim is an open platform for population synthesis and survey weighting. It emerged from Oregon DOT’s desire to build a shared, open, platform that could be easily adapted for statewide, regional, and urban transportation planning needs. It has the ability to control for both household and person level demographic attributes simultaneously.

Preparing Synthetic Populations for DaySim

The design of the synthetic population should support the design of the activity-based model (DaySim in this case) and provide the variables it needs. In addition, the activity-based model should only rely on information that can be realistically provided in the synthetic population.

Population synthesis generally consists of the synthesis of two sub-populations – those living in regular households and those living in non-institutionalized group quarters such as college dormitories. For this effort, an additional segment of population was synthesized which comprised of seasonal households. These segments were established to reflect the differences in travel patterns associated with these sub-populations as well as to provide the ability to support seasonal analyses. For example, the seasonal population is generally older than the permanent population, has lower levels of workforce participation, and clusters in certain geographic areas. All of these attributes influence travel patterns and the demand for travel.

There are three major steps in creating a synthetic population:

  1. Specifying the inputs to the process—the control variables and sample households as well as the level of geographic resolution. Specifying the control variables is essential. In addition, there is often an additional step of specifying additional, uncontrolled variables to be added to the synthetic population.
  2. Actually running a program that produces the synthetic households.
  3. The third major step would be transforming the model-generated outputs into characteristics of the population that will be used throughout the rest of the model system. This could involve creating categorical variables out of continuous variables, reformulating income, or allocating households from the zonal level to a finer level of geographic resolution, such as a parcel.

DaySim Person Types

Although person are being modeled in disaggregate form in an ABM, it is often useful to create person type categories. DaySim uses 8 such person types. Person type categories may be used for various purposes:

  1. As a basic segmentation for certain models, such as daily activity pattern models
  2. To summarize and compare observed versus estimated data and calibrate models
  3. As explanatory variables in models
  4. As constraints on alternatives that are available; for example, work and school activities are only available to workers and student; and driving is restricted by age

TABLE 3-4 DAYSIM PERSON TYPES

No.

Person Type

Age

Work Status

School Status

1

Full-time worker

18 or more

Full-time

None/Part-time

2

Part-time worker

18 or more

Part-time

None/Part-time

3

Retired person

65 or more

Unemployed

4

Non-working adult

Less than 65

Unemployed

None/Part-time

5

University student

18 or more

Unemployed/Part-time

Full-time

6

High school student

16 or more

Unemployed/Part-time

Full-time

7

Primary school child

5-15

Unemployed

Full-time

8

Preschool child

0-4

Unemployed

None

Control Attributes and Target Distributions

There are three major inputs required for population synthesis of which the first step is to identify a set of control attributes and their levels. Next, target distributions of the control attributes and their levels are derived at appropriate geographic units. These target distributions are also known as marginal control totals since they represent the margins of a joint distribution of multiple attributes. Typically, the smallest level of spatial resolution that can be feasibly and reliably used to control attributes is used. If control attribute totals are not accurate at a particular spatial unit, they could be specified at a lower resolution.

The following considerations are usually important in choosing control variables:

  • The number of control variables is important. If there are too few, the synthetic population may not accurately reflect the true population. On the other hand, too many control attributes may cause sample issues. There may not be any sample households with joint attributes of the control variables and this could distort the synthetic population.
  • Control attributes may be single or multi-dimensional. Multi-dimensional attributes can be treated as single dimensional attributes with number of categories equal to the product of the numbers of categories in individual attributes. The primary advantage of multi-dimensional attributes is more precise regional control over the correlation between attributes. The disadvantage again is with sparse sample.
  • The best choices of variables, will be meaningful attributes that are somewhat “orthogonal” to each other, which means that their variance in the population is largely independent. Conversely, if there are two attributes that are highly correlated, then controlling for both may not achieve much more than controlling for just one.
  • Finally, different sets of control attributes may be used for base and forecast years, if limited by forecasting accuracy. This is not necessarily desirable, though. The ability to forecast marginal control totals should be a consideration when specifying control attributes for this base year.

Target distributions of control variables for the base year could be obtained from a variety of data sources including the following:

  • Decennial Census: ~100% sample
  • American Community Survey (ACS) summary files: 3% sample, rolling 5-year sample, yields an estimate of ~15% of population
  • Bureau of Economic and Business Research (BEBR)
  • Census Transportation Planning Products (CTPP)
  • Other zonal data developed locally (TAZs)

For the forecast year, regional socio-economic forecasts or outputs from a land-use model are often used.

The following table provides the list of control attributes, their geographic and demographic levels along with the relative importance of each control.

TABLE 3-5 PopulationSim Controls

target geography seed_table importance control_field expression
num_hh MAZ households 1000000000 HHS (households.WGTP > 0) & (households.WGTP < np.inf)
hh_size_1 TAZ households 5000 HHSIZE1_S3 households.NP == 1
hh_size_2 TAZ households 5000 HHSIZE2_S3 households.NP == 2
hh_size_3 TAZ households 5000 HHSIZE3_S3 households.NP == 3
hh_size_4 TAZ households 5000 HHSIZE4M_S3 households.NP >= 4
hh_age_15_to_44 TAZ households 5000 HHAGE1_S3 (households.AGEHOH > 14) & (households.AGEHOH <= 44)
hh_age_45_to_64 TAZ households 5000 HHAGE2_S3 (households.AGEHOH > 44) & (households.AGEHOH <= 64)
hh_age_65_abv TAZ households 5000 HHAGE3_S3 (households.AGEHOH > 64) & (households.AGEHOH <= np.inf)
hh_wrks_0 TAZ households 5000 HHWRK1_S3 households.NWESR == 0
hh_wrks_1 TAZ households 5000 HHWRK2_S3 households.NWESR == 1
hh_wrks_2 TAZ households 5000 HHWRK3_S3 households.NWESR == 2
hh_wrks_3m TAZ households 5000 HHWRK4_S3 households.NWESR >= 3
hh_inc_0_25 TAZ households 5000 HHINC1_S3 (households.HHINCADJ > -999999999) & (households.HHINCADJ <= 24999)
hh_inc_25_60 TAZ households 5000 HHINC2_S3 (households.HHINCADJ > 24999) & (households.HHINCADJ <= 59999)
hh_inc_60_100 TAZ households 5000 HHINC3_S3 (households.HHINCADJ > 59999) & (households.HHINCADJ <= 99999)
hh_inc_100_plus TAZ households 5000 HHINC4_S3 (households.HHINCADJ > 99999) & (households.HHINCADJ <= 999999999)
person_male SCOUNTY persons 1000 MALE_S persons.SEX == 1
person_female SCOUNTY persons 1000 FEMALE_S persons.SEX == 2
person_age0to4 SCOUNTY persons 1000 AGE0to4_S (persons.AGEP > 0) & (persons.AGEP <= 4)
person_age5to17 SCOUNTY persons 1000 AGE5to17_S (persons.AGEP >= 5) & (persons.AGEP <= 17)
person_age18to24 SCOUNTY persons 1000 AGE18to24_S (persons.AGEP >= 18) & (persons.AGEP <= 24)
person_age25to54 SCOUNTY persons 1000 AGE25to54_S (persons.AGEP >= 25) & (persons.AGEP <= 54)
person_age55m SCOUNTY persons 1000 AGE55M_S persons.AGEP >= 55

Sample Data

During population synthesis, individual household and person records are drawn from a disaggregate sample of households to match target distributions of controlled attributes. It may not be possible to control all the desired attributes and so “uncontrolled” attributes are added to the synthetic population from disaggregate sample data. It is essential that the disaggregate sample is representative of the population of the entire region.

In most cases, the primary source of disaggregate sample data will is Public Use Microdata Sample (PUMS) data, which is now part of the ACS, and follows the same sampling framework, but provides disaggregate records for households and persons across numerous different attributes. PUMS is sampled and grouped according to geographic units, better known as PUMAs. PUMAs cover contiguous areas of roughly 100,000 population, including persons living in group quarters. For example, a metro area of 850,000 might be covered by 8 or more likely 9 PUMAs. In general, ACS-PUMS provides good representative coverage of most regions and is rigorously tested and monitored, so it is was used for creating sample data for this effort.

PopulationSim Run

The control totals and disaggregate sample data are input into a population synthesizer to generate a synthetic population. According to the PopulationSim wiki, 'the objective of a population synthesizer is to generate household weights which satisfies the marginal control distributions. This is achieved by use of a data fitting technique. The most common fitting technique used by various population synthesizers is the Iterative Proportional Fitting (IPF) procedure. Generally, the IPF procedure is used to obtain joint distributions of demographic variables. Then, random sampling from PUMS generates the baseline synthetic population.

One of the limitations of the simple IPF method is that it does not incorporate both household and person level attributes simulatenously. Some population synthesizers use a heuristic algorithm called the Iterative Proportional Updating Algorithm (IPU) to incorporate both person and household-level variables in the fitting procedure.

Besides IPF, entropy maximization algorithms have been used as a fitting technique. In most of the entropy based methods, the relative entropy is used as the objective function. The relative entropy based optimization ensures that the least amount of new information is introduced in finding a feasible solution. The base entropy is defined by the initial weights in the seed sample. The weights generated by the entropy maximization algorithm preserves the distribution of initial weights while matching the marginal controls. This is an advantage of the entropy maximization based procedures over the IPF based procedures. PopulationSim uses the entropy maximization based list balancing to match controls specified at various geographic levels.'