Dieses Notebook ist die deutschsprachige Übersetzung des Beitrags “Scoring walkability of cities around the world using OSM” vom 4. Februar 2025, die mithilfe eines LLM-Tools erstellt und von einer professionellen Übersetzerin überprüft wurde.
Bewertung der Gehfreundlichkeit von Städten weltweit mit OSM
Bewertung der Gehfreundlichkeit von Städten weltweit mit OSM
The Wolfram Emerging Leaders Program: High School (WELP:HS) ist ein semesterlanges Fernprogramm, das für außergewöhnliche Absolventinnen und Absolventen des Wolfram High School Summer Research Program konzipiert wurde, um ihre Fähigkeiten weiter zu entwickeln. Die Sschülerinnen und Schüler arbeiten im Verlauf eines Semesters in einer kleinen Gruppe, um entweder ein forschungsbasiertes Projekt oder ein produktentwicklungsbasiertes Projekt unter der Anleitung von erfahrenen Mentoren durchzuführen. Die Projekte konzentrieren sich auf ein Thema an der Schnittstelle der Interessen der Gruppe.
Autorinnen und Autoren:
Autorinnen und Autoren:
Das Ziel unseres Projekts war es, ein Werkzeug zur Quantifizierung der Begehbarkeit von Städten zu entwickeln, ein kritischer Faktor für die Förderung gesünderer Lebensstile und nachhaltigen städtischen Lebens. Wir haben dies durch die Analyse der Nähe und Zugänglichkeit zu wesentlichen Einrichtungen wie Geschäften und Regierungseinrichtungen unter Verwendung von OpenStreetMap (OSM) Daten erreicht, um eine Gehfreundlichkeitsskala basierend auf räumlichen Beziehungen und der Clusterbildung von Schlüsselknoten in städtischen Gebieten zu erstellen. Durch die Erforschung von Konzepten wie Referenzpunkt-Kartierung und räumlicher Dichteanalyse stellen wir ein Framework zur Bewertung bereit, wie förderlich Städte für das Gehen sind. Dieses Projekt verbindet rechnerische Techniken und städtebauliche Erkenntnisse mit dem Ziel, zum breiteren Ziel der Förderung lebenswerter, vernetzter und umweltfreundlicher Gemeinden beizutragen.
Einführung
Einführung
Die Gehfreundlichkeit wird zu einem zunehmend wichtigen Faktor für viele Menschen bei der Wahl ihres Wohnorts, da Städte auf eine Weise gestaltet werden, die Autos gegenüber Fußgängern priorisiert und es schwierig macht, sich zu Fuß in ihnen zu bewegen. Dieser Mangel an Begehbarkeit beeinträchtigt nicht nur die Zugänglichkeit, sondern wirkt sich auch auf die öffentliche Gesundheit, die Umweltnachhaltigkeit und die Verbindungen innerhalb der Gemeinschaft aus. Begehbare Städte hingegen fördern gesündere Lebensstile und schaffen stärkere soziale Bindungen, indem sie die Wahrnehmung des sozialen Zusammenhalts in einer gegebenen Stadt verbessern. Wir wurden vom Stadtleben in unseren eigenen Heimatstädten inspiriert und davon, wie es uns beeinflusste, und so erforschen wir in diesem Projekt das Konzept der Begehbarkeit und ihre Bedeutung im städtischen Leben. Unter Verwendung von OpenStreetMap (OSM) Daten und Wolfram-Technologie entwickelten wir ein System zur Bewertung der Begehbarkeit von Städten. Durch die Analyse der Nähe zu wichtigen Einrichtungen wie Geschäften und Regierungseinrichtungen weist unser Tool verschiedenen Gebieten eine Begehbarkeitsbewertung zu. Diese Initiative ist Teil einer umfassenderen Bemühung, städtische Infrastruktur zu verstehen und sich für Städte einzusetzen, die umweltfreundliche, gesündere und kohärentere Gemeinschaften unterstützen.
Bewertungssystem-Methodik
Bewertungssystem-Methodik
Wir haben uns entschieden, ein gewichtetes Punktesystem zu erstellen, sodass Bereiche wie Handel und Gesundheitsdienste im Hinblick auf „Gehfreundlichkeitspunkte“ mehr Gewicht erhalten als Unterhaltungseinrichtungen, da diese Dienstleistungen hinsichtlich der Zugänglichkeit wichtiger sind. Wir haben die Richtlinien für die Punktevergabe in die folgenden Abschnitte unterteilt: Einkaufen, Behörden/Gesundheit, öffentlicher Verkehr, Gastronomie und Unterhaltung.
Jeder Abschnitt wird folgendermaßen gewichtet:
Einkaufen: 30%
Behörden/Gesundheit: 25%
Öffis: 20%
Gastro: 15%
Unterhaltung: 10%
Einkaufen umfasst Einkaufszentren, Supermärkte, Lebensmittelläden, Buchhandlungen und im weiteren Sinne alle Orte des Einkaufs. Behörden und Gesundheit bezeichnet Einrichtungen, die staatlich unterstützt werden, wie Krankenhäuser, medizinische Zentren, Rathäuser und Banken. Öffis umfasst Knotenpunkte wie U-Bahn-/Bahnhöfe und Bushaltestellen. Gastronomie schließt Restaurants, Bars, Cafés oder andere gastronomische Einrichtungen ein. Unterhaltung ist in drei Kategorien unterteilt: Freizeit, Tourismus und „klassische“ Formen der Unterhaltung — wie Theater und Stadtzentren.
Zu beachten ist, dass unser Punktesystem auf den in OSM (OpenStreetMap) gelisteten Knoten basiert. Die einzigen Daten, die wir haben, stammen aus den aktuellen Nutzerbeiträgen für die Region, sodass nicht alle Gebäude oder Knotenpunkte einer Stadt unbedingt erfasst sind.
Jeder Abschnitt wird folgendermaßen gewichtet:
Einkaufen: 30%
Behörden/Gesundheit: 25%
Öffis: 20%
Gastro: 15%
Unterhaltung: 10%
Einkaufen umfasst Einkaufszentren, Supermärkte, Lebensmittelläden, Buchhandlungen und im weiteren Sinne alle Orte des Einkaufs. Behörden und Gesundheit bezeichnet Einrichtungen, die staatlich unterstützt werden, wie Krankenhäuser, medizinische Zentren, Rathäuser und Banken. Öffis umfasst Knotenpunkte wie U-Bahn-/Bahnhöfe und Bushaltestellen. Gastronomie schließt Restaurants, Bars, Cafés oder andere gastronomische Einrichtungen ein. Unterhaltung ist in drei Kategorien unterteilt: Freizeit, Tourismus und „klassische“ Formen der Unterhaltung — wie Theater und Stadtzentren.
Zu beachten ist, dass unser Punktesystem auf den in OSM (OpenStreetMap) gelisteten Knoten basiert. Die einzigen Daten, die wir haben, stammen aus den aktuellen Nutzerbeiträgen für die Region, sodass nicht alle Gebäude oder Knotenpunkte einer Stadt unbedingt erfasst sind.
Knoten finden
Knoten finden
OSM hat viele verschiedene Möglichkeiten, 'Knoten' oder Orte auf der Karte zu kategorisieren. Die, die wir am meisten verwenden werden, sind die "Tags" und die "Keys". Wir haben mehrere Funktionen erstellt, um alle Knoten zurückzugeben, die in OSM als dieser Key oder Tag aufgeführt sind. Dies würde es uns in Zukunft erleichtern, unseren Score zu gewichten/zu finden.
Das erste, was wir getan haben, war eine Funktion zu erstellen, um die korrekten Knoten aus einer gegebenen Region basierend auf einem Tag oder einem Schlüssel abzurufen
Daten von OSM abrufen
In[]:=
osm=ResourceFunction["OSMImport"][GeoBoundsRegion[{{35.695217,35.708217},{139.756822,139.766822}}]];
Mit der select-Funktion wählt die findTypes-Funktion entweder alle Tags oder Schlüssel eines bestimmten Typs in einer Region aus
In[]:=
findTypes[region_,type_,kt_]:=Select[region["Nodes"],MemberQ[#Tags,type,2]&]/;kt=="tag"findTypes[region_,type_,kt_]:=Select[region["Nodes"],KeyExistsQ[#Tags,type]&]/;kt=="key"
Wir haben dann diese Funktionen an jedem der verschiedenen Sektoren getestet, die wir analysieren wollten
Einkaufen
Einkaufen
Auswahl von Knoten zum Einkaufen.
In[]:=
findTypes[osm,"shop","key"][[;;3]]
Out[]=
670739633PositionGeoPosition[{35.7031,139.764}],Tagsbranch湯島一丁目店,brandFamilyMart,brand:enFamilyMart,brand:jaファミリーマート,brand:wikidataQ1191685,brand:wikipediaen:FamilyMart,nameファミリーマート,name:enFamilyMart,name:jaファミリーマート,name:ja_rmSankusu,shopconvenience,810027463PositionGeoPosition[{35.6958,139.759}],Tagsname明倫館書店,name:enMeirinkan Bookstore,opening_hoursWe,Su off,second_handonly,shopbooks,810027523PositionGeoPosition[{35.6993,139.764}],Tagsbrand丸善,brand:enMARUZEN,brand:ja丸善,brand:wikidataQ1906012,brand:wikipediaja:丸善雄松堂,name丸善,name:enMARUZEN,name:ja丸善,name:ja_rmMaruzen,official_name丸善雄松堂,official_name:enMaruzen Yushodo,official_name:ja丸善雄松堂,payment:cashyes,payment:paypayyes,shopbooks
Behörden und Gesundheit
Behörden und Gesundheit
Finden der Knoten für Behörden und Gesundheitseinrichtungen.
In[]:=
findTypes[osm,"government","key"]
Out[]=
1420792405PositionGeoPosition[{35.7004,139.757}],Tagsadmin_level2,buildingpublic,governmentpension_fund,name神田社会保険事務所,name:enKanda Social Insurance Office,noteNational-Land Numerical Information (Public Facility) 2006, MLIT Japan,note:ja国土数値情報(公共施設データ)平成19年 国土交通省,officegovernment,operator日本年金機構,sourceKSJ2,source_refhttp://nlftp.mlit.go.jp/ksj/jpgis/datalist/KsjTmplt-P02-v2_0.html
In[]:=
findTypes[osm,"healthcare","key"][[;;2]]
Out[]=
1420766935PositionGeoPosition[{35.6984,139.763}],Tagsamenityhospital,healthcarehospital,name佐々木研究所附属杏雲堂病院,name:enKyoundo Hospital,name:esHospital Kyoundo,name:ja佐々木研究所附属杏雲堂病院,noteNational-Land Numerical Information (Public Facility) 2006, MLIT Japan,note:ja国土数値情報(公共施設データ)平成19年 国土交通省,sourceKSJ2,source_refhttp://nlftp.mlit.go.jp/ksj/jpgis/datalist/KsjTmplt-P02-v2_0.html,wheelchairyes,1420771222PositionGeoPosition[{35.6975,139.766}],Tagsamenityhospital,healthcarehospital,name名倉クリニック,name:enNagura Clinic,name:esClínica Nagura,name:ja名倉クリニック,noteNational-Land Numerical Information (Public Facility) 2006, MLIT Japan,note:ja国土数値情報(公共施設データ)平成19年 国土交通省,sourceKSJ2,source_refhttp://nlftp.mlit.go.jp/ksj/jpgis/datalist/KsjTmplt-P02-v2_0.html
Öffis
Öffis
Verwendung des Tags „stop_position“, um die Anzahl der Stationen und Bahnstrecken zu ermitteln
In[]:=
findTypes[osm,"stop_position","tag"][[;;2]]
Out[]=
264440323PositionGeoPosition[{35.7277,139.745}],Tagsname千石,name:enSengoku,name:ja千石,name:ja_kanaせんごく,name:ja_rmSengoku,name:ruСэнгоку,network都営地下鉄,operator東京都交通局,public_transportstop_position,railwaystop,refI14,subwayyes,wheelchairyes,wikidataQ1039142,wikipediaja:千石駅,264440831PositionGeoPosition[{35.7215,139.752}],Tagsname白山,name:enHakusan,name:ja白山,name:ja_kanaはくさん,name:ja_rmHakusan,name:ruХакусан,network都営地下鉄,operator東京都交通局,public_transportstop_position,railwaystop,refI13,subwayyes,wikidataQ1039879,wikipediaja:白山駅 (東京都)
Gastronomie
Gastronomie
Knoten für Restaurants und Imbisse. Es gibt keinen einzigen spezifischen Tag/Schlüssel, der alle verschiedenen Arten von Restaurants umfasst, daher haben wir eine Liste aller Tags erstellt, die OSM als "Restaurants" betrachtet.
In[]:=
resturantTypes={"bar","biergarten","cafe","fast_food","food_court","ice_cream","pub","resturant"};(findTypes[osm,#,"tag"]&/@resturantTypes)[[1;;4,1]]
Out[]=
PositionGeoPosition[{35.6996,139.767}],Tagsamenitybar,sourceimage;Bing,2007-04,PositionGeoPosition[{35.6962,139.76}],Tagscheck_date2023-02-02,disused:amenitybiergarten,name8taps,PositionGeoPosition[{35.7011,139.76}],Tagsamenitycafe,nameA&A認定ベクターワークスカフェジャパン,name:enA&A Vectorworks Cafe Japan,PositionGeoPosition[{35.6999,139.763}],Tagsamenityfast_food,branchお茶の水駅前店,brandロッテリア,brand:enLotteria,brand:jaロッテリア,brand:wikidataQ249525,brand:wikipediaja:ロッテリア,cuisineburger,nameロッテリア,name:enLotteria,name:jaロッテリア,name:ja_rmRotteria,phone+81 3 5281 8524,takeawayyes,wheelchairlimited
Unterhaltung
Unterhaltung
Knoten für Unterhaltung.
In[]:=
findTypes[osm,"leisure","key"][[;;3]]
Out[]=
4970429067PositionGeoPosition[{35.7024,139.766}],Tagsleisureyes,nameビリヤード岡田,5214254966PositionGeoPosition[{35.6953,139.761}],Tagsleisurekaraoke,nameビッグエコー,name:enBig Echo,5253445634PositionGeoPosition[{35.6995,139.763}],Tagsleisurekaraoke,level1;2;3,nameカラオケジョッコ
Ähnlich wie bei Lebensmitteln hat Unterhaltung keinen eigenen spezifischen Tag/Schlüssel, also mussten wir alle Unterhaltungstypen manuell auflisten.
In[]:=
entertainmentTypes={"arts_center","brothel","casino","cinema","community_centre","conference_centre","events_venue","exhibition_centre","fountain","gambling","music_venue","nightclub","planetarium","public_bookcase","social_centre","stage","studio","theatre"};DeleteCases[(findTypes[osm,#,"tag"]&/@entertainmentTypes),<||>][[1;;3,1]]
Out[]=
PositionGeoPosition[{35.7042,139.764}],Tagsamenitycommunity_centre,name湯島児童館,name:enYushima Children's Hall,noteNational-Land Numerical Information (Public Facility) 2006, MLIT Japan,note:ja国土数値情報(公共施設データ)平成19年 国土交通省,sourceKSJ2,source_refhttp://nlftp.mlit.go.jp/ksj/jpgis/datalist/KsjTmplt-P02-v2_0.html,PositionGeoPosition[{35.7068,139.764}],Tagsamenityfountain,PositionGeoPosition[{35.6964,139.761}],Tagsamenitystudio,check_date2024-02-29,level-1,nameポレット,phone81 335182029
Zellen erstellen
Zellen erstellen
Um Daten genau zu verarbeiten, mussten wir auch eine Funktion erstellen, die Koordinaten nimmt und den Bereich zwischen den Koordinaten in ein Raster unterteilt. Dies ermöglicht es uns, einen großen Bereich, der von zwei Koordinaten begrenzt wird, effizient in kleinere Teile zu trennen. OSM erfordert, dass Daten in Blöcken von weniger als 50.000 Knoten exportiert werden, und diese Funktion ermöglicht es uns, Boxen zu erstellen, die diesen Export wahrscheinlich ermöglichen werden. Benutzer können auch die Anzahl der Bereiche ändern, die jedes Quadrat im Raster abdeckt, falls der Standort immer noch die Exportgrenzen von OSM überschreitet. Zellen, die eine größere Fläche abdecken, sind besser geeignet für ländliche/weniger dicht besiedelte Gebiete.
Die milesquare-Funktion nimmt 2 Koordinaten und teilt das Gebiet dazwischen in ein Raster auf, wobei jede gegebene Zelle ein Quadrat mit einer Fläche von 1 Quadratmeile ist.
Die Genauigkeit zum zweiten Koordinatensatz {lat2, lon2} nimmt ab, wenn die von einer einzelnen Zelle/einem Quadrat abgedeckte Fläche zunimmt, um sicherzustellen, dass die Menge der abgedeckten Fläche genau ist (siehe letzte GeoBoundsRegion der milesquare Funktion für eine Zellgröße von 4 Quadratmeilen).
Syntax-Hinweise: lat1 < lat2, lon1 < lon2. Die milesquare Funktion hat eine Standard-Zellgröße von 1 Quadratmeile, wenn kein Argument angegeben wird.
Die Genauigkeit zum zweiten Koordinatensatz {lat2, lon2} nimmt ab, wenn die von einer einzelnen Zelle/einem Quadrat abgedeckte Fläche zunimmt, um sicherzustellen, dass die Menge der abgedeckten Fläche genau ist (siehe letzte GeoBoundsRegion der milesquare Funktion für eine Zellgröße von 4 Quadratmeilen).
Syntax-Hinweise: lat1 < lat2, lon1 < lon2. Die milesquare Funktion hat eine Standard-Zellgröße von 1 Quadratmeile, wenn kein Argument angegeben wird.
Für eine Zelle von 4 Quadratmeilen sollte jede Zelle ein 2x2-Quadrat mit einer Diagonallänge von 2 Sqrt[2] oder etwa 2,828 sein. Die nachfolgende Arbeit zeigt, dass jedes Quadrat diese Anforderungen erfüllt.
Graphenknoten
Graphenknoten
Dann erstellten wir eine Funktion, um die GeoPositions der Knoten zu erhalten, die wir zuvor gefunden hatten. Wir stellten diese in einer Grafik dar, um die Positionen der Knoten in dem Bereich zu zeigen, der uns zuvor gegeben wurde. Diese Funktion verwendet die Kurzschreibweise der Position-Funktion, um den spezifischen Abschnitt jedes Knotens auszuwählen, der die Koordinaten enthält. Da Tags und Schlüssel in den Daten unterschiedlich formatiert sind, überladeten wir die Funktion, um beide Arten von Eingaben verarbeiten zu können.
Wir haben eine Funktion erstellt, die alle Knoten in einer Region grafisch darstellt und dabei die Restaurants, Einkaufszentren, Amtsgebäude, Zug-/U-Bahnen und Unterhaltungszentren in verschiedenen Farben anzeigt.
Wir haben dies mithilfe der Funktionen getan, die wir zuvor erstellt hatten, um die Knoten und Positionen zu sammeln, und haben sie mit GeoGraphics grafisch dargestellt.
Wir haben dies mithilfe der Funktionen getan, die wir zuvor erstellt hatten, um die Knoten und Positionen zu sammeln, und haben sie mit GeoGraphics grafisch dargestellt.
Combines previously built functions with GeoGraphics display:
Unten dargestellt sind Abschnitte von Tokio und Boston, die die Restaurants in Rot, die Einkaufszentren in Blau, die Amtsgebäude in Grün, die Busse/Züge in Gelb und die Unterhaltungszentren (Parks, Museen, usw.) in Violett zeigen.
Gehfreundlichkeit finden
Gehfreundlichkeit finden
Um die Gehfreundlichkeit zu ermitteln, wählten wir zunächst einen zufälligen Referenzpunkt in der gegebenen Region. Dann finden wir von diesem Referenzpunkt aus die Zeitdauer, die benötigt wird, um vom Referenzpunkt zu den Knoten zu gehen. In diesem Beispiel unten waren die Knoten, die wir wählten, Knoten von Restaurants.
Wir haben zuerst TravelTime verwendet, um die Zeitdauer vom Referenzpunkt aus zu ermitteln. Es dauert jedoch viel zu lange für größere Datensätze, was die Verwendung schwierig macht.
Wie zu sehen ist, verwendet GeoDistance einen Bruchteil der Rechenzeit, die Travel Time benötigt, und obwohl die Zeitmessung weniger genau ist, ist sie für die Zwecke unseres Projekts dennoch ausreichend genau
Creates a metric for calculating the score based on distances:
Um eine Metrik zur Beurteilung der Begehbarkeit eines bestimmten Punktes zu erstellen, entschieden wir uns für das folgende Bewertungssystem:
◼
Je größer die Entfernung, desto niedriger die Punktzahl.
◼
Alles, was weniger als 10 Minuten vom Referenzpunkt entfernt ist, erhält die höchste Punktzahl von fünf.
◼
Alles, was größer als oder gleich einer Entfernung von 45 Minuten ist, erhält die Punktzahl 0.
◼
Jede Zahl zwischen 10 und 45 erhält eine Punktzahl zwischen 0 und 5 nach einer inversen Quadratwurzel-Beziehung, je größer die Entfernung, desto niedriger die Punktzahl.
Zuweisung von Bewertungen basierend auf der Metrik:
Visualisierung der Gleichung, die wir zur Berechnung der Bewertungen verwendet haben:
Darüber hinaus war es erforderlich, die gesamte Streckenlänge innerhalb einer definierten Region zu bestimmen, um sie in die Scoring-Funktion zu integrieren.
Berechnung der Gesamtmeilen, die in einer durch Breiten- und Längengradgrenzen gegebenen Region enthalten sind, unter Verwendung von UnitConvert zusammen mit GeoDistance:
Die finale Bewertungsfunktion nimmt eine Menge von Koordinaten entgegen, die die Ränder einer Region im Format {{lat1, lat2}, {lon1, lon2}} bezeichnen, wobei lat1 kleiner als lat2 und lon1 kleiner als lon2 ist.
Mit diesen Koordinaten wählt sie einen Referenzpunkt im Zentrum der Region aus und findet dann jeden Einkaufs-, Behörden-, Transport-, Gastro- und Unterhaltungsknoten in der gesamten Region. Unter Verwendung der GeoDistance zwischen jedem Knoten und dem Referenz-(Zentrum-)Punkt berechnet sie die geschätzte Zeit, um dorthin zu laufen.
Jede dieser Zeiten wird zu einer Liste für den entsprechenden Typ hinzugefügt (z.B. alle Zeiten, die benötigt werden, um zu jedem Einkaufsknoten zu gelangen, in einer Liste), und dann wird die Bewertung jeder dieser Zeiten bestimmt und zusammenaddiert. Dann wird die Gesamtbewertung für den Abschnitt basierend auf ihrer Wichtigkeit gewichtet (z.B.: Einkaufen ist 30% der Gesamtbewertung wert) und alle finalen gewichteten Bewertungen werden zusammenaddiert.
Die finale Bewertung wird in Punkten pro Meile angezeigt, wenn sie aus dem gegebenen Bereich erweitert wird, was ebenfalls ausgegeben wird.
Mit diesen Koordinaten wählt sie einen Referenzpunkt im Zentrum der Region aus und findet dann jeden Einkaufs-, Behörden-, Transport-, Gastro- und Unterhaltungsknoten in der gesamten Region. Unter Verwendung der GeoDistance zwischen jedem Knoten und dem Referenz-(Zentrum-)Punkt berechnet sie die geschätzte Zeit, um dorthin zu laufen.
Jede dieser Zeiten wird zu einer Liste für den entsprechenden Typ hinzugefügt (z.B. alle Zeiten, die benötigt werden, um zu jedem Einkaufsknoten zu gelangen, in einer Liste), und dann wird die Bewertung jeder dieser Zeiten bestimmt und zusammenaddiert. Dann wird die Gesamtbewertung für den Abschnitt basierend auf ihrer Wichtigkeit gewichtet (z.B.: Einkaufen ist 30% der Gesamtbewertung wert) und alle finalen gewichteten Bewertungen werden zusammenaddiert.
Die finale Bewertung wird in Punkten pro Meile angezeigt, wenn sie aus dem gegebenen Bereich erweitert wird, was ebenfalls ausgegeben wird.
Berechnung der Endpunktzahl einer Region basierend auf ihrer Gehfreundlichkeit:
Wie Sie hier sehen können, ist bei einer relativ ähnlichen Anzahl von Quadratmeilen die Punktzahl unterschiedlich. Je höher die Punktzahl pro Meile ist, desto besser ist die Begehbarkeit der gegebenen Region. Die Punktzahl pro Quadratmeile stellt die Gehfreundlichkeitspunktzahl pro Meile in dieser Region dar und nicht die der gesamten Region selbst, da dies eine bessere Darstellung der Punktezahl für die Gehfreundlichkeit in beispielsweise einer größeren Region gibt.
In diesen beiden spezifischen Beispielen hier hat Tokio eine höhere Punktzahl als die Innenstadt von Boston, was bedeutet, dass dieser Teil von Tokio eine bessere Begehbarkeit hat als dieser Teil von Boston.
In diesen beiden spezifischen Beispielen hier hat Tokio eine höhere Punktzahl als die Innenstadt von Boston, was bedeutet, dass dieser Teil von Tokio eine bessere Begehbarkeit hat als dieser Teil von Boston.
Bewertung eines kleinen Abschnitts von Tokio
Bewertung eines Abschnitts der Bostoner Innenstadt
Programmoberfläche erstellen
Programmoberfläche erstellen
Um unser Bewertungssystem zu verwenden, geben Sie einen Bereich in Form von zwei (x,y)-Koordinatenpaaren ein, die die obere linke und untere rechte Ecke der Region bilden, die Sie bewerten möchten.
Wir hatten gehofft, es benutzerfreundlicher zu gestalten, indem wir eine Karte erstellen, auf der Sie Punkte ziehen könnten, um Koordinaten auszuwählen, aber aufgrund der Einschränkungen von Dynamic und der bereits langen Laufzeit des Programms haben wir die Idee vereinfacht.
Wir hatten gehofft, es benutzerfreundlicher zu gestalten, indem wir eine Karte erstellen, auf der Sie Punkte ziehen könnten, um Koordinaten auszuwählen, aber aufgrund der Einschränkungen von Dynamic und der bereits langen Laufzeit des Programms haben wir die Idee vereinfacht.
Dieses Modul ermöglicht es dem User und der Userin, eigene Koordinaten einzugeben und berechnet die Bewertung der angegebenen Region. Wenn die Eingabe aufgrund eines OSMImport-Funktionsfehlers fehlschlägt, wie etwa wenn die Region zu viele Knoten enthält oder zu groß ist, wird die Meldung "ensure coordinates are valid" angezeigt. Die Funktion überprüft auch, ob alle Felder ausgefüllt sind und ob die Koordinaten in der richtigen Reihenfolge eingegeben werden, und zeigt Meldungen an, die den Benutzer dazu auffordern, eventuelle Fehler zu korrigieren.
Um Koordinaten zu erhalten, die Sie in das Programm eingeben können, gehen Sie zu Open Street Map und zoomen Sie in den Bereich hinein, den Sie bewerten möchten.
Erweiterung des Bereichs
Erweiterung des Bereichs
Diese Funktion war dafür gedacht, einen größeren Bereich von Koordinaten aufnehmen zu können und sie in kleinere Abschnitte zu unterteilen, sodass wir sie mit OSMImport analysieren können, um dann den Durchschnittswert der Bewertungen der kleineren Abschnitte als Gesamtbewertung des Bereichs zu verwenden.
Allerdings hatten wir Probleme damit, dass OSMImport den Wert 0 zurückgab, obwohl sich Knoten in den Dateien des Bereichs befanden, und außerdem dauerte der Prozess viel zu lange.
Grafische Darstellung/Visualisierung der Gehfreundlichkeit
Grafische Darstellung/Visualisierung der Gehfreundlichkeit
Um die Gehfreundlichkeit einer bestimmten Stadt herauszufinden, möchten wir zunächst die durchschnittliche Gehgeschwindigkeit einer Person ermitteln, damit wir sehen können, ob dieses Geschäft im Bereich von 5, 10 und 30 Minuten liegt.
Der untenstehende Code ermittelt die durchschnittliche Gehgeschwindigkeit für den 5-Minuten-, 10-Minuten- und 30-Minuten-Bereich, also wie weit Sie in 5 Minuten, 10 Minuten und 30 Minuten als durchschnittlicher Mensch gehen können.
Der untenstehende Code ermittelt die durchschnittliche Gehgeschwindigkeit für den 5-Minuten-, 10-Minuten- und 30-Minuten-Bereich, also wie weit Sie in 5 Minuten, 10 Minuten und 30 Minuten als durchschnittlicher Mensch gehen können.
Wir haben die Testregion Tokio gewählt, da es sich um ein dicht besiedeltes und auch ein relativ kleines Gebiet handelt, da OSM keine große Anzahl von Knoten unterstützen kann. Wir haben dann eine Funktion für Wege anstelle von Knoten erstellt.
Als nächstes finden wir die GeoPosition aller Gebäude in einem bestimmten Bereich - Tokio in diesem Beispiel. Wir werden einen zufälligen Referenzknoten basierend auf einer zufälligen GeoPosition aus der generierten Liste auswählen. Wir werden die findWays Funktion anstelle von findNodes verwenden, da Gebäude in OSM als Wege anstatt als Knoten aufgelistet sind.
Nachdem wir die GeoPositions gefunden haben, können wir sie für unseren Walkability-Code verwenden. Lassen Sie uns zunächst die Anzahl der Geschäfte in dieser Region von Tokio ermitteln.
Referenzpunkt (ein zufälliges Gebäude in Tokio) zur Verwendung als Referenz.
Wie weit der Bezugspunkt von den Geschäften in Tokio entfernt ist:
Dann können wir die Knoten finden, die unter einer fünfminütigen Gehentfernung, einem zehnminütigen Fußmarsch und einer dreißigminütigen Strecke liegen.
Nun können wir veranschaulichen, welche Geschäfte innerhalb einer fünfminütigen, zehnminütigen und dreißigminütigen Entfernung liegen.
Mit dem Referenzpunkt in Blau können wir die Geschäfte sehen, die weniger als fünf Gehminuten entfernt sind (in Rot), weniger als zehn Gehminuten entfernt sind (in Grün) und weniger als dreißig Gehminuten entfernt sind (in Lila).
Der nächstbeste Knoten
Der nächstbeste Knoten
Unsere nächste Erkundung war der Versuch, durch Berechnungen zu bestimmen, wo ein neues Geschäft in einem gegebenen Gebiet platziert werden sollte, um das Gebiet fußgängerfreundlicher zu machen. Bei einer gegebenen Menge von Geschäften, wo wäre der nächstbeste Ort, um ein Geschäft zu platzieren, damit eine Stadt fußgängerfreundlicher wird? Um dies zu tun, finden wir zuerst heraus, wo der am wenigsten dichte Ort ist, und dann können wir einen Knoten in diesem Gebiet mit geringer Dichte platzieren.
Finden Sie die Dichte der Punkte in der gegebenen Stichprobe relativ zu den Geschäften in Tokio.
Nun wählen wir zufällige Punkte aus, die kleiner als der Median sind: das sind Orte mit geringer Dichte.
Diese Punkte wären gute Orte, um ein neues Geschäft zu eröffnen, wenn Ihr Ziel darin bestünde, die Gehfreundlichkeit des Gebiets zu erhöhen.
Wenn wir sie in einer Grafik für eine bessere Visualisierung darstellen, werden die neuen Geschäfte in Gelb gezeigt:
Fazit und Ausblick
Fazit und Ausblick
In diesem Projekt konnten wir ein Tool erstellen, das die Gehfreundlichkeit in einer bestimmten Stadt bewerten kann. Es gibt dem Benutzer eine Bewertung basierend darauf, wie nah die Knoten zu einem gegebenen Punkt sind. Wir konnten auch eine Benutzeroberfläche erstellen, die einem Benutzer die Gehfreundlichkeitsbewertung geben kann, sobald er nach einer Region gefragt wird. Trotz der Einschränkungen von OSM konnten wir unser eigenes System zur Berechnung der Gehfreundlichkeit finden.
Zugleich sehen wir, dass unser Projekt Raum für Weiterentwicklung bietet und noch Verbesserungspotenzial besteht. Dazu gehört:
Zugleich sehen wir, dass unser Projekt Raum für Weiterentwicklung bietet und noch Verbesserungspotenzial besteht. Dazu gehört:
◼
Arbeiten an der nächstbesten Knotenfunktion und Finden eines Weges, um Wasserflächen auszuschließen
◼
Wasser wird unter OSM weder als Weg noch als Knoten aufgeführt, daher können wir die OSM-Funktion in Wolfram nicht verwenden, um Wasserregionen zu finden
◼
Erweiterung unserer Gehfreundlichkeit-Funktion durch Implementierung von Bevölkerungsdichte + Kreuzungsdichte
◼
Einen Weg finden, um den Gehfreundlichkeit-Score konstant + weniger "zufällig" zu machen
Danksagung
Danksagung
Wir möchten Dugan, unserem Mentor, sowie Rory und Eryn für ihre Hilfe an unserem Projekt danken.
Referenzen
Referenzen
◼
Environmental Protection Agency. (o.J.). EPA. https://www.epa.gov/smartgrowth/national-walkability-index-user-guide-and-methodology
◼
◼
Routing OSM Data: How Far Can I Walk in 5 Minutes? - Online Technical Discussion Groups-Wolfram Community. (n.d.). https://community.wolfram.com/groups/-/m/t/942484
◼
DIESES NOTEBOOK ZITIEREN
DIESES NOTEBOOK ZITIEREN
Bewertung der Gehfreundlichkeit von Städten weltweit mit OSM
von Wolfram Education Programs
Wolfram Community, STAFF PICKS, 4. Februar 2025
https://community.wolfram.com/groups/-/m/t/3379935
von Wolfram Education Programs
Wolfram Community, STAFF PICKS, 4. Februar 2025
https://community.wolfram.com/groups/-/m/t/3379935