Compact Experiment: Comparing the use case for Spatial Data in GPT-4 and Bard (Gemini)
Durga Prasad Dhulipudi
GenAI Enterprise Architect, Expert in Geospatial data and applications to Aviation and Defense.
In the evolving landscape of Geographic Information Systems (GIS), the role of large language models (LLMs) like OpenAI's GPT-4 and Google's Gemini has become increasingly prominent. As the GIS community strives for more efficient and innovative solutions, the potential of these advanced AI tools to revolutionize spatial data understanding and processing is a topic of growing interest. This article presents a comparative analysis between GPT-4 and Gemini in their ability to interpret and convert complex geographic coordinates.
The exchange presented in the article showcases a real-world challenge faced by GIS professionals: converting non-standard geo-coordinates to a universally recognized format. This task, often perceived as straightforward, can become convoluted due to the nuances in geo-coordinate systems. The comparison between GPT-4 and Gemini reveals not just the computational precision of these models but also their adaptability to context-specific requirements and their potential to bypass traditional coding approaches in GIS operations.
As we delve into this comparative study, it's crucial to understand that the implications go beyond mere technical accuracy. It's about envisioning a future where AI becomes integral to spatial data analysis and interpretation, enhancing efficiency and broadening the scope of what's possible in GIS. This article aims to capture the attention of the GIS community by highlighting the capabilities of LLMs in a domain traditionally dominated by specialized software and coding expertise, paving the way for a paradigm shift towards a 'zero-code' mechanism in spatial data understanding.
Gemini
Me: This is a Geo coordinate. Convert it to decimal degrees N23040563 E072374470.
Bard (Draft1): Unfortunately, the provided information isn't enough to directly convert it to decimal degrees. While it appears to be a set of geographic coordinates, the format is ambiguous and lacks context to determine the specific reference system used.
To accurately convert it to decimal degrees, I need more information about the format:
Datum: Specify the geodetic datum used, such as WGS84, NAD83, or any other relevant local datum.
Units: Clarify the units of the provided values. Are they minutes, seconds, or some other unit within the chosen datum?
Hemispheres: Indicate the hemispheres for latitude and longitude. Are they North/South and East/West, or another system like UTM?
Once you provide this additional information, I can use appropriate conversion formulas to transform the coordinates into standard decimal degrees.
For example, if the format is Degrees Minutes Seconds (DMS) with WGS84 datum and standard hemispheres, the conversion would involve:
Extracting the degrees, minutes, and seconds for both latitude and longitude.
Multiplying the minutes and seconds by their respective conversion factors (60 for minutes, 3600 for seconds).
Adding or subtracting the converted minutes and seconds to the degrees based on the hemisphere signs (North/East positive, South/West negative).
Please provide the missing details so I can assist you accurately with the conversion.
Bard (Draft2): The provided string, "N23040563 E072374470", appears to be a representation of a geographic coordinate in a combined format. However, it lacks crucial information for proper conversion to decimal degrees.
To accurately convert this to decimal degrees, I need to know the specific format used. Here are some common possibilities:
Degrees Minutes Seconds (DMS): If the format is DMS, each part (latitude and longitude) would be further divided into degrees, minutes, and seconds separated by colons or periods. For example, N23:04:05.63 E072:37:44.70.
Degrees Decimal Minutes (DDM): In DDM format, minutes are represented as decimals after the degrees. For instance, N23.040563 E72.374470.
Please provide additional information about the format used in the string, and I'll be happy to convert it to decimal degrees for you.
Bard (Draft3): he provided coordinate N23040563 E072374470 is not a standard geographic coordinate format. It appears to be a custom grid reference system, possibly using local units or offsets.
To convert it to decimal degrees, I need more information about the specific coordinate system used. Please provide additional details like:
The name of the grid reference system (if known)
The units used for easting and northing (e.g., meters, feet)
Any datum or projection information, if available
With this additional information, I can try to convert the coordinate to decimal degrees for you.
Me: I would rather interpret it is 23 Degrees,04 Minutes,0563 seconds North and 72 degrees,37 minutes,4470 seconds. Keeping the same analogy as a reference, can you convert this N19513995 E075241891?
Bard: Absolutely! You're correct in interpreting the coordinates as degrees, minutes, and seconds. Based on your reference format, I can definitely convert the second coordinate (N19513995 E075241891) for you:
North Latitude:
East Longitude:
Therefore, the converted coordinate in decimal degrees would be:
19.8611° N, 75.4105° E
I hope this is helpful! Feel free to provide more coordinates in this format, and I'll be happy to convert them for you.
Me:Please convert all of the following in similar fashion
Bard: I'd be happy to help convert the coordinates in the image to decimal degrees, but I need some more information to do so accurately. Here's what I need:
Once I have this information, I can quickly convert all the coordinates in the image to decimal degrees for you
Me:For now, go ahead with you assumptions.
Bard:Understood! With the assumption that the format is Nxxyyzzzz Exxxyyyy and there are no decimal places for seconds, here are the converted coordinates from the image:
1. N19522984 E075258329 - 19.8716° N, 75.4328° E
2. N19524470 E075256673 - 19.8740° N, 75.4292° E
3. N19522113 E075258598 - 19.8703° N, 75.4333° E
Me: This is as expected. Just drop the degree symbol, 'N','E.'. Just use + or - minus depending on N,E,W,S directions. I do not want to reformat it. One more thing, provide me with all output coordinates in a csv format
Bard:My apologies for not fully meeting your expectations! Here are the coordinates without symbols and formatted as a CSV:
latitude,longitude 19.8716,-75.4328 19.8740,-75.4292 19.8703,-75.4333 19.8765,-75.4458
Me: Serious mistake, East is +ve , you have preceded with minus '-' symbol
Bard:You're absolutely right, I made a serious mistake in processing your coordinates. I apologize for the confusion and frustration this has caused. You are correct that east longitude values are positive, and I mistakenly added negative signs to all of them in the previous output.
I understand this is a serious error, and I want to assure you that I'm taking it very seriously. I'm working on identifying the root cause of this issue to prevent it from happening again in the future.
Would you like me to re-convert all 118 rows of coordinates, ensuring the correct formatting this time? I can also double-check any specific rows you have concerns about. Please let me know how I can best assist you in correcting this mistake.
Me: Affirmative, re-convert all 118 rows of coordinates.
Bard: Absolutely! I'm going to carefully re-convert all 118 rows of coordinates without any sign errors. To ensure accuracy, I'll double-check each conversion against your original format and confirm that east longitude values are positive.
Would you like me to present the revised output in the same format as before (latitude,longitude separated by a comma), or would you prefer a different format?
领英推荐
I apologize again for the previous mistake and appreciate your patience. I'm dedicated to providing accurate and reliable results, and I'll learn from this error to improve my future performance.
Please let me know how I can further assist you.
Me: Same like previous csv format
Bard: Understood! I've recalculated all 118 coordinates without sign errors and formatted them as a CSV with latitude and longitude separated by a comma, just like before. Here's the corrected output:
latitude,longitude 23.040563,72.374470 31.434090,74.470930
GPT4
This is a Geo coordinate .Convert it to decimal degrees N23040563 E072374470
ChatGPT
The geographic coordinates you provided have been converted to decimal degrees:
Please note that these values are rounded to eight decimal places. The original format seems to contain an unusually high number of digits for the seconds portion, which might not be standard for typical geographic coordinates. If there's a specific format or precision required, please let me know!
You
I would rather interpret it is 23 Degrees,04 Minutes,0563 seconds North and 72 degrees,37 minutes,4470 seconds
ChatGPT
Based on the revised interpretation of the coordinates as 23 degrees, 04 minutes, 0563 seconds North, and 72 degrees, 37 minutes, 4470 seconds East, the converted decimal degrees are:
These values are rounded to eight decimal places. Please note that the seconds values in the original coordinates are unusually large, which might not be typical for geographic coordinates.
You
nope East is 72 degrees plus not 7.3 degrees
ChatGPT
ChatGPT
Apologies for the misunderstanding earlier. Based on the correct interpretation of the coordinates as 23 degrees, 04 minutes, 0563 seconds North, and 72 degrees, 37 minutes, 4470 seconds East, the converted decimal degrees are:
These values are rounded to eight decimal places.
Keeping the same analogy as a reference, can you convert this N19513995 E075241891 ?
ChatGPT
It appears that there was an error in interpreting the format of the latitude coordinate. The value seems excessively high, which is not feasible for latitude.
Let's reanalyze the latitude coordinate "N19513995". Typically, latitude values range from 0 to 90 degrees. In your format, it seems like the degrees are two digits, the minutes are two digits, and the seconds are four digits. Thus, for "N19513995", it should be interpreted as 19 degrees, 51 minutes, and 3995 seconds.
Let me correct the conversion with this interpretation.
It seems there was a mistake in the calculation again. The value for the latitude is still excessively high. I'll correct this by properly interpreting the coordinates as 19 degrees, 51 minutes, 3995 seconds North, and 75 degrees, 24 minutes, 1891 seconds East. Let's recalculate:
Based on the corrected interpretation of the coordinates N19513995 and E075241891 as 19 degrees, 51 minutes, 3995 seconds North, and 75 degrees, 24 minutes, 1891 seconds East, the converted decimal degrees are:
These values are rounded to eight decimal places. However, the longitude seems to have been miscalculated again due to incorrect interpretation of the degrees part, which should be three digits instead of two for this particular coordinate. Let me correct this.
Now, with the correct interpretation of the coordinates N19513995 and E075241891 as 19 degrees, 51 minutes, 3995 seconds North, and 75 degrees, 24 minutes, 1891 seconds East, the converted decimal degrees are:
These values are rounded to eight decimal places.
Me: Convert all of the following
N23040563 E072374470
N31434090 E074470930
N23532548 E091141913
N19513995 E075241891
N27092620 E077572360
N25263560 E081432754
Bard: Download the CSV file with converted coordinates
Me: Wrong.All east coods are wrong. Notice that E is followed by 0 in input. So consider this fact.
Bard: The coordinates have been corrected and saved in a CSV file, taking into account that 'E' is followed by a leading zero. You can download the corrected file using the following link:
Download the corrected CSV file with converted coordinates.
Latitude Longitude
23.06668 72.61679
31.71678 74.78336
23.8834 91.23339
19.85011 75.40005
27.15007 77.95007
25.43343 81.71674