European Commission logo
italiano italiano
CORDIS - Risultati della ricerca dell’UE
CORDIS

Computing with Infinite Data

Article Category

Article available in the following languages:

Computazione con dati infiniti

Facendo progredire la nostra comprensione della computazione con dati infiniti, i ricercatori del progetto CID, finanziato dall’UE, hanno gettato le basi per la costruzione di software efficienti e affidabili nelle applicazioni ingegneristiche.

Economia digitale icon Economia digitale

Che si tratti del pilota automatico di un velivolo, del software utilizzato per monitorare e controllare il traffico ferroviario o dei sensori che abilitano le funzioni autonome nelle nostre automobili, tutti dipendono non solo dalla disponibilità di tecnologia, ma anche dalla sua capacità di non commettere errori. «Sempre più applicazioni richiedono l’uso del computer, ma in molte situazioni i programmi informatici possono presentare imprecisioni dovute, ad esempio, a errori di arrotondamento», spiega Dieter Spreen, matematico presso l’Università di Siegen in Germania. Quando si verificano delle imprecisioni, le conseguenze possono essere impreviste. A titolo di esempio, si consideri che il primo razzo Ariane 5 non è stato lanciato proprio a causa di imprecisioni di tal genere. «Queste imprecisioni si verificano quando è presente una dissociazione tra la teoria matematica e la sua implementazione nei programmi informatici», aggiunge Spreen. Grazie al sostegno del progetto CID, finanziato dall’UE, l’Università di Siegen sta guidando uno sforzo internazionale per sviluppare gli strumenti necessari a risolvere queste imprecisioni. «Il progetto ha rappresentato una sede eccellente in cui ricercatori provenienti da aree diverse ma correlate hanno potuto interagire in un ambiente molto produttivo e accogliente», afferma Daniel Graça, ricercatore presso Università dell’Algarve, uno dei partner del progetto.

Ecco allora i dati a precisione infinita

Il progetto riunisce 20 università e istituzioni partner provenienti da tutta Europa e da tutto il mondo. Il loro obiettivo: sviluppare strumenti in grado di dimostrare in maniera ufficiale il corretto funzionamento delle applicazioni ingegneristiche. «Il software viene solitamente testato in base a una serie di scenari possibili», spiega Spreen. «Tuttavia, questo non garantisce che il software sia completamente sicuro, poiché è possibile che esistano ancora essere vulnerabilità che potrebbero avere conseguenze indesiderate, a causa di incidenti o di comportamenti dolosi». Per ovviare a questo limite, il progetto ha fatto ricorso ai dati a precisione infinita. «Anche se sembra un’impossibilità fisica, con un’attenta progettazione è possibile programmare un normale computer affinché si comporti come se le sue strutture di dati fossero effettivamente infinite, anche se in realtà tutti i dati hanno una rappresentazione fisica finita», afferma Alex Simpson, ricercatore presso Università di Lubiana, un altro dei partner del progetto. Come spiega il matematico, compiere questa operazione ha senso sia dal punto di vista pratico, come approccio realistico all’elaborazione dati, sia dal punto di vista teorico, essendo giustificata da modelli matematici rigorosi. «L’uso di strutture dati infinite elimina gli errori di arrotondamento che sono onnipresenti nei modelli di calcolo standard, ad esempio quelli basati su numeri a virgola mobile o a doppia precisione», spiega. Consentendo la computazione con dati infiniti, il progetto ha potuto sviluppare un linguaggio di programmazione di supporto e metodi per garantire la correttezza dei programmi con questa tipologia di dati, aprendo inoltre le porte a modelli matematici in grado di incorporare nuove applicazioni.

Troppo complesso da risolvere

Il progetto ha anche esaminato i diversi algoritmi utilizzati nelle applicazioni ingegneristiche. «Volevamo capire quali problemi sono intrinsecamente difficili, o addirittura impossibili, da risolvere con l’aiuto dei computer e capire in che modo questi problemi differiscono da quelli più semplici», osserva Spreen. I ricercatori hanno scoperto che alcuni problemi sono talmente complessi da determinare semplicemente la mancanza di procedure semplici a disposizione. Per gli sviluppatori di software, questa informazione è importante: significa che non devono più perdere tempo a cercare alternative. «Eravamo interessati a queste domande perché ci siamo resi conto che i sistemi dinamici sono ampiamente utilizzati in molte applicazioni del mondo reale, ma in molti casi sono troppo complessi da analizzare senza l’uso del computer», conclude Graça. «Riuscire a comprendere più a fondo tali questioni è stato per noi un risultato importante».

Parole chiave

CID, computer, programmi informatici, dati, calcolo, applicazioni ingegneristiche, tecnologia, teoria matematica, dati a precisione infinita

Scopri altri articoli nello stesso settore di applicazione