Articolo presentato al 18° Congresso Nazionale di Speleologia,
CHIUSA '98
Paper presented at the 18th Italian National Congress
of Spelaeology, CHIUSA '98
Compensazione automatica degli errori di richiusura in poligonali con anelli
multipli
Automatic compensation of closure error in multiple-loop traverses
Giuliano Donzellini
E-mail: <donzie@dibe.unige.it>
Ricercatore di elettronica presso il Dipartimento di Ingegneria Biofisica
ed Elettronica (Universita` di Genova).
Socio della Societa` Speleologica Italiana, del Club Alpino Italiano
e del Gruppo Grotte CAI Savona.
Abstract
Closure errors in multiple-loop traverses can be difficult to
process without a suitable software tool. A "least squares" approach is
able to solve the mathematical side of the problem. Process automation
and a "scaleable" easy-to-use interface are useful to minimize difficulties
for both less-skilled and experienced users as well, so enabling everyone
to use loop and multiple-loop survey techniques. Loop closure can be controlled
by the user with a "weight-based" method, and tools for comparing compensated
and uncompensated survey line loops can help to optimize mapping. The criteria
exposed in the paper have been applied to the "GROTTA" software, currently
under development.
Introduzione
Nei rilievi speleologici spesso si incontra il problema di "richiudere"
anelli di poligonale. Il trattamento dell’errore di richiusura comporta
non poche complicazioni, specialmente se ci troviamo in presenza di anelli
multipli. Da un punto di vista geometrico questi si presentano quando,
dopo essere partiti da un caposaldo, vi possiamo ritornare percorrendo
sulla poligonale strade diverse. Un uso sistematico degli anelli di poligonale
sarebbe auspicabile, in quanto molto utile per verificare la qualita` del
rilievo e migliorarne la precisione. Purtroppo troppo spesso gli speleologi,
a fronte delle difficolta` di trattamento, evitano di ricorrere agli anelli
chiusi. Uno strumento adeguato al compito richiesto, che sia semplice da
usare, potrebbe incoraggiare tali tecniche di rilievo. Esistono gia` molti
programmi per la compensazione degli errori di richiusura delle poligonali.
Sovente pero` richiedono laboriose operazioni da parte dell’utente, risultando
di difficile uso. Si potrebbe pensare ad un approccio "scalabile", ossia
che consenta un uso facile agli speleologi meno esperti e dia la possibilita`,
ai piu` introdotti, di intervenire nella correzione degli errori. Le caratteristiche
prevalentemente amatoriali dell’utente-speleologo suggeriscono la progettazione
di uno strumento il piu` possibile automatizzato, privileggiando le necessita`
dell’utente meno esperto. In questa comunicazione si vogliono descrivere
le soluzioni adottate a tal fine nella realizzazione del programma per
il riporto dei rilievi speleologici "GROTTA".
La compensazione degli errori
I metodi "classici" per compensare gli errori di richiusura si basano sul
criterio dei "minimi quadrati" [1]. Alcuni autori hanno sostenuto la non
adeguatezza di questo criterio [2,3], ma ritengo che la sua validita` sia
ancora attuale, soprattutto perche`, se bene applicato, permette all’utente-speleologo
di gestire le richiusure degli anelli in modo relativamente semplice, come
sara` discusso piu` avanti.
Da un punto di vista matematico si tratta di calcolare la posizione
"piu` probabile" dei punti di stazione, imponendo minima la cosiddetta
"somma dei quadrati degli errori". Per "errore" si intende qui la differenza
tra le dimensioni misurate e quelle "teoriche" di ciascun segmento di poligonale,
nelle tre dimensioni dello spazio. Alla misura di ogni segmento viene associato
un "peso", che indica il "grado di fiducia" che si ripone, complessivamente,
nella misura fatta. Il risultato dell’analisi porta alla impostazione di
un sistema lineare, il cui numero di equazioni e di incognite e` pari al
numero di punti di stazione presenti nella poligonale.
Dato che il numero di punti di stazione puo` essere anche molto elevato,
per ottenere un sistema di dimensione ragionevole si adotta un criterio
di "riduzione pesata" della poligonale. Dopo avere risolto il sistema e
ricavato le coordinate dei punti della poligonale "ridotta", questa viene
"ri-espansa", ottenendo infine la posizione spaziale di tutti i punti di
stazione. L’algoritmo implementato nel programma "GROTTA" e` piuttosto
complesso, si basa sulla geometria dei labirinti e risolve automaticamente
ed efficientemente poligonali in cui sono presenti anelli multipli.
L’intervento dell’utente nella richiusura degli
anelli
Elemento chiave della compensazione, come ora visto, e` il "peso" che viene
assegnato ai segmenti. Se un segmento non e` incluso in un anello, il peso
e` ininfluente. Se ne fa parte, il peso diventa importante perche` confrontato
con quello degli altri segmenti inclusi nello stesso anello. Piu` il suo
peso e` alto, piu` un segmento imporra` le sue misure sugli altri e sara`
poco modificato; piu` e` basso, piu` subira` variazioni e sara` adattato
dagli altri. In assenza di intervento, i segmenti ricevono tutti lo stesso
peso e la compensazione degli anelli avviene in ogni caso, in modo completamente
automatico, "dietro le quinte". Per assegnare ad uno o piu` segmenti un
peso diverso, e quindi intervenire sulla compensazione, l’utente deve rendere
visibili i campi appositi, normalmente nascosti, che sono situati all’interno
della maschera di introduzione e modifica dati (Fig.1) [4].
Si puo` decidere di intervenire in qualunque momento; di solito e` conveniente
farlo dopo aver esaminato il riporto ottenuto con i pesi assegnati in automatico.
Il primo campo permette di assegnare il peso mediante un "giudizio di qualita`"
della misura (‘Normale’, ‘Buona’, ‘Ottima’...), mentre l’altro campo consente
una scelta piu` fine, assegnando direttamente il peso (compreso tra 0 e
100). Uno zero indica che in un anello la misura del segmento non deve
essere tenuta in conto (la posizione dei suoi punti estremi dipendera`
dagli altri segmenti); un valore pari a 100 indica che le sue misure sono
da considerarsi "ideali" (non saranno modificate); il valore intermedio
di 50 corrisponde al giudizio ‘Normale’ ed e’ quello assegnato in automatico.
Un esempio: se all’interno di un anello di poligonale e` compreso un pozzo,
la compensazione potrebbe renderlo obliquo. Assegnando un giudizio di qualita`
alto alla sua misura, obbligheremo l’algoritmo a mantenere la verticale
e a distribuire l’errore di richiusura sugli altri segmenti dell’anello.
Controllo delle richiusure
L’utente ha due strumenti per controllare la qualita` delle richiusure.
Il primo consiste nella possibilita` di visualizzare contemporaneamente
sia la poligonale compensata che quella non compensata (Fig.2).
Con un semplice click del mouse possiamo selezionare un punto di stazione
sul quale far coincidere le due poligonali. In questo modo possiamo, anello
per anello, esaminare qualitativamente e visivamente il risultato delle
nostre misure, decidendo poi di intervenire o meno. Questa osservazione
puo` essere fatta sia sulla pianta che sullo sviluppo longitudinale. Il
secondo metodo e` meno visivo ma piu` quantitativo (Fig.3).
E` possibile esaminare, sul punto di richiusura di ogni anello, l’errore
risultante dalle misure (prima della compensazione). Viene riportato l’errore
in linea d’aria, in pianta e di dislivello.
Riferimenti
[1] V.A.Schmidt, J.H.Schelleng, "The Application of the Method of
Least Squares to the Closing of Multiply-Connected Loops in Cave or Geological
Surveys," Bullettin of the National Speleological Society, pp. 51-58,
32(3), 1970.
[2] British Cave Research Association, "Cave Surveing Notes," http://www.sat.dundee.ac.uk/~arb/surveing/surveynotes.htm
[3] L.Fish, "The Problem with Least Squares Loop Closures," http://members.iex.net/~lfish/compart.htm
[4] G.Donzellini, "Un ambiente grafico interattivo per il trattamento
di poligonali," Atti del 18° Congresso Nazionale di Speleologia,
CHIUSA '98