Dal problema all'algoritmo

Dato un problema si definisce modello relativo al problema in esame la rappresentazione semplificata della situazione analizzata che evidenzia tutti gli elementi fondamentali e determinanti utili alla risoluzione del problema.

Descrivere la strategia risolutiva del prblema é un'attivitá creativa che richiede l'apporto di una persona in grado di risolvere il problema in questione. Spesso le strategie risolutive possono essere diverse e alcune possono essere più efficaci ed efficienti o più eleganti e cosí via.

Per trovare la soluzione del problema si possono usare approcci e metodi diversi:

Se il risolutore é la persona che definisce e costruisce la strategia risolutiva, l'esecutore é colui che esegue le azioni descritte dal risolutore per giungere concretamente alla soluzione del problema. Il principio fondamentale é che la strategia risolutiva deve essere descritta tenendo presente che l'esecutore non conosce gli scopi o il senso complessivo della strategia risolutiva. Il suo compito é escusivamente di comprendere ed eseguire le singole istruzioni comunicategli dal risolutore in modo da giungere ai dati finali partendo da quelli iniziali. Questa é la situazione tipica in cui l'esecutore é un "computer" ovvero, sostanzialmente, una macchina.

é evidente che la descrizione della strategia risolutiva non deve assolutamente essere ambigua e questo richiede un rigoroso rispetto di formalismi prestabiliti. Quando l'esecutore é un computer disporremo di:

  1. un linguaggio che il computer é in gardo di interpretare;

  2. un insieme di azioni che il computer é in grado di eseguire;

  3. un insieme di regole che ad gni frase corretta del linguaggio associano le relative azioni da compiere.

Ovviamente l'esecutore deve descrivere l'insieme delle azioni secondo un ordine logico ben preciso e in una forma che il computer sia in grado di interpretare.

Perché il lavoro svolto dal risolutore abbia un senso occorre che la strategia risolutiva sia generale e risolva una classe di problemi dello stesso tipo o della stessa famiglia.

Ogni azione descritta in una strategia risolutiva é un evento di cui sono noti il soggetto o esecutore, gli oggetti su cui questi deve agire e la trasformazione prodotta su di essi in una unitá di tempo finita. Le azioni devono avvenire in sequenza, uno dopo l'altra.

Le azioni non scomponibili in azioni più semplici sono azioni elementari e vengono dette istruzioni, sono direttamente eseguibili dall'esecutore e l'interpretazione é univica.

Dopo quanto detto é possibile definire algoritmo il procedimento risolutivo composto da una successione ordinata e finita di istruzioni univocamente interpretabili e definite la cui esecuizione si arresta dopo aver fornito i risultati del problema a partire dai valori assunti dai dati iniziali.

Un algoritmo deve essere:

Definiamo infine efficiente un algoritmo quando é:

Scrivi email per il tutor dei corsi
Scrivi email per l'amministratore del sito
Torna all'indice del modulo

Ultima modifica: