Condividi:

Condividi su facebook
Condividi su twitter
Condividi su linkedin
Condividi su whatsapp
Condividi su telegram

Non li vediamo, ma sono ovunque, dal più complesso programma a quando cuciniamo, una sottopelle che diamo per scontata: ecco che cos’è un algoritmo.

Un algoritmo è la soluzione ad un problema, la quale può essere più o meno efficace ed efficiente (attenzione che questi due termini non vogliono dire la stessa cosa, ci ritorneremo successivamente).

Riducendo ai minimi termini, un buon algoritmo è una successione di passaggi che permettono di risolvere un problema con il minor sforzo.

algoritmo

Definizione di algoritmo

La parola algoritmo riecheggia dalla lontana Persia, infatti un matematico di nome Al-Khwarizmi ne parlò nella sua opera “Regole di ripristino e riduzione“.

Successivamente venne data una definizione nel XX° secolo da niente poco di meno che Alan Turing, matematico e informatico, il cui contributo fu essenziale nella seconda guerra mondiale quanto nell’informatica.

“una sequenza ordinata e finita di passi (operazioni o istruzioni) elementari che conduce a un ben determinato risultato in un tempo finito”.

Proprietà fondamentali di algoritmo

Vediamo ora quali sono le 5 proprietà che dobbiamo conoscere per individuare, comprendere e creare un algoritmo:

Con atomicità di un algoritmo, intendiamo che ogni passaggio non è scomponibile in altri sotto-passaggi, infatti ogni singolo passaggio individuato nell’algoritmo non può essere ulteriormente scomposto.

Questo si collega anche alla finitezza di un algoritmo: ogni algoritmo ha un numero finito di passaggi, di dati di ingresso e deve risolvere il problema in un tempo finito.

I passaggi devono essere interpretati in maniera chiara, univoca e diretta dall’esecutore.

Un esecutore può essere umano o una macchina, dopotutto anche noi quando riceviamo un’istruzione dobbiamo avere chiari i singoli passaggi.

Il risultato deve essere univoco.

Caso studio per capire cos’è un algoritmo

Dobbiamo allenare la nostra mente a risolvere i problemi, perché dopo che ne risolvi uno, la tua mente vuole risolvere il prossimo.

Quando risolviamo un problema, abbiamo un senso di benessere e felicità unico, che si manifesta grazie al rilascio di dopamina in tutto il corpo.

Per risolvere i problemi, bisogna avere un metodo, il quale ci porta a trovare un algoritmo.

Oggi realizzerò con te il mio viaggio dei sogni: desidero molto andare a Seattle, ma ci sono molti problemi nel mezzo.

algoritmo Seattle
Andiamo a Seattle con un algortimo.

Oltre ad esserci una pandemia globale, devo pensare anche ai costi che questo viaggio potrebbe richiedere, all’itinerario da seguire, ma procediamo con ordine.

Fase 1: scomporre il problema

Non ho soldi quindi non ho un lavoro o un sistema di entrate.


Il viaggio per Seattle ha diversi costi: il volo, il cibo, l’alloggio, luoghi di interesse e dei regali per gli amici.

Una volta arrivato a Seattle devo farmi una mappa dei luoghi da visitare, altrimenti vago alla cieca.

Bisogna anche trovare un periodo di tempo in cui andarci.

Fase 2: analisi

Per raggiungere l’obiettivo considero le variabili che ruotano intorno ad esso: le mie conoscenze possono diventare soldi, devo gestire ogni giorno il mio tempo, bisogna risparmiare una certa cifra e così via.

Nell’analisi si prendono in considerazione le variabili e si trova il modo più efficace per arrivare alla soluzione.

Per risolvere il problema devo trovare un lavoro in modo da arrivare alla quota necessaria per soddisfare le spese (funzione obiettivo). Dopo di che penso a crearmi un itinerario.

Fase 3: ottimizzo l’algoritmo

Quando ottimizzo un algoritmo, non faccio altro che trovare una soluzione più efficiente, introducendo delle variabili che potrebbero cambiare le carte in tavola.

Conclusioni

Un algoritmo ci porta da A fino a B nel minor tempo possibile. Il nostro obiettivo potrebbe essere conquistare Marte, passare una verifica o cucinare un piatto di spaghetti, ma sempre di algoritmi si parla.

Conoscevate già gli algoritmi?

Condividi su facebook
Condividi su twitter
Condividi su linkedin
Condividi su whatsapp
Condividi su telegram
Valerio Cattedra

Valerio Cattedra

Ciao! Il mio nome è Valerio e sono un inguaribile curioso. Nella vita mi sono sempre dedicato a conoscere, per questo la mia più grande passione è scoprire nuovi luoghi e nuove tecnologie. Il mio obiettivo? Far conoscere questo stile di vita proprio a te.

Iscriviti
Notificami
guest
0 Commenti
Inline Feedback
Vedi tutti i commenti