المكاسب:
- القدرة على استخدام الذكاء الاصطناعي في إنشاء التعليمات البرمجية وسير العمل لمعالجة البيانات المكانية باستخدام QGIS وPython (مكتبات مثل GeoPandas)
- القدرة على اختبار الكود المكاني الذي ينتجه الذكاء الاصطناعي على بيانات عينة صغيرة والتحقق منه مقابل أخطاء النظام الإحداثي والأخطاء الهندسية
- القدرة على فهم سرية البيانات والحاجة إلى التحقق من البرنامج النصي الذي تم إنشاؤه بواسطة الذكاء الاصطناعي قبل تشغيله على بيانات المشروع الحقيقية.
تستغرق المهام المكانية المتكررة في وحدة التخطيط (قص الطبقات، ورسم المخازن المؤقتة، وحساب المناطق، ودمج الجداول) ساعات وتنتج أخطاء عند القيام بها يدويًا. هناك أداتان قويتان ومجانيتان ومفتوحتان المصدر تعملان على أتمتة هذه المهام: QGIS (برنامج نظم المعلومات الجغرافية لسطح المكتب) وPython (لغة برمجة تحتوي على مكتبات للبيانات المكانية مثل GeoPandas وShapely وRasterio). يتميز الذكاء الاصطناعي بالسرعة المذهلة في إنشاء التعليمات البرمجية وسير العمل لهذه الأدوات: فهو يقوم بصياغة نص برمجي للعمل من طلب مكون من جملة واحدة. لكن الذكاء الاصطناعي يكتب تعليمات برمجية بافتراضات لا يمكنك رؤيتها - نظام إحداثي خاطئ، وحدة خاطئة، عملية تحذف العناصر بصمت. ولهذا السبب يجب قراءة كل كود مكاني ينتجه الذكاء الاصطناعي واختباره على عينة صغيرة قبل تشغيله على بيانات المشروع الحقيقية. تُعلمك هذه الوحدة الأتمتة المكانية الآمنة باستخدام الذكاء الاصطناعي، حتى لو كنت لا تعرف كيفية البرمجة.
لماذا QGIS وPython
يتيح لك QGIS التحليل بالنقر فوق؛ إنه سهل التعلم ويتضمن وحدة تحكم Python. من ناحية أخرى، تسمح لك لغة بايثون بكتابة المهام المتكررة مرة واحدة وتشغيلها في مئات الملفات. GeoPandas هي المكتبة الأكثر عملية للمخططين، حيث تجمع بين البيانات الجدولية (الباندا) والجغرافيا: قراءة الطبقات، والتصفية، ورسم المخازن المؤقتة، وحساب المناطق باستخدام سطر واحد من التعليمات البرمجية. يكتب الذكاء الاصطناعي كود GeoPanda بشكل جيد جدًا؛ لكن الكود الذي يبدو جيدًا ليس دائمًا هو الكود الصحيح.
تحذير: يمكن تشغيل البرنامج النصي الذي يكتبه الذكاء الاصطناعي دون أخطاء ويؤدي إلى نتائج خاطئة تمامًا. ""نجح"" و""صحيح"" شيئان مختلفان. التحقق من الصحة لا يعني فشل التعليمات البرمجية، ولكن أن النتيجة تتطابق مع مرجع معروف.
هناك مفهوم آخر مهم وهو قابلية التكرار: التحليل الذي تجريه في مؤسسة عامة يجب أن يكون قادرًا على تكراره بنفس الخطوات من قبل شخص آخر بعد أشهر. لا يتم تذكر الإجراءات التي تتم عن طريق النقر يدويًا ولا يمكن تدقيقها؛ في حين أن نص بايثون هو سجل للعمل ويعيد إنتاج نفس النتيجة. يؤدي تخزين التعليمات البرمجية التي تنتجها باستخدام الذكاء الاصطناعي إلى جانب تعليقاتها إلى تقوية المساءلة وذاكرة الشركة. لذا اهدف إلى "التعليمات البرمجية القابلة للقراءة والتعليق عليها والمخزنة"، وليس "التعليمات البرمجية العاملة". من العادات الجيدة إضافة مقطع وصف قصير في بداية كل برنامج نصي، يوضح البيانات التي يتم تشغيلها عليها، وفي أي تاريخ، ولأي غرض.
القواعد الذهبية لتوليد التعليمات البرمجية باستخدام الذكاء الاصطناعي
- أعط السياق. تنسيق الملف، CRS، أسماء الأعمدة، ما تريد القيام به.
- اطلب الصغيرة. يعد الرمز القصير الذي يقوم بمهمة واحدة أكثر أمانًا من البرنامج النصي العملاق.
- اطلب التوضيح. اطبع إلى الذكاء الاصطناعي ما يفعله كل سطر من التعليمات البرمجية؛ لا تقم بتشغيل التعليمات البرمجية التي لا تفهمها.
- اختباره على العينة. جربه أولاً على عينة بيانات مكونة من 10 إلى 20 سجلاً.
- قارن مع المرجع. قارن مساحة/مسافة بقيمة معروفة.
- نسخ احتياطي. لا تقم أبدًا بالكتابة فوق البيانات الرئيسية؛ العمل في نسخة.
خطوة بخطوة: برنامج نصي مكاني آمن باستخدام الذكاء الاصطناعي
- توضيح المهمة. "اختيار المساحات الخضراء من طبقة الأرض واحتساب مساحاتها وكتابة المساحة التي تزيد عن 5000 متر مربع في ملف منفصل."
- تحديد البيانات. التنسيق (GeoPackage/Shapefile)، CRS، اسم العمود ذي الصلة.
- طباعة الكود + الوصف للذكاء الاصطناعي. التعليق سطراً سطراً.
- قم بإجراء CRS والتحكم في الوحدة. المساحة بالمتر المربع أو الطبقة بالمترية CRS؟
- تشغيل على بيانات العينة. التحقق من النتيجة بصريا.
- التحقق مع مرجع. قارن مساحة قطعة الأرض بقيمة سند الملكية الخاص بها.
- قم بتشغيله على البيانات الرئيسية، واكتب الإخراج إلى الملف الجديد.
موجه ضعيف / موجه قوي
المطالبة الضعيفة: "احسب مساحة الطرود".
يكتب الذكاء الاصطناعي دون معرفة نظام الإحداثيات والتنسيق والعمود؛ قد يظهر الحقل في الوحدة الخطأ أو CRS الخطأ.
موجه قوي: "باستخدام GeoPandas، اقرأ طبقة GeoPackage ("parcels.gpkg"، وهو نظام وطني متري مثل CRS: EPSG:5254) واكتب مساحة كل قطعة بالمتر المربع في عمود "area_m2" جديد. علق على كل سطر من الكود. أضف سطرًا قبل حساب المنطقة للتحقق من أن الطبقة موجودة في CRS متري؛ وحذر إذا لم تكن كذلك. اكتب الإخراج إلى ملف جديد، لا تغير الملف الأصلي."
تنتج المطالبة الثانية تعليمات برمجية آمنة وقابلة للتدقيق لأنها تحتوي على CRS والوحدة والإخراج الآمن والوصف.
أربعة قوالب قابلة للنسخ
المهمة: اكتب كود Python قصيرًا يقوم بالمهمة التالية باستخدام GeoPandas. قم بالتعليق على كل سطر باللغة التركية. الإجراء: [...] ملف الإدخال: [...] (التنسيق، CRS: [...]، العمود ذو الصلة: [...]) القاعدة: لا تغير الملف الأصلي، اكتب الإخراج إلى ملف جديد. تحقق من أن CRS متري قبل التشغيل؛ إذا لم يكن الأمر كذلك، حذر.
المهمة: اشرح رمز Python/GeoPandas التالي سطرًا تلو الآخر وقم بوضع علامة على المخاطر: أي سطر يمكنه حذف/الكتابة فوق البيانات، أي عملية تفترض CRS أو الحجم، أي خطوة ستكون بطيئة في البيانات الضخمة. تغيير الكود فقط قم بالشرح والتحذير. الكود: [...]
المهمة: اكتب خطة اختبار صغيرة قبل تشغيل هذا الرمز على البيانات الحقيقية. ما هي عينة البيانات، وما هي النتيجة المتوقعة، وما هي القيمة المرجعية التي ينبغي التحقق من صحتها؟ إعطاء قائمة مرجعية. الكود/الإجراء: [...]
المهمة: قم بوصف إجراء QGIS التالي (انقر فوق الخطوات) باعتباره مسار قائمة QGIS ورمز Python/GeoPandas المكافئ. حدد الاختلافات ونقاط الاهتمام (CRS، الوحدة). العملية: [...]
جدول: العمليات المكانية المتكررة ومزالقها
معاملة
ماذا يفعل
فخ في رمز الذكاء الاصطناعي
التحقق
حساب ميداني
يجد منطقة المضلع
الحقل لا معنى له في CRS الجغرافية
المقارنة مع المنطقة المعروفة
المخزن المؤقت
المنطقة المحيطة بالحدود
خطأ في الوحدة (درجة/متر).
متري CRS + القياس
التجميع المكاني
الطبقات المرتبطة
مفتاح غير صحيح/تسجيل مكرر
التحكم في عدد السجلات
مقطع
قطع مع المنطقة
فقدان البيانات خارج الحدود
قارن بين المدخلات والمخرجات
الاستنساخ
يستبدل CRS
هدف خاطئ CRS
تأكيد رمز EPSG
ثلاث حالات صغيرة
الحالة 1 - الكتابة الصامتة. يقوم المخطط بتشغيل نص مكتوب بواسطة الذكاء الاصطناعي مباشرة على الطبقة الأساسية. تطبق التعليمات البرمجية عامل تصفية بشكل غير صحيح، وتحذف نصف الطبقة، وتحفظها في نفس الملف. ونظرًا لعدم وجود نسخة احتياطية، يتم فقدان البيانات التي تدوم لعدة أيام. الدرس: الإخراج دائمًا إلى ملف جديد، والبيانات الرئيسية زائدة دائمًا.
الحالة 2 - المخزن المؤقت بوحدة خاطئة. يطلب أحد الفرق منطقة عازلة للوصول إلى المدارس بطول 500 قدم. يعمل كود الذكاء الاصطناعي على Geo CRS؛ يغطي المخزن المؤقت "500 درجة" الخريطة بأكملها. وبما أن الفريق يختبر عينة صغيرة، فإنه يكتشف الخطأ قبل أن ينتقل إلى البيانات الرئيسية؛ يضيف ويصلح الإسقاط إلى CRS المتري. عادة الاختبار تمنع وقوع الكوارث.
الحالة 3 - التعلم التفسيري. يقوم المخطط الذي لا يعرف الكود بإنتاج رمز الانضمام من خلال جعل الذكاء الاصطناعي يفسر كل سطر. يرى "هذا الصف يسقط سجلات لا مثيل لها" في الوصف ويدرك أن هذا سيفقد بعض الطرود؛ يطلب من الذكاء الاصطناعي إصدارًا يحتفظ أيضًا بعدم التطابقات. يعد فهم الكود شرطًا أساسيًا لاستخدامه بأمان.
الأخطاء الشائعة
- يعمل مباشرة على البيانات الرئيسية. اعمل دائمًا على النسخة، وكتابة الإخراج إلى الملف الجديد.
- الخلط بين "عملت" و"صحيح". قد ينتج عن التعليمات البرمجية الخالية من الأخطاء نتائج غير صحيحة؛ التحقق مع المرجع.
- بافتراض CRS والحجم. تحقق دائمًا من مقياس CRS لعمليات المنطقة والمسافة.
- تشغيل التعليمات البرمجية التي لا تفهمها. من الخطر تشغيله دون طلب تفسيرات ودون معرفة ما تفعله السطور.
- تخطي الاختبار الصغير. يعد التبديل إلى البيانات الضخمة دون تجربة بيانات العينة هو المصدر الأكثر شيوعًا للخطأ.
- إعطاء البيانات السرية للأجهزة السحابية دون تفكير. لا تشارك بيانات الطرود/الشخص الحقيقية عند إنشاء التعليمات البرمجية؛ استخدم بيانات نموذجية/مجهولة.
باختصار
يقوم كل من QGIS وPython (وخاصة GeoPandas) بأتمتة المهام المكانية المتكررة في التخطيط؛ يقوم الذكاء الاصطناعي بإنشاء كود لهذه الأدوات بسرعة. لكن الذكاء الاصطناعي يكتب تعليمات برمجية بافتراضات لا يمكنك رؤيتها: CRS خاطئة، وحجم خاطئ، وعمليات تحذف البيانات بصمت. يعتمد الاستخدام الآمن على ستة قواعد: تقديم السياق، وطلب القليل، والحصول على توضيح، والاختبار على سبيل المثال، والتحقق من خلال المرجع، والنسخ الاحتياطي. "عملت" ليست مثل "صحيح". حتى إذا كنت لا تعرف التعليمات البرمجية، يمكنك إجراء أتمتة مكانية آمنة باستخدام الذكاء الاصطناعي من خلال فهم كل سطر ودون مشاركة البيانات السرية.
مهمة التطبيق
اختر مهمة مكانية متكررة (على سبيل المثال، حساب المناطق في الطبقة وفصل الجزء العلوي من العتبة). (1) طباعة الكود + وصف السطر للذكاء الاصطناعي بالقالب الأول. (2) تحقق من مخاطر نفس الكود الموجود في القالب الثاني وابحث عن سطر واحد على الأقل "قد يمحو البيانات/يفترض CRS". (3) قم بإخراج خطة اختبار باستخدام القالب الثالث: أي عينة من البيانات، وأي قيمة مرجعية. (4) قم بتدوين ثلاث خطوات أمنية ستتخذها قبل تشغيل الكود على البيانات الحقيقية.
قائمة مرجعية
- [ ] أعطيت الذكاء الاصطناعي التنسيق وCRS وسياق العمود.
- [ ] لقد شرحت كل سطر من الكود؛ لم أقم بتشغيل التعليمات البرمجية التي لم أفهمها.
- [ ] أردت رمزًا قصيرًا أحادي الوظيفة.
- [ ] لقد قمت باختباره على بيانات عينة صغيرة وتحققت من النتيجة بصريًا.
- [ ] لقد قمت بالتحقق من النتيجة بقيمة مرجعية معروفة.
- [ ] لقد قمت بعمل نسخة احتياطية من البيانات الرئيسية؛ لقد كتبت الإخراج إلى الملف الجديد.
- [ ] لم أقدم البيانات السرية الفعلية إلى الجهاز السحابي؛ لقد استخدمت بيانات مجهولة/عينة.