Population dislocation

Population dislocation#

Description

This analysis computes population dislocation based on a particular hazard. First, housing units, with detailed characteristics (tenure, household size, occupied, or vacant) are allocated to the address points (buildings). This is done by calling the Housing unit allocation analysis. After the housing units are allocated, the hazard event defined by calling Fragility and Hazard services would determine the value loss for each structure which would be the input for the dislocation calculation. The dislocation is calculated from four probabilities of dislocation based on a random beta distribution of the four damage factors presented by Bai et al. 2009. These four damage factors correspond to value loss. The sum of the four probabilities multiplied by the four probabilities of damage states is used as the probability for dislocation. Since the process to determine which households are dislocated is probabilistic an integer value being imported to seed the random number generator determines if a household dislocates.

Additionally, the Block Group characteristics, percentages of African-American and Hispanic population are taken into account.

The output is a CSV file with dislocated households and related variables.

Contributors

  • Science: Walter Gillis Peacock, Nathanael Rosenheim

  • Implementation: Nathanael Rosenheim, Yong Wook Kim, Gowtham Naraharisetty, Michal Ondrejcek, Chen Wang , and NCSA IN-CORE Dev Team

Related publications

Input Parameters

key name

type

name

description

result_name

str

Result name

Name of the result dataset.

seed *

int

Seed

Initial value to seed the random number generator.

choice_dislocation

bool

Choice Dislocation Flag

Flag to calculate choice dislocation.

choice_dislocation_cutoff

float

Choice Dislocation cutoff

Damage state Probability cutoff for choice dislocation.

choice_dislocation_ds

str

Choice Dislocation Damage State

Damage state for choice dislocation.

unsafe_occupancy

bool

Unsafe Occupancy Flag

Flag to calculate unsafe occupancy.

unsafe_occupancy_cutoff

float

Unsafe Occupancy cutoff

Damage state Probability cutoff for unsafe occupancy.

unsafe_occupancy_ds

str

Unsafe Occupancy Damage State

Damage state for unsafe occupancy.

Input Datasets

key name

type

name

description

building_dmg *

ergo:buildingDamageVer4
ergo:buildingDamageVer5
ergo:buildingDamageVer6
ergo:buildingDamageVer7

Building damage

A building damage dataset.

housing_unit_allocation *

incore:housingUnitAllocation

Housing allocation

A housing unit allocation dataset.

block_group_data *

incore:blockGroupData

Block group data

A block group racial distribution dataset.

value_loss_param *

incore:valueLossParam

Loss parameters

A table with value loss beta distribution parameters.

Output Datasets

key name

type

name

description

result *

incore:popDislocation

Results

A dataset containing results (format: CSV).

(* required)

Execution

code snippet:

    # Create population dislocatin
    pop_dis = PopulationDislocation(client)

    # Load input dataset
    pop_dis.load_remote_input_dataset("building_dmg", building_dmg)
    pop_dis.load_remote_input_dataset("housing_unit_allocation", housing_unit_alloc)
    pop_dis.load_remote_input_dataset("block_group_data", bg_data)
    pop_dis.load_remote_input_dataset("value_loss_param", value_loss)

    # Specify the result name
    result_name = "IN-CORE_1bv6_population_dislocation"

    seed = 1111

    # Set analysis parameters
    pop_dis.set_parameter("result_name", result_name)
    pop_dis.set_parameter("seed", seed)

    # Run Population dislocation analysis
    pop_dis.run_analysis()

Jupyter notebook: populationdislocation.ipynb