Unità 4 / 12

Flusso di lavoro dei dati spaziali con QGIS e Python

Guadagni:

  • Capacità di utilizzare l'intelligenza artificiale nella generazione di codice e flusso di lavoro per l'elaborazione di dati spaziali con QGIS e Python (librerie come GeoPandas)
  • Capacità di testare il codice spaziale prodotto dall'intelligenza artificiale su piccoli campioni di dati e verificarlo rispetto al sistema di coordinate e agli errori geometrici
  • Capacità di comprendere la riservatezza dei dati e la necessità di controllare lo script generato dall'intelligenza artificiale prima di eseguirlo su dati di progetto reali.

Le attività spaziali ripetitive in un'unità di pianificazione (ritaglio di layer, disegno di buffer, calcolo di aree, combinazione di tabelle) richiedono ore e producono errori se eseguite manualmente. Esistono due strumenti potenti, gratuiti e open source che automatizzano queste attività: QGIS (un software GIS desktop) e Python (un linguaggio di programmazione con librerie per dati spaziali come GeoPandas, Shapely, Rasterio). L'intelligenza artificiale è incredibilmente veloce nel generare codice e flusso di lavoro per questi strumenti: redige uno script funzionante da una richiesta di una frase. Ma l’intelligenza artificiale scrive codice con presupposti che non puoi vedere: sistema di coordinate sbagliato, unità sbagliata, un’operazione che elimina silenziosamente gli elementi. Ecco perché ogni codice spaziale prodotto dall'intelligenza artificiale deve essere letto e testato su un piccolo campione prima di essere eseguito su dati di progetto reali. Questa unità insegna l'automazione spaziale sicura con l'intelligenza artificiale, anche se non sai come programmare.

Perché QGIS e Python

QGIS ti consente di analizzare facendo clic; È facile da imparare e include una console Python. Python, d'altra parte, ti consente di scrivere attività ripetitive una volta ed eseguirle in centinaia di file. GeoPandas è la libreria più pratica per i pianificatori, che combina dati tabulari (panda) con la geografia: legge layer, filtra, disegna buffer, calcola aree con una riga di codice. L'intelligenza artificiale scrive molto bene il codice GeoPanda; Ma il codice che sembra buono non è sempre il codice giusto.

Attenzione: uno script scritto da un'intelligenza artificiale può essere eseguito senza errori e produrre comunque risultati completamente errati. “Ha funzionato” e “corretto” sono due cose diverse. La convalida non è che il codice non fallisca, ma che il risultato corrisponda a un riferimento noto.

Un altro concetto importante è la riproducibilità: un’analisi che fai in un ente pubblico dovrebbe poter essere ripetuta con gli stessi passaggi da qualcun altro mesi dopo. Le azioni eseguite facendo clic manualmente non vengono ricordate e non possono essere controllate; mentre uno script Python è sia una registrazione del lavoro che riproduce lo stesso risultato. Memorizzare il codice prodotto con l’intelligenza artificiale insieme ai relativi commenti rafforza sia la responsabilità che la memoria aziendale. Quindi punta al "codice leggibile, commentato e memorizzato", non al "codice funzionante". Una buona abitudine è aggiungere una breve descrizione all'inizio di ogni script, indicando su quali dati viene eseguito, in quale data e per quale scopo.

Regole d'oro per generare codice con l'intelligenza artificiale

  1. Fornisci il contesto. Formato file, CRS, nomi delle colonne, cosa vuoi fare.
  2. Richiedi piccolo. Uno shortcode che svolge un singolo lavoro è più sicuro di uno script gigante.
  3. Chiedi chiarimenti. Stampa all'AI cosa fa ogni riga di codice; Non eseguire codice che non capisci.
  4. Provalo sul campione. Provalo prima su un campione di dati di 10-20 record.
  5. Confronta con riferimento. Confronta un'area/distanza con un valore noto.
  6. Backup. Non sovrascrivere mai i dati anagrafici; lavorare in copia.

Passo dopo passo: uno script spaziale sicuro con l'intelligenza artificiale

  1. Chiarire il compito. "Seleziona le aree verdi dal layer dei lotti, calcola le loro superfici, scrivi l'area sopra i 5000 m² in un file separato."
  2. Identificare i dati. Formato (GeoPackage/Shapefile), CRS, nome della colonna pertinente.
  3. Stampa codice + descrizione su AI. Commenta riga per riga.
  4. Far eseguire il CRS e il controllo dell'unità. Area in m² o strato in CRS metrico?
  5. Esegui su dati campione. Controlla visivamente il risultato.
  6. Verificare con un riferimento. Confronta l'area di un pacco con il valore del suo atto di proprietà.
  7. Eseguilo sui dati anagrafici, scrivi l'output nel nuovo file.

Prompt debole / Prompt forte

Prompt debole: "Calcola l'area dei lotti".

L'intelligenza artificiale scrive senza conoscere il sistema di coordinate, il formato e la colonna; Il campo potrebbe essere visualizzato nell'unità sbagliata o nel CRS sbagliato.

Suggerimento forte: "Con GeoPandas, leggi un layer GeoPackage ('parcels.gpkg', un sistema metrico nazionale come CRS: EPSG:5254) e scrivi l'area di ciascun pacco in m² in una nuova colonna 'area_m2'. Commenta ogni riga del codice. Aggiungi una riga prima del calcolo dell'area che controlla che il layer sia in un CRS metrico; avvisa se non lo è. Scrivi l'output in un nuovo file, non modificare il originale."

Il secondo prompt produce codice sicuro e controllabile perché contiene CRS, unità, output sicuro e descrizione.

Quattro modelli copiabili

Attività: scrivere un breve codice Python che esegua la seguente attività con GeoPanda. Commenta ogni riga in turco. Azione: [...]File di input: [...] (formato, CRS: [...], colonna pertinente: [...])Regola: non modificare il file originale, scrivere l'output sul NUOVO file. Controllare che CRS sia la metrica prima dell'operazione; In caso contrario, avvisa.

Attività: spiegare il seguente codice Python/GeoPanda riga per riga e contrassegnare i RISCHI: quale riga può eliminare/sovrascrivere i dati, quale operazione presuppone CRS o volume, quale passaggio sarebbe lento sui big data. Modifica del codice; basta spiegare e avvisare.Codice: [...]

Compito: scrivere un piccolo piano di TEST prima di eseguire questo codice su dati reali. Con quali dati campione, con quale risultato atteso, con quale valore di riferimento va validato? Fornisci una lista di controllo. Codice/azione: [...]

Attività: Descrivi la seguente azione QGIS (fai clic su passaggi) sia come percorso del menu QGIS che come codice Python/GeoPandas equivalente. Specificare differenze e punti di interesse (CRS, unità).Processo: [...]

Un tavolo: operazioni spaziali frequenti e le loro insidie

transazione

Cosa fa

Intrappola nel codice AI

verifica

Conto sul campo

Trova l'area del poligono

Il campo non ha significato nel CRS geografico

Confronto con l'area conosciuta

Buffer

regione attorno al confine

Errore unità (gradi/metri).

CRS metrico + misurazione

aggregazione spaziale

Strati associati

Registrazione chiave/duplicato errata

Controllo del conteggio delle registrazioni

Clip

tagli con area

Perdita di dati fuori limite

Confronta input/output

riproiezione

Il CRS sostituisce

CRS target sbagliato

Conferma del codice EPSG

tre mini custodie

Caso 1: sovrascrittura silenziosa. Un pianificatore esegue uno script scritto dall'intelligenza artificiale direttamente sul livello di base. Il codice applica erroneamente un filtro, elimina metà del livello e lo salva nello stesso file. Poiché non esiste alcun backup, i dati che durano giorni vengono persi. Lezione: output sempre in un nuovo file, dati anagrafici sempre ridondanti.

Caso 2 — Buffer con unità sbagliata. Una squadra richiede un buffer di accesso di 500 piedi alle scuole. Il codice AI viene eseguito su geo CRS; Il buffer di 500 "gradi" copre l'intera mappa. Poiché il team effettua i test su un piccolo campione, rileva l'errore prima che passi ai dati principali; Aggiunge e corregge la proiezione al CRS metrico. L’abitudine di testare previene il disastro.

Caso 3 – Apprendimento esplicativo. Un pianificatore che non conosce il codice produce un codice di join facendo interpretare all'intelligenza artificiale ogni riga. Vede "questa riga rilascia record senza corrispondenza" nella descrizione e si rende conto che ciò perderà alcuni pacchi; Chiede all'IA una versione che mantenga anche le non corrispondenze. Comprendere il codice è un prerequisito per utilizzarlo in sicurezza.

Errori comuni

  • Esecuzione direttamente sui dati anagrafici. Lavora sempre sulla copia, scrivendo l'output nel nuovo file.
  • Confondere "ha funzionato" con "corretto". Il codice privo di errori può produrre risultati errati; Verificare con riferimento.
  • Supponendo CRS e volume. Controllare sempre il CRS metrico per le operazioni su area e distanza.
  • Esecuzione di codice che non capisci. È rischioso percorrerlo senza chiedere spiegazioni e senza sapere cosa fanno le linee.
  • Salta il piccolo test. Passare ai big data senza provare i dati campione è la fonte di errore più comune.
  • Fornire dati riservati ai dispositivi cloud senza pensare. Non condividere dati reali di pacchi/persone durante la generazione del codice; Utilizzare dati campione/anonimi.

In sintesi

QGIS e Python (in particolare GeoPanda) automatizzano le attività spaziali ripetitive nella pianificazione; L'intelligenza artificiale genera rapidamente codice per questi strumenti. Ma l’intelligenza artificiale scrive codice partendo da presupposti che non puoi vedere: CRS sbagliato, volume sbagliato, operazioni che cancellano silenziosamente i dati. L'utilizzo sicuro si basa su sei regole: fornire un contesto, chiedere un piccolo chiarimento, provare con un esempio, verificare per riferimento, eseguire il backup. "Ha funzionato" non è la stessa cosa di "corretto". Anche se non conosci il codice, puoi realizzare un'automazione spaziale sicura con l'intelligenza artificiale comprendendo ogni riga e senza condividere dati riservati.

Compito dell'applicazione

Scegli un'attività spaziale ripetitiva (ad esempio calcolare le aree in uno strato e separare la parte superiore di una soglia). (1) Stampa il codice + la descrizione della riga su AI con il primo modello. (2) Controllare i rischi dello stesso codice del secondo modello e trovare almeno una riga "può cancellare dati/presuppone CRS". (3) Emettere un piano di test con il terzo modello: quali dati campione, quale valore di riferimento. (4) Annota tre passaggi di sicurezza che eseguirai prima di eseguire il codice su dati reali.

lista di controllo

  • [] Ho fornito ad AI il formato, il CRS e il contesto della colonna.
  • [ ] Ho spiegato ogni riga del codice; Non ho eseguito il codice che non ho capito.
  • [ ] Volevo un codice breve e con una sola funzione.
  • [] L'ho testato su piccoli campioni di dati e ho controllato visivamente il risultato.
  • [ ] Ho verificato il risultato con un valore di riferimento noto.
  • [ ] Ho eseguito il backup dei dati anagrafici; Ho scritto l'output nel nuovo file.
  • [] Non ho fornito i dati riservati effettivi all'appliance cloud; Ho utilizzato dati anonimi/campione.