Beschriftung | Erläuterung | Datentyp |
Eingabe-Raum-Zeit-Würfel | Der zu analysierende netCDF-Würfel. Diese Datei muss eine Erweiterung (.nc) aufweisen und mit dem Werkzeug Raum-Zeit-Würfel durch Aggregieren von Punkten erstellen oder Raum-Zeit-Würfel aus definierten Features erstellen erstellt worden sein. | File |
Analysevariable | Die numerische Variable in der netCDF-Datei, die analysiert werden soll. | String |
Ausgabe-Features | Die Ausgabe-Feature-Class mit Positionen, die als statistisch signifikante Cluster oder Ausreißer eingestuft wurden. | Feature Class |
Nachbarschaftsentfernung (optional) | Die räumliche Ausdehnung der Analysenachbarschaft. Anhand dieses Wertes wird bestimmt, welche Features zusammen analysiert werden, um lokale Raum-Zeit-Cluster-Bildung zu bewerten. | Linear Unit |
Nachbarschaftszeitintervall | Die Anzahl der Zeitschrittintervalle, die in die Analysenachbarschaft einbezogen werden sollen. Anhand dieses Wertes wird bestimmt, welche Features zusammen analysiert werden, um die lokale Raum-Zeit-Cluster-Bildung zu bewerten. | Long |
Anzahl der Permutationen (optional) | Die Anzahl der zufälligen Permutationen für die Berechnung von Pseudo-p-Werten. Die Standardanzahl der Permutationen ist 499. Bei einer Auswahl von 0 Permutationen wird der Standard-p-Wert berechnet.
| Long |
Polygon-Analysemaske (optional) | Ein Polygon-Feature-Layer mit mindestens einem Polygon, der das Analyse-Untersuchungsgebiet definiert. Eine Polygon-Analysemaske wird verwendet, um beispielsweise einen großen See aus der Analyse auszuschließen. Im Eingabe-Raum-Zeit-Würfel definierte Abschnitte, die außerhalb der Maske liegen, werden nicht in die Analyse einbezogen. Dieser Parameter ist nur für Grid-Würfel verfügbar. | Feature Layer |
Konzeptualisierung von räumlichen Beziehungen (optional) | Gibt an, wie räumliche Beziehungen zwischen Features definiert werden.
| String |
Anzahl der räumlichen Nachbarn (optional) | Eine Ganzzahl zur Angabe entweder der Mindestanzahl oder der exakten Anzahl der Nachbarn, die in Berechnungen für den Ziel-Abschnitt einbezogen werden soll. Bei Nächste Nachbarn (K) hat jeder Abschnitt exakt die angegebene Anzahl von Nachbarn. Bei Festgelegte Entfernung hat jeder Abschnitt mindestens diese Anzahl von Nachbarn (die Nachbarschaftsentfernung wird zum Erreichen dieser Nachbaranzahl bei Bedarf vorübergehend erweitert). Wenn eine der Konzeptualisierungen für Nachbarschaften ausgewählt ist, wird jeder Abschnitt dieser Mindestanzahl von Nachbarn zugewiesen. Für Abschnitte mit einer geringeren Anzahl von zusammenhängenden Nachbarn basieren zusätzliche Nachbarn auf der Nachbarschaft von Feature-Schwerpunkten. | Long |
Globalen Wert definieren (optional) | In der Statistik "Anselin Local Moran I" wird eine lokale, aus den Nachbarn für jeden Abschnitt berechnete Statistik mit einem globalen Wert verglichen. Mit diesem Parameter können Sie steuern, welche Abschnitte zum Berechnen des globalen Werts verwendet werden.
| String |
Zusammenfassung
Identifiziert statistisch signifikante Cluster und Ausreißer im Kontext von Raum und Zeit. Dieses Werkzeug stellt eine Raum-Zeit-Implementierung der Statistik "Anselin Local Morans I" dar.
Weitere Informationen zur Funktionsweise des Werkzeugs Lokale Ausreißeranalyse
Abbildung
Verwendung
Dieses Werkzeug akzeptiert ausschließlich netCDF-Dateien, die mit dem Werkzeug Raum-Zeit-Würfel durch Aggregieren von Punkten erstellen, mit dem Werkzeug Raum-Zeit-Würfel aus definierten Positionen erstellen oder mit dem Werkzeug Raum-Zeit-Würfel aus multidimensionalem Raster-Layer erstellen erstellt wurden.
Jeder Abschnitt des Raum-Zeit-Würfels enthält die Werte LOCATION_ID, time_step_ID und COUNT sowie alle Zusammenfassungsfelder oder Variablen, die beim Erstellen des Würfels einbezogen wurden. Abschnitte, die derselben physischen Position zugeordnet sind, besitzen dieselbe Positions-ID und stellen zusammen eine Zeitserie dar. Abschnitte, die demselben Zeitintervall zugeordnet sind, besitzen dieselbe Zeitschritt-ID und stellen ein gemeinsames Zeitintervall dar. Der Zählwert für jeden Abschnitt entspricht der Anzahl der Ereignisse oder Datensätze, die innerhalb des zugeordneten Zeitintervalls an der zugeordneten Position entstanden sind.
Mit diesem Werkzeug wird eine Variable im netCDF-Eingabe-Raum-Zeit-Würfel mit einer Raum-Zeit-Implementierung der Anselin Local Morans I-Statistik analysiert.
Die Ausgabe-Features werden dem Bereich Inhalt zusammen mit einem Rendering, das eine Ergebniszusammenfassung der Raum-Zeit-Analyse für alle analysierten Positionen enthält, hinzugefügt. Wenn Sie eine Polygon-Analysemaske angeben, dann werden nur die Positionen analysiert, die sich innerhalb der Analysemaske befinden. Andernfalls werden diejenigen Positionen analysiert, die mindestens einen Punkt für mindestens ein Zeitintervall enthalten.
Zusätzlich zu den Ausgabe-Features erscheint während der Ausführung von Werkzeugen unten im Bereich Geoverarbeitung eine Analysezusammenfassung in Form von Meldungen. Sie können auf diese Nachrichten zugreifen, indem Sie mit der Maus auf die Fortschrittsleiste zeigen, auf die Pop-out-Schaltfläche klicken oder den Detailabschnitt der Meldungen im Bereich Geoverarbeitung einblenden. Sie können ebenfalls über den Geoverarbeitungsverlauf im Bereich Katalog auf die Meldungen für ein zuvor ausgeführtes Werkzeug zugreifen.
Mit dem Werkzeug Lokale Ausreißeranalyse werden statistisch signifikante Cluster und Ausreißer im Kontext von Raum und Zeit identifiziert. Weitere Informationen zu den standardmäßigen Ausgabe-Kategoriedefinitionen und zu den verwendeten Algorithmen in diesem Analysewerkzeug finden Sie unter Weitere Informationen zur Funktionsweise des Werkzeugs "Lokale Ausreißeranalyse".
Zum Identifizieren von Clustern und Ausreißern im Raum-Zeit-Würfel nutzt dieses Werkzeug eine Raum-Zeit-Implementierung der Anselin Local Morans I-Statistik, die den Wert für jeden Abschnitt im Zusammenhang mit den Werten für benachbarte Abschnitte berücksichtigt.
Um zu bestimmen, welche Abschnitte in der jeweiligen Analyse-Nachbarschaft einbezogen werden müssen, sucht das Werkzeug zunächst nach benachbarten Abschnitten, die innerhalb der angegebenen Konzeptualisierung von räumlichen Beziehungen liegen. Danach berücksichtigt es für jeden dieser Abschnitte an denselben Positionen befindliche Abschnitte aus N vorangegangenen Zeitintervallen, wobei N dem von Ihnen angegebenen Nachbarschaftszeitintervall entspricht.
Ihre Auswahl für den Parameter Konzeptualisierung von räumlichen Beziehungen sollte inhärente Beziehungen unter den Features, die analysiert werden, widerspiegeln. Je realistischer Sie modellieren können, wie Features im Raum interagieren, desto genauer werden die Ergebnisse. Empfehlungen werden unter Auswählen einer Konzeptualisierung räumlicher Beziehungen: Empfehlungen beschrieben.
Die Standardeinstellung für Konzeptualisierung von räumlichen Beziehungen lautet Festgelegte Entfernung. Ein Abschnitt gilt als Nachbar, wenn sein Schwerpunkt innerhalb der Nachbarschaftsentfernung und sein Zeitintervall innerhalb des angegebenen Nachbarschaftszeitintervalls liegt. Sollten Sie keinen Wert für die Nachbarschaftsentfernung angeben, wird anhand der räumlichen Verteilung Ihrer Punktdaten einer berechnet. Wird für das Nachbarschaftszeitintervall kein Wert vorgegeben, verwendet das Werkzeug den Standardwert 1 als Zeitintervall.
Der Parameter Anzahl der Nachbarn kann die Nachbarschaftsentfernung für die Option Festgelegte Entfernung überschreiben oder die Suche nach Nachbarn für die Optionen Nur benachbarte Kanten und Benachbarte Kanten/Ecken erweitern. In diesen Fällen wird die Anzahl der Nachbarn als Mindestanzahl verwendet. Wenn Sie beispielsweise Festgelegte Entfernung mit einer Nachbarschaftsentfernung von 10 Meilen festlegen und 3 für den Parameter Anzahl der Nachbarn angeben, erhalten alle Abschnitte mindestens 3 räumliche Nachbarn, selbst wenn die Nachbarschaftsentfernung erhöht werden muss, um sie zu finden. Die Entfernung wird nur für die Abschnitte erhöht, in denen die minimale Anzahl der Nachbarn nicht erreicht wird. Ähnliches gilt für die Nachbarschaftsoptionen: Für Abschnitte mit einer geringeren Anzahl von zusammenhängenden Nachbarn werden zusätzliche Nachbarn anhand der Schwerpunkt-Nachbarschaftsanalyse (Proximity) ausgewählt.
Der Wert Nachbarschaftszeitintervall entspricht der Anzahl von Zeitintervallen, die in die Analysenachbarschaft einbezogen werden sollen. Beträgt das Zeitintervall des Würfels beispielsweise drei Monate und Sie geben 2 als Nachbarschaftszeitintervall an, werden alle Abschnittszählungen innerhalb der angegebenen Konzeptualisierung von räumlichen Beziehungen sowie alle ihnen zugeordneten Abschnitte für die vorangegangenen Zeitintervalle (die sich über einen Zeitraum von neun Monaten erstrecken) in der Nachbarschaftsanalyse erfasst.
Permutationen werden verwendet, um zu bestimmen, wie hoch die Wahrscheinlichkeit ist, mit der die analysierten Werte mit der vorhandenen räumlichen Verteilung tatsächlich aufgefunden werden können. Für jede Permutation werden die Nachbarschaftswerte um jeden Abschnitt zufällig neu angeordnet und der Local Morans I-Wert berechnet. Das Ergebnis ist eine Referenzverteilung von Werten, die daraufhin mit den tatsächlich beobachteten Morans I-Werten verglichen wird, um zu bestimmen, mit welcher Wahrscheinlichkeit der beobachtete Wert in der zufälligen Verteilung gefunden werden kann. Die Standardeinstellung liegt bei 499 Permutationen. Die zufällige Beispielverteilung und damit die Genauigkeit des Pseudo-p-Wertes wird jedoch durch eine zunehmende Anzahl von Permutationen verbessert.
Wenn für den Parameter Anzahl der Permutationen die Einstellung 0 festgelegt wird, ist das Ergebnis ein herkömmlicher p-Wert anstelle eines Pseudo-p-Wertes.
Mit den von diesem Werkzeug angewendeten Permutationen kann die erhöhte Performance genutzt werden, die Systeme mit mehreren CPUs (Mehrkern-CPUs) bieten. Das Werkzeug wird standardmäßig mit der Hälfte der verfügbaren Prozessoren ausgeführt. Die Anzahl der verwendeten CPUs kann jedoch mit der Umgebung für den Faktor für parallele Verarbeitung erhöht oder reduziert werden. Die erhöhte Verarbeitungsgeschwindigkeit macht sich bei größeren Raum-Zeit-Würfeln oder Werkzeugausführungen mit einer größeren Anzahl von Permutationen am meisten bemerkbar.
Der Feature-Layer Polygon-Analysemaske kann mindestens ein Polygon enthalten, mit dem das Analyse-Untersuchungsgebiet definiert wird. Aus diesen Polygonen sollte hervorgehen, wo Punkt-Features möglicherweise auftreten könnten, und sie sollten Flächen ausschließen, in denen Punkte unmöglich auftreten könnten. Wenn Sie beispielsweise Trends zu Wohnungseinbrüchen untersuchen, sollten Sie die Polygon-Analysemaske verwenden, um große Wasserflächen, lokale Parks oder andere Gebiete auszuschließen, die keine Wohngebiete sind.
Die Polygon-Analysemaske wird mit der Ausdehnung des Eingabe-Raum-Zeit-Würfels geschnitten und erweitert nicht die Dimensionen des Würfels.
Wenn die Polygon-Analysemaske, mit der Sie das Untersuchungsgebiet festlegen, eine Fläche abdeckt, die über die Ausdehnung der Eingabe-Features für die Erstellung des Würfels hinausgeht, sollten Sie den Würfel mit dieser Polygon-Analysemaske als Ausdehnungsumgebung ggf. neu erstellen. Dadurch wird sichergestellt, dass die gesamte von der Polygon-Analysemaske abgedeckte Fläche in das Werkzeug Lokale Ausreißeranalyse einbezogen wird. Durch die Verwendung der Polygon-Analysemaske als Einstellung für die Ausdehnungsumgebung bei der Würfelerstellung wird sichergestellt, dass die Ausdehnung des Würfels und die Ausdehnung der Polygon-Analysemaske übereinstimmen.
- Dieses Werkzeug erstellt eine neue Ausgabe-Feature-Class mit den folgenden Attributen für jede Position im Raum-Zeit-Würfel. Diese Felder können für eine benutzerdefinierte Visualisierung der Ausgabe verwendet werden. Weitere Informationen zu den zusätzlichen Analyseergebnissen finden Sie unter Weitere Informationen zur Funktionsweise des Werkzeugs "Lokale Ausreißeranalyse".
- Number of Outliers
- Percentage of Outliers
- Number of Low Clusters
- Percentage of Low Clusters
- Number of Low Outliers
- Percentage of Low Outliers
- Number of High Clusters
- Percentage of High Clusters
- Number of High Outliers
- Percentage of High Outliers
- Positionen mit No Spatial Neighbors
- Positionen mit einem/einer Outlier in the Most Recent Time Step
- Cluster Outlier Type
- und zusätzliche Summenstatistiken
Der Cluster Outlier Type gibt immer statistisch signifikante Cluster und Ausreißer für ein Konfidenzniveau von 95 Prozent an. Nur statistisch signifikante Abschnitte verfügen über Werte in diesem Feld. Diese Signifikanz ist Ausdruck einer FDR-Korrektur (False Discovery Rate).
- Das Standard-Rendering für die Ausgabe-Feature-Class basiert auf dem Feld CO_TYPE und zeigt statistisch signifikante Positionen. Es zeigt Positionen, die Teil eines signifikanten Hoch-hoch-Clusters, Hoch-niedrig-Ausreißers, Niedrig-hoch-Ausreißers oder Niedrig-niedrig-Clusters waren oder im Laufe der Zeit mit der Klassifizierung "Mehrere Typen" eingestuft wurden.
Um sicherzustellen, dass jede Position über mindestens einen zeitlichen Nachbarn verfügt, wird für das erste Zeitintervall kein Local Morans-Index berechnet. Die Abschnittswerte im ersten Zeitintervall werden jedoch in die Berechnung des globalen Durchschnitts einbezogen.
Durch die Ausführung des Werkzeugs Lokale Ausreißeranalyse werden die Analyseergebnisse wieder in den netCDF-Eingabe-Raum-Zeit-Würfel geschrieben. Jeder Abschnitt wird im Kontext benachbarter Abschnitte einer Analyse unterzogen, um die Cluster-Bildung sowohl für hohe als auch für niedrige Werte zu messen und räumliche sowie zeitliche Ausreißer in diesen Clustern zu identifizieren. Das Analyseergebnis umfasst einen Local Morans I-Index, einen Pseudo-p-Wert (oder einen p-Wert, wenn keine Permutationen verwendet werden) und einen Cluster- oder Ausreißertyp (CO_TYPE) für jeden Abschnitt im Raum-Zeit-Würfel.
Es folgt eine Übersicht der zum Eingabe-Raum-Zeit-Würfel hinzugefügten Variablen:
Variablenname Beschreibung Dimension OUTLIER_{ANALYSIS_VARIABLE}_INDEX
Der berechnete Local Morans I-Index.
Dreidimensional: ein Local Morans I-Indexwert für jeden Abschnitt des Raum-Zeit-Würfels.
OUTLIER_{ANALYSIS_VARIABLE}_PVALUE
Pseudo-p-Wert oder p-Wert der Anselin Local Morans I-Statistik, mit dem die statistische Signifikanz des Local Morans I-Wertes gemessen wird.
Dreidimensional: ein p-Wert oder Pseudo-p-Wert für jeden Abschnitt des Raum-Zeit-Würfels.
OUTLIER_{ANALYSIS_VARIABLE}_TYPE
Der Ergebniskategorietyp, bei dem zwischen einem statistisch signifikanten Cluster mit hohen Werten (Hoch-hoch), einem Cluster mit niedrigen Werten (Niedrig-niedrig), Ausreißern, bei denen ein hoher Wert von hauptsächlich niedrigen Werten umgeben ist (Hoch-niedrig), und Ausreißern, bei denen ein niedriger Wert von hauptsächlich hohen Werten umgeben ist (Hoch-niedrig), unterschieden wird.
Dreidimensional: ein Cluster- oder Ausreißertyp für jeden Abschnitt des Raum-Zeit-Würfels. Der Abschnitt basiert auf einer FDR-Korrektur.
OUTLIER_{ANALYSIS_VARIABLE}
_HAS_SPATIAL_NEIGHBORS
Positionen mit räumlichen Nachbarn und Positionen, die nur auf zeitliche Nachbarn zurückgreifen können.
Zweidimensional: eine Klassifizierung für jede Position. Die Analyse von Positionen, die über keine räumlichen Nachbarn verfügen, führt zu Berechnungen, die ausschließlich auf zeitlichen Nachbarn beruhen.
Parameter
arcpy.stpm.LocalOutlierAnalysis(in_cube, analysis_variable, output_features, {neighborhood_distance}, neighborhood_time_step, {number_of_permutations}, {polygon_mask}, {conceptualization_of_spatial_relationships}, {number_of_neighbors}, {define_global_window})
Name | Erläuterung | Datentyp |
in_cube | Der zu analysierende netCDF-Würfel. Diese Datei muss eine Erweiterung (.nc) aufweisen und mit dem Werkzeug Raum-Zeit-Würfel durch Aggregieren von Punkten erstellen oder Raum-Zeit-Würfel aus definierten Features erstellen erstellt worden sein. | File |
analysis_variable | Die numerische Variable in der netCDF-Datei, die analysiert werden soll. | String |
output_features | Die Ausgabe-Feature-Class mit Positionen, die als statistisch signifikante Cluster oder Ausreißer eingestuft wurden. | Feature Class |
neighborhood_distance (optional) | Die räumliche Ausdehnung der Analysenachbarschaft. Anhand dieses Wertes wird bestimmt, welche Features zusammen analysiert werden, um lokale Raum-Zeit-Cluster-Bildung zu bewerten. | Linear Unit |
neighborhood_time_step | Die Anzahl der Zeitschrittintervalle, die in die Analysenachbarschaft einbezogen werden sollen. Anhand dieses Wertes wird bestimmt, welche Features zusammen analysiert werden, um die lokale Raum-Zeit-Cluster-Bildung zu bewerten. | Long |
number_of_permutations (optional) | Die Anzahl der zufälligen Permutationen für die Berechnung von Pseudo-p-Werten. Die Standardanzahl der Permutationen ist 499. Bei einer Auswahl von 0 Permutationen wird der Standard-p-Wert berechnet.
| Long |
polygon_mask (optional) | Ein Polygon-Feature-Layer mit mindestens einem Polygon, der das Analyse-Untersuchungsgebiet definiert. Eine Polygon-Analysemaske wird verwendet, um beispielsweise einen großen See aus der Analyse auszuschließen. Im in_cube definierte Abschnitte, die außerhalb der Maske liegen, werden nicht in die Analyse einbezogen. Dieser Parameter ist nur für Grid-Würfel verfügbar. | Feature Layer |
conceptualization_of_spatial_relationships (optional) | Gibt an, wie räumliche Beziehungen zwischen Abschnitten definiert werden.
| String |
number_of_neighbors (optional) | Eine Ganzzahl zur Angabe entweder der Mindestanzahl oder der exakten Anzahl der Nachbarn, die in Berechnungen für den Ziel-Abschnitt einbezogen werden soll. Bei K_NEAREST_NEIGHBORS hat jeder Abschnitt exakt diese angegebene Anzahl von Nachbarn. Bei FIXED_DISTANCE hat jeder Abschnitt mindestens diese Anzahl von Nachbarn (die neighborhood_distance wird zum Erreichen dieser Nachbaranzahl bei Bedarf vorübergehend erweitert). Wenn eine der Konzeptualisierungen für Nachbarschaften ausgewählt ist, wird jeder Abschnitt dieser Mindestanzahl von Nachbarn zugewiesen. Für Abschnitte mit einer geringeren Anzahl von zusammenhängenden Nachbarn basieren zusätzliche Nachbarn auf der Nachbarschaft von Feature-Schwerpunkten. | Long |
define_global_window (optional) | In der Statistik "Anselin Local Moran I" wird eine lokale, aus den Nachbarn für jeden Abschnitt berechnete Statistik mit einem globalen Wert verglichen. Mit diesem Parameter können Sie steuern, welche Abschnitte zum Berechnen des globalen Werts verwendet werden.
| String |
Codebeispiel
Das folgende Skript veranschaulicht die Verwendung des Werkzeugs LocalOutlierAnalysis im Python-Fenster.
# LocalOutlierAnalysis of homicides in a metropolitan area
import arcpy
arcpy.env.workspace = r"C:\STPM"
arcpy.LocalOutlierAnalysis_stpm("Homicides.nc", "COUNT", "LOA_Homicides.shp", "5 Miles", 2, 499, "#", "FIXED_DISTANCE", "3", "NEIGHBORHOOD_TIME_STEP")
Das folgende eigenständige Python-Skript veranschaulicht die Verwendung des Werkzeugs LocalOutlierAnalysis.
# Create Space Time Cube by aggregating homicide incidents in a metropolitan area
# Import system modules
import arcpy
# Set property to overwrite existing output, by default
arcpy.env.overwriteOutput = True
# Local variables...
workspace = r"C:\STPM"
try:
# Set the current workspace (to avoid having to specify the full path to the feature
# classes each time)
arcpy.env.workspace = workspace
# Create Space Time Cube by aggregating homicide incident data with 3 months and 3 miles settings
# Process: Create Space Time Cube By Aggregating Points
cube = arcpy.CreateSpaceTimeCube_stpm("Homicides.shp", "Homicides.nc", "MyDate", "#",
"3 Months", "End time", "#", "3 Miles", "Property MEDIAN SPACETIME; Age STD ZEROS", "HEXAGON_GRID")
# Create a polygon that defines where incidents are possible
# Process: Minimum Bounding Geometry of homicide incident data
arcpy.MinimumBoundingGeometry_management("Homicides.shp", "bounding.shp", "CONVEX_HULL",
"ALL", "#", "NO_MBG_FIELDS")
# Local Outlier Analysis of homicide incident cube using 5 Miles neighborhood
# distance and 2 neighborhood time step with 499 permutations to detect outliers
# Process: Local Outlier Analysis
loa = arcpy.LocalOutlierAnalysis_stpm("Homicides.nc", "COUNT", "LOA_Homicides.shp", "5 Miles",
2, 499, "bounding.shp", "FIXED_DISTANCE")
except arcpy.ExecuteError:
# If any error occurred when running the tool, print the messages
print(arcpy.GetMessages())
Umgebungen
Sonderfälle
- Zufallszahlengenerator
Der verwendete Zufallsgeneratortyp ist stets Mersenne Twister.
Lizenzinformationen
- Basic: Ja
- Standard: Ja
- Advanced: Ja
Verwandte Themen
- Überblick über das Toolset "Analyse von Raum-Zeit-Mustern"
- Funktionsweise von "Lokale Ausreißeranalyse"
- Raum-Zeit-Würfel durch Aggregieren von Punkten erstellen
- Visualisieren des Raum-Zeit-Würfels
- Was ist ein Z-Wert? Was ist ein p-Wert?
- Überblick über die Toolbox "Space Time Pattern Mining"
- Funktionsweise des Werkzeugs "Cluster- und Ausreißeranalyse (Anselin Local Morans I)"
- Suchen eines Geoverarbeitungswerkzeugs