Jamie Saxon at the Harris School

Accessibility of Primary Healthcare in the United States

Rural America suffers from a dramatic shortage of primary care physicians: however you define them, rural regions have about a third fewer physicians per capita than the national mean. With Jenn Ghandhi, Dan Black, and Dan Snow, I have studied the spatial distribution and economic characteristics of rural physicians, to better understand the potential effectiveness of policy responses to this shortage.

Rational Agent Access Model

While studying these physicans, we sought to identify at finer spatial granularity where these shortages were located. Traditional methods assess demands on physicians with varying sophistication. For example, the patient to physician ratio (PPR) is simply the number of patients per physician within some fixed geographic boundary. In reality these boundaries are usually permeable — patients can cross county lines — so hot and cold-spots will often be "undone" by patients' choices. The state-of-the-art two-stage floating catchment area method (2SFCA) first accounts for the number of patients within reasonable bounds of each physician, and then sums the "fractional physicians" available to each patient.

Many enhancements and extensions to 2SFCAs account for variations in patient responses to distance and for their preferences for closer locations. However, they do not allow for patients to seek care near work rather near residence, and they do not simultaneously include multiple, accurately calculated transportation modes. Additionally, as noted in work by Li et al, they do not incorporate feedback between patients' decisions: responses to congestion at the point of care.

To address these issues, we proposed a Rational Agent Access Model (RAAM) — an agent-based framework in which patients trade off travel time and congestion at the point of care. RAAM can incorporate multiple origins (home, work) as well multiple travel modes (driving and public transit). Efficient optimization code in c++ (with python bindings) allows for tract-level calculation of accessibility costs for the United States on a laptop (github). We have also documented and released a beta python package at access.readthedocs.io, and a live web front-end, for calculating access through AWS.

Results of the RAAM optimization, at the tract level in the United States.
Primary care accessibility for the United States, as a fractional deviation from the national mean.
Areas with high costs/poor access are positive (red) and areas with low costs/good access are negative (blue)

The figure above shows our basic results: high costs (poor accessibility) in rural areas, and low costs (good accessibility) in cities. In particular, costs in the south and Utah are very high. Given their low population densities, the north mountain states — the Dakotas and Wyoming — are in very good shape. New England has higher population density, but is also rural, and has very good accessibility. These base finding are reasonably consistent with results from 2SFCAs.

But RAAM also makes it possible to disentangle the impact of several realistic extensions: differential car ownership by poor communities in cities, the effects of commuting to work on healthcare accessibility in the fringes of large metro areas, and the separate considerations of travel times and physician prevalence. Moreover, our unprecedented spatial scope (national) and granularity (Census-tract), permit a new, national perspective.

Using this work, we study the socioeconomics drivers of the rural-care shortage. We also illustrate the potential of the framework, for optimization of physician placement. Read the paper to find out more!

Calculating Travel Time Matrices at Scale

One of the necessary inputs for RAAM (and other access measures!) is large scale, fine granularity travel time matrices. To calculate these matrices, we created a distributed pipeline, deploying open-source tools (PostgreSQL, PostGIS, OSM, and OTP) in Docker containers on Amazon Web Services. With this pipeline, we can compute national-scale, tract-level origin-destination matrices for pairs of destinations within 100 km of each other for a tiny fraction of the cost of commercial vendors (about $20).

By distributing our calculation on Amazon Web Services, we are able to inexpensively compute an origin-destination driving time matrix for tracts within 100 km of each other. We also calculate transit time on public transportation, in 40 major cities. Explore the map by clicking around or entering an address. You can also download one-to-many data.

The Docker containers necessary for these calculations are available on GitHub, but may pose a technical hurdle for some. We are therefore interested in providing these data to other researchers. The one-to-many for travel times up to an hour can be explored and downloaded, above. Please get in touch if you are interested in a bulk download.

Copyright © 2018 James Saxon