Optimizing Urban Accessibility Constructing A
Optimizing Urban Accessibility Constructing A
Abstract
The concept of the 15-minute city (15-MC) aims to create urban envi-
ronments where essential services are accessible within a 15-minute walk
or bike ride from any point. This study explores an innovative approach
to constructing a 15-minute city by leveraging the Steiner tree problem
and its polynomial-time approximation. By focusing on connecting key
amenities such as pharmacies, post offices, and supermarkets, our method
efficiently minimizes the total travel time within a pedestrian network.
The proposed approach significantly reduces computational complexity
by prioritizing service locations over residential areas, resulting in detailed
urban layouts that can be used as digital models for city planning. These
models provide practical tools for optimizing mobility, service placement,
and sustainable urban design. The method’s effectiveness is demonstrated
through its ability to generate detailed maps that highlight service ac-
cessibility, offering valuable insights for urban planners in creating more
connected and accessible cities.
1 Introduction
Graph theory is a branch of mathematics that studies the properties and ap-
plications of graphs, which are abstract representations of a set of objects and
the connections between them. In a graph, the objects are called vertices (or
nodes), and the connections between them are called edges. Graphs can be
used to model a wide variety of systems in which relationships between pairs of
objects are significant. A graph can be directed, where the edges have a direc-
tion (indicating, for example, one-way streets in a city), or undirected, where the
connections have no direction (as in two-way streets). See [1][2][3]for a thorough
introduction.
When additional information, such as distance, cost, or time, is associated
with each edge, the graph is referred to as a weighted graph. In a weighted graph,
every edge is assigned a numerical value or weight that typically represents the
cost of traversing the edge. This weight could represent physical distance, time
required to travel, or any other metric relevant to the application. Weighted
1
graphs are particularly useful in scenarios where it’s important to find not just
a connection between vertices but the optimal connection, such as the shortest
path or the minimum cost route. These properties make weighted graphs a
powerful tool in solving complex problems across various domains. See [1]
Graph theory has significant applications. One notable application is in
network design, particularly in telecommunications, where graphs are used to
design and optimize networks[4][5]. In such networks, vertices represent commu-
nication nodes, and edges represent the connections between them. Weighted
graphs help in minimizing the cost of data transfer by finding the shortest or
most efficient paths, which is crucial in both internet routing and the layout
of infrastructure like fiber-optic cables. Another significant application is in
computer science, specifically in algorithms and data structures. See [6]fora
comprehensive introduction to the topic Graphs are fundamental in algorithms
for searching, sorting, and traversing data. They are widely used in artificial
intelligence and robotics for pathfinding and navigation, helping autonomous
systems to determine the most efficient routes in various environments. More-
over, graphs are also essential in social network analysis, where vertices repre-
sent individuals and edges represent relationships or interactions, enabling the
analysis of social structures and the spread of information or influence.
One of the most impactful applications of graph theory is in urban mod-
eling, where cities are represented as graphs to analyze and optimize urban
spaces[7][8][9]. In this context, vertices represent key locations in the city such
as intersections, parks, or service points, while edges represent the roads or path-
ways connecting these locations. Weighted graphs are particularly valuable in
urban modeling because they allow for the inclusion of travel times, distances, or
other metrics as edge weights, facilitating the analysis of accessibility and con-
nectivity within the city. For example, by applying shortest-path algorithms
to these graphs, urban planners can determine the most efficient routes for
transportation, identify areas lacking access to essential services, and plan new
infrastructure to enhance connectivity. Additionally, dynamic graphs, which
allow for changes over time, can be used to model urban growth and evolving
transportation networks, providing a more flexible and realistic representation
of urban spaces. This transition to considering other types of graphs under-
scores the adaptability of graph theory to the complex and changing nature of
urban environments and beyond.
This application seamlessly extends to the concept of the 15-minute city[10],
where the goal is to ensure that all necessary services are within a 15-minute
travel time from any given point. The concept of a 15-minute city has gained
significant traction as a model for sustainable urban regeneration. It envisions a
city where residents can access all their basic needs within a 15-minute walk or
bike ride from their homes. This model promotes localized living, where essential
services such as healthcare, education, and grocery stores are readily accessible,
thereby reducing the need for long commutes and fostering a more sustainable
lifestyle. Although this concept has similarities to earlier urban planning models,
such as the complete neighborhood and the 20-minute neighborhood, the 15-
minute city (15-MC) has particularly resonated due to its adoption as a policy
2
framework in Paris, France. This adoption has spurred further academic and
professional efforts to refine and quantify the model, emphasizing its potential
to reshape urban environments for the better.
The use of graph theory in modeling the 15-MC has shown significant promise,
despite the computational challenges it presents[11][12]. Calculating the short-
est paths on a graph for a large city with numerous nodes requires substan-
tial processing power. However, advancements in computational technology,
such as parallel processing and faster processors, have made it feasible to ap-
ply this method even to large urban areas.Urban planning has undergone a
significant transformation in recent years, driven by the need for sustainable,
accessible, and efficient cities. One of the emerging models in this domain is
the 15-minute city concept, where residents can access essential services—such
as healthcare, education, and shopping—within a 15-minute walk or bike ride
from their homes. This model is not only a response to environmental concerns
but also aims to enhance the quality of life by reducing commuting time and
fostering local economies.
Graph theory, a powerful mathematical tool, provides an ideal framework
for modeling and analyzing the 15-minute city. In this context, the urban area
is represented as a graph G = (V, E), where vertices V correspond to specific
locations such as intersections, service points, or residential areas, and edges E
represent the pathways connecting these points. The weight w(e) assigned to
each edge e ∈ E can be interpreted as the time it takes to travel between two
connected vertices. This approach allows for a quantitative analysis of urban ac-
cessibility and the identification of critical areas that may require infrastructural
improvements to meet the 15-minute criterion.
3
v1 v2 . . . vn vn+1 with n ≥ 1. If v1 = vn+1 , then the walk is closed. A path
is a walk with no repeated vertices. A cycle is a walk in which the only re-
peated vertex is the first/last one, i.e., v1 = vn+1 . The degree of a vertex is
the number of edges incident to the vertex and is denoted deg(v). A graph
is connected if there is a walk between every pair of distinct vertices in the
graph. A connected component of G is a connected subgraph H of G such
that no other connected subgraph of G contains H. The diameter of a graph
G is the greatest distance between any pair of vertices in the graph. The dis-
tance between two vertices u and v is defined as the length of the shortest path
between them.
Formally, the diameter D(G) is defined as:
Properties of a tree:
A tree is an undirected graph G that satisfies any of the following equivalent
conditions:
If G has finitely many vertices, say n of them, then the above statements
are also equivalent to any of the following conditions:
4
• V is the set of vertices.
• E is the set of edges.
• w : E → R is a function that assigns a weight to each edge.
The weight of a path in a weighted graph is the sum of the weights of the edges
that make up the path.
Definition 5. A Minimum Spanning Tree (MST) is a spanning tree of a
weighted graph that has the minimum possible total edge weight among all the
spanning trees of the graph.
Given a connected, undirected, weighted graph G = (V, E, w), a spanning
tree is a subgraph T = (V, ET ) that includes all the vertices of G and is a tree.
The MST is the spanning tree for which the sum of the weights of the edges in
ET is minimized.
There are two well-known polynomial-time algorithms used in graph theory:
Dijkstra’s algorithm for finding the shortest path and Kruskal’s algorithm
for finding the minimum spanning tree[6].
1. Dijkstra’s Algorithm Dijkstra’s algorithm is used to find the shortest
path from a starting vertex to all other vertices in a weighted graph, where
the edge weights are non-negative. The algorithm operates by iteratively
selecting the vertex with the smallest known distance, updating the dis-
tances to its neighboring vertices, and repeating this process until the
shortest path to all vertices has been determined. Dijkstra’s algorithm
efficiently computes the shortest path in O(V 2 ) time using a simple im-
plementation or O((V + E) log V ) time using a priority queue, where V is
the number of vertices and E is the number of edges.
2. Kruskal’s Algorithm Kruskal’s algorithm is used to find the minimum
spanning tree (MST) of a connected, undirected graph. The MST is a sub-
set of the edges that connects all the vertices together without any cycles
and with the minimum possible total edge weight. Kruskal’s algorithm
works by sorting all the edges of the graph by weight and then adding
them one by one to the growing spanning tree, ensuring that no cycles
are formed. The process continues until all vertices are connected. The
worst-case time complexity of Kruskal’s algorithm is O(E log V ), where E
is the number of edges and V is the number of vertices.
3 Steiner Tree
Let G = (V, E) be an undirected graph where V is the set of vertices, E is
the set of edges, and each edge is associated with a non-negative weight c. Let
T ⊆ V be a subset of vertices referred to as terminals. A Steiner tree in G is a
tree that spans all vertices in S. There are two primary variants of the Steiner
tree problem: the optimization problem and the decision problem.
5
In the optimization problem, the goal is to find a Steiner tree with the
minimum possible weight. On the other hand, the decision problem involves
determining whether there exists a Steiner tree whose total weight does not
exceed a given natural number k, assuming the edge weights are integers [13][14].
The decision problem is known to be NP-complete, as it is one of Karp’s 21 NP-
complete problems[15]. Consequently, the optimization version of the Steiner
tree problem is NP-hard. A notable special case of this problem occurs when
G is a complete graph, each vertex v ∈ V corresponds to a point in a metric
space, and the edge weights w(e) for each e ∈ E correspond to the distances
in that space, thus satisfying the triangle inequality. This special variant is
known as the metric Steiner tree problem. Furthermore, given any instance of
the general (non-metric) Steiner tree problem, it is possible to transform it into
an equivalent instance of the metric Steiner tree problem in polynomial time.
Given a graph G = (V, E) where V is the set of vertices and E is the set
of edges with associated weights, and a subset T ⊆ V of terminal vertices, the
goal is to find a subtree G′ = (V ′ , E ′ ) of G such that:
• T ⊆V′ ⊆V
• E′ ⊆ E
∑
• The total weight e∈E ′ w(e) is minimized, where w(e) denotes the weight
of edge e.
6
Lemma 2. Let H be a solution to the Steiner tree problem on (G, c, T ). Then H
is a solution to the Metric Steiner tree problem on (V, c′ , T ) with c′ (H) ≤ c(H).
Proof. Clearly H is a solution to the metric version. By the triangle inequality,
c′ (u, v) ≤ c(u, v) for all {u, v} ∈ E, and hence c′ (H) ≤ c(H).
Lemma 3. Let H ′ be a solution to Metric Steiner Tree on (V, c′ , T ). Then there
is a solution H to the Steiner tree problem on (G, c, T ) with c(H) ≤ c′ (H ′ ), and
given H ′ , we can find such an H in polynomial time.
Proof. We begin by constructing a subgraph Ĥ of G, where each edge e = {u, v}
in H ′ is replaced by a path between u and v in G that has a length of c′ (u, v).
Such a path exists due to the definition of c′ , and this process ensures that the
cost does not increase. Next, we construct a spanning tree H from Ĥ. Since
Ĥ spans all the vertices that H ′ spans (and potentially more), it follows that
H is a valid solution to the original Steiner tree problem. Furthermore, as the
replacement of an edge with a corresponding path does not increase the overall
cost, we have c(H) ≤ c(Ĥ) ≤ c′ (H ′ ). All of these steps can clearly be performed
in polynomial time.
c(H) ≤ c′ (H ′ ) (Lemma 3)
′
≤ α · c (OP Tmetric ) (definition of the algorithm A)
′
≤ α · c (OP Tsteiner ) (definition of OP Tmetric )
≤ α · c(OP Tsteiner ) (Lemma 2)
7
Consider the following algorithm
Input: Set of points V , metric c : V × V → R+ , terminals T ⊆ V .
Output: A minimum spanning tree on T (computed using Kruskal’s Algorithm.
( )
Theorem 4. This algorithm is a 2 1 − |T1 | -approximation algorithm for the
Metric Steiner Tree problem.
Proof. Let F represent the solution produced by the algorithm. We know that
F is valid because it connects all points in T . Denote F ∗ as the optimal solution.
Our
( objective
) is to establish that the cost of F , denoted c(F ), satisfies c(F ) ≤
2 − |T1 | c(F ∗ ).
Since F is a minimum spanning tree for the set T , it is sufficient to prove
( there)exists another spanning tree, denoted F̂ , for T , where the cost c(F̂ ) ≤
that
2 1 − |T1 | c(F ∗ ). This would imply c(F ) ≤ c(F̂ ), thereby completing the proof.
To demonstrate this, we begin by recalling a key concept from graph theory:
a graph G = (V, E) is considered Eulerian if it contains a closed path that
traverses each edge exactly once. A classic result from graph theory states that
a graph is Eulerian if and only if each vertex has an even degree.
Next, consider duplicating each edge in F ∗ , resulting in a graph denoted
∗
2F . In this graph, all vertex degrees are even, making it Eulerian. As a
result, there exists an Eulerian circuit, denoted C, within 2F ∗ . This circuit
visits every vertex, possibly revisiting some multiple times. However, we are
only interested in visiting the vertices of T . To construct a relevant cycle for
T , we can ”shortcut” the Eulerian circuit C by skipping over repeated visits to
the same vertex, retaining only the first visit to each vertex of T . This process
yields a cycle, denoted H, that covers all vertices in T .
Since the cost function c adheres to the properties of a metric space, the cost
of each edge in the cycle H is no greater than the cost of the path it replaces
in the Eulerian circuit C. Given that the edges of F ∗ are used only once in C,
no edge cost is counted more than once. Therefore, we have c(H) ≤ c(C) =
c(2F ∗ ) = 2c(F ∗ ) = 2 × OP T .
Now, by removing the most expensive edge from the cycle H, we obtain a
spanning tree F̂ for T . Since the most costly( edge) in H has a( cost of)at least
|T | ·c(H), removing it ensures that c(F̂ ) ≤ 1 − |T | ·c(H) ≤ 2 1 − |T | ·OP T ,
1 1 1
8
• E is the set of edges representing possible paths or roads between these
locations.
• Each edge e ∈ E is associated with a non-negative weight c(e), represent-
ing the travel time locations.
subject to:
9
Figure 1: Steiner Trees within 15 Minutes of Pharmacies, Post Offices, and
Supermarkets in Manhattan
areas. This aligns with the expected urban structure, where commercial and
service-oriented establishments are concentrated.
The G graph has 162,354 edges along with 5728 Steiner tree defined 15
minute city model with edges.The analysis reveals that most of the central and
southern parts of Manhattan are highly walkable, with residents having ac-
cess to multiple amenities within a short walking distance. This supports the
concept of a 15-minute city, where essential services are easily accessible to res-
idents on foot. The dense pedestrian network in these areas, combined with
the Steiner tree’s coverage, suggests that the infrastructure supports a walkable
environment, reducing the need for motorized transportation for daily errands.
The northern parts of Manhattan, particularly above Central Park, show less
coverage by the Steiner tree, indicating potential areas where pedestrian ac-
cess to essential services could be improved. Urban planners might focus on
increasing the availability of amenities or improving pedestrian connectivity in
these regions to enhance walkability. While the central and southern areas are
10
well-covered, it would be beneficial to conduct further analysis to identify any
specific neighborhoods that might still be underserved despite their proximity
to amenities.
5 Conclusion
In this study, we employed the Steiner tree problem and its polynomial-time
approximation to construct a 15-minute city. The Steiner tree approach allowed
us to efficiently connect a set of essential services (such as pharmacies, post of-
fices, and supermarkets) within a 15-minute walking distance, optimizing the
pedestrian network to minimize total travel time. By focusing on services and
utilizing this approximation method, we were able to create detailed and com-
putationally feasible urban layouts that support the goals of the 15-minute city.
This approach not only reduces the computational complexity but also provides
a practical tool for urban planners to design more accessible and sustainable
cities.
The proposed method broadens the scope of studies focused on the quan-
titative analysis of the 15-minute city (15-MC) concept. This method requires
significant computational resources to generate the necessary graphs, and the
runtime increases with the number of services and the size of the area being
analyzed. However, the method produces highly detailed results that can serve
as a digital model of the city. This model can be utilized to evaluate potential
solutions for improving mobility, optimizing the placement of services, and aid-
ing in urban planning. Additionally, it allows for predicting and assessing the
effectiveness of these solutions.
The analysis of the Steiner tree within 15 minutes of pharmacies, post offices,
and supermarkets in Manhattan provides valuable insights into the city’s walk-
ability and accessibility to essential services. While the central and southern
parts of Manhattan are well-served, there is potential to improve accessibility in
the northern areas. This type of analysis is crucial for urban planning, helping
to ensure that all residents have convenient access to the services they need in
their daily lives.
We can further generalize the above concept.In a multi-criteria optimization
setting, each edge e ∈ E might have multiple weights corresponding to different
criteria, such as cost, environmental impact, and travel time.
The objective
∑ is to find a tree H that minimizes a weighted sum of these
criteria:minH e∈EH (λ1 c1 (e) + λ2 c2 (e) + · · · + λk ck (e)) where λ1 , λ2 , . . . , λk are
weights representing the importance of each criterion. This will be a future di-
rection of research.
References
[1] Béla Bollobás. Modern graph theory, volume 184. Springer Science &
Business Media, 2013.
11
[2] Reinhard Diestel. Graph theory. Springer (print edition); Reinhard Diestel
(eBooks), 2024.
[3] Frank Harary. Graph theory (on Demand Printing of 02787). CRC Press,
2018.
[10] Carlos Moreno, Zaheer Allam, Didier Chabaud, Catherine Gall, and Flo-
rent Pratlong. Introducing the “15-minute city”: Sustainability, resilience
and place identity in future post-pandemic cities. Smart cities, 4(1):93–111,
2021.
[11] Lorenzo Barbieri, Roberto D’Autilia, Paola Marrone, and Ilaria Montella.
Graph representation of the 15-minute city: A comparison between rome,
london, and paris. Sustainability, 15(4):3772, 2023.
[12] Shanqi Zhang, Feng Zhen, Yu Kong, Tashi Lobsang, and Sicong Zou. To-
wards a 15-minute city: A network-based evaluation framework. Environ-
ment and Planning B: Urban Analytics and City Science, 50(2):500–514,
2023.
[13] Frank K Hwang and Dana S Richards. Steiner tree problems. Networks,
22(1):55–89, 1992.
[14] Thorsten Koch and Alexander Martin. Solving steiner tree problems in
graphs to optimality. Networks: An International Journal, 32(3):207–232,
1998.
[15] Lawrence Kou, George Markowsky, and Leonard Berman. A fast algorithm
for steiner trees. Acta informatica, 15:141–145, 1981.
12
[16] Eden Chlamtáč, Michael Dinitz, Guy Kortsarz, and Bundit Laekhanukit.
Approximating spanners and directed steiner forest: Upper and lower
bounds. ACM Transactions on Algorithms (TALG), 16(3):1–31, 2020.
13