Education, study and knowledge

Macchina di Turing: cos'è e come funziona

Non possiamo concepire il momento storico in cui viviamo senza prestare attenzione all'importanza dell'informatica. In pochi anni è passato dall'essere utilizzato in aree specifiche ad essere un'entità onnipresente, e non solo nel computer, ma anche telefoni cellulari e quasi tutte le tecnologie di uso comune (come le cosiddette "Indossabili").

In effetti, il computer o il cellulare che usi per leggere questo articolo ha una tecnologia tale da rendere qualche decennio avrebbe avuto bisogno di uno spazio enorme per funzionare (o sarebbe stato totalmente non praticabile). Ed è che oggi ci stiamo muovendo verso una straordinaria miniaturizzazione dei componenti dei computer, che ne espanderà l'uso e ne faciliterà l'espansione a tutti gli ambiti della vita.

Il progresso a cui ci sottopone la tecnologia è inarrestabile, al punto che senza di essa non saremmo più in grado di vivere in modo ottimale. La nostra specie dipende dall'informatica, perché la società di oggi è di una tale complessità che funziona I nudi fattori cognitivi non consentono più di gestirlo con successo, richiedendo un aiuto esterno per compensare la nostra carenze.

instagram story viewer

In questo testo vedremo qual è il concetto della macchina di Turing?, creato a metà del 30 ° secolo. Il suo contributo all'informatica come è conosciuta oggi è evidente, considerandola il modello su cui si fondano la logica e l'architettura dei computer attuali. Eccola: la madre di una tecnologia che ha cambiato non solo il mondo, ma anche l'orizzonte dell'umanità.

  • Articolo correlato: "La teoria funzionalista di John Dewey"

Cos'è la macchina di Turing?

La macchina di Turing è un dispositivo creato nel 1936, che rappresenta un modello idealizzato di calcolo in grado di memorizzare/elaborare informazioni virtualmente infinite. Il sistema è un'astrazione matematica che si costruisce in modo straordinariamente semplice, ma che facilita il verifica empirista di un'ampia gamma di domande sulle teorie della computabilità e/o della complessità. La sua ideazione ha segnato una grande pietra miliare nella storia dell'informatica, al punto da essere considerata la origine dei computer odierni (e delle tecnologie correlate, come tablet o telefoni) mobile).

L'architetto di questo era Alan M. Turing, logico e matematico inglese che ha tentato per tutta la vita la concezione di un modello teorico con cui rispondere alle incognite della sua disciplina, automaticamente e accessibile a tutti.

Questo genio britannico, la cui importanza storica non può essere messa in discussione, ha anche contribuito (insieme a diversi scienziati polacchi) a svelare i codici crittografie che i militari nazisti usavano per comunicare segretamente tra loro durante la triste seconda guerra mondiale (attraverso quella che divenne nota come macchina dell'enigma). Per questo ideò un dispositivo di interruzione elettromagnetica (bombe), il cui uso accorciò la durata del conflitto e salvò innumerevoli vite umane, permettendo ai piani del regime di disfarsi durante il tempo in cui ostilità.

La macchina di Turing è il precursore storico dei moderni "computer a programma memorizzato", che consentono sia il salvataggio dei dati sia gli algoritmi su cui sono costruiti. Il suo vantaggio, e uno dei fattori per cui genera fascino tra i teorici dei computer, è la sua semplicità e le sue enormi possibilità di configurazione tecnica; ed è che consente la sperimentazione attraverso il modo in cui i suoi elementi fisici sono disposti e la "domanda" è posta con il che il suo utilizzo sia programmato (mediante algoritmi, che si traducono in una "successione" di codici che si ispirano al linguaggio logico). Questa capacità versatile è dovuta alla natura stessa dei dati con cui opera, soggetti ad un enorme livello di astrazione.

In questo modo, la macchina di Turing Può essere programmato per eseguire istruzioni specifiche che rispondono a domande più o meno complesse.. Tutto ciò implica che si debba conoscere il suo particolare linguaggio, per adattare ad esso l'algoritmo per il suo funzionamento, consapevole che non esiste un codice universale per chiarire la totalità delle incognite matematiche che sonnecchiano nella stessa natura (come indica la legge di Church-Turing). Il sistema, quindi, necessita di una mente umana dietro di sé, che si ponga la domanda da formulare e sappia “indirizzare” il dispositivo per risolverla.

La materia prima della macchina di Turing sono i numeri calcolabili, cioè quelli che possono essere calcolati oggettivamente mediante una formula matematica, ed entro la soglia di un tempo ragionevole. In questo contesto è fondamentale che si adatti a due specifici "problemi": quello della decisione (ogni risposta è preceduta da una serie di elementi di calcolo precedenti a cui è possibile rispondere dicotomicamente come sì/no) e lo stop (riconoscere se le risposte finali sono realmente possibili, o se il sistema sarà "condannato" ad evadere l'ordine in un ciclo infinito/irrisolvibile). Cioè, che esiste un algoritmo specifico per ciò che si intende conoscere e che la sua tecnologia può rispondervi con la precisione necessaria per "fermarsi" e offrire una soluzione.

Finora sono state discusse in dettaglio le logiche teoriche di una macchina di Turing. Le righe seguenti approfondiranno il nocciolo delle sue peculiarità fisiche e/o funzionali, con le quali l'algoritmo o standard di operazione che l'utente ha predisposto (e che può andare da semplici equazioni al cuore stesso della legge di astrazione matematica).

  • Potresti essere interessato: "L'esperimento della stanza cinese: computer con una mente?"

Descrizione della macchina di Turing

Insieme al fondamento logico/matematico che è stato descritto, la macchina di Turing richiede una serie di elementi fisici, che hanno la funzione di eseguire i comandi immessi con anteriorità. La loro disposizione può essere diversa, poiché ci sarebbero modelli quasi infiniti di questo sistema, ma sono necessariamente necessari: un nastro di carta o un materiale allo stesso modo, una testa mobile la cui estremità è in grado di tracciare tracce (simboli o numeri) e un processore centrale in cui codificare gli algoritmi necessari o che facilitano la analisi.

Il nastro è l'elemento più essenziale di tutti. Non è altro che una striscia longitudinale, che si divide in una successione di quadrati di uguale dimensione (o quadrati), e la cui lunghezza dipenderà in gran parte dello "sforzo" che deve essere svolto per risolvere il quesito posto dall'utente (che può essere breve o lungo stimato pertinente). Le caselle sono riservate alla testa per disegnare simboli diversi (come 0-1 nel codice binario) in ognuna, e costituiscono il prodotto di calcolo che dovrà essere verificato dopo il suo arresto. In termini informatici, questi nastri potrebbero essere la memoria di un computer moderno. Le prime celle di solito hanno un contenuto già stabilito (input), lasciando il resto vuoto e pronto per essere utilizzato dopo il processo di calcolo.

Allo stesso modo, la macchina di Turing Consiste in una testa, un'appendice meccanica (mobile) che si sposta a sinistra o a destra seguendo l'ordine che il sistema ha per essa. Presenta alla sua estremità un allungamento capace di incidere una traccia sul nastro, dando forma ai corrispondenti numeri o cifre secondo il codice che ne determina il movimento. Il modello originale aveva una testa tecnologica rudimentale, ma i progressi nella robotica hanno permesso l'emergere di nuovi design più avanzati e precisi. La testa "legge" il contenuto delle celle e sposta una singola casella su entrambi i lati (a seconda del suo stato specifico) per continuare l'esecuzione dell'istruzione.

Terzo, c'è un processore centrale allo scopo di memorizzare codice e algoritmi contenenti istruzioni per l'attività dell'apparato, espressa in termini matematici e logici. Questo linguaggio ha una sfumatura universale, sebbene permetta un certo grado di manovra per introdurre espressioni operative formulate dall'utente (a condizione che il significato sia stato reso operativo). In questo modo, la sua testa faciliterebbe l'esecuzione delle istruzioni memorizzate nel processore, che equivarrebbero a quelli che oggi si chiamano programmi o applicazioni (app). Questo sistema consentirebbe di riprodurre ogni possibile calcolo e si alzerebbe come il predecessore di uno qualsiasi degli attuali computer.

  • Potresti essere interessato: "Teoria computazionale della mente: in cosa consiste?"

Funzionamento di questo dispositivo

Una macchina di Turing è progettata per incidere un campione specifico di simboli o numeri, il cui universo possibile è spesso chiamato "alfabeto". Quando funziona con codice binario, il suo alfabeto totale è due (0 o 1), ma può essere largo quanto è ritenuto appropriato per la funzione da eseguire. La testina potrà riprodurre solo nelle celle del nastro quanto precedentemente indicato in tale sistema, quindi un calcolo (numero "pi", per esempio) richiederà l'intero spettro di numeri (da 0 a 9).

Oltre a ciò, ciò che è noto in pratica come stati (Q), anch'essi programmati dall'utente durante la descrizione del codice (e sono etichettati come q1, q2, q3, q4… qn). L'intervallo totale dipende da ipotesi matematiche astratte e rivede le sfumature condizionali della formula logica del codice, in modo che la testa si muove nella direzione corrispondente e compie l'azione pertinente ("se sei in posizione q2, scrivi" 0 "e non muoverti", per esempio.).

Infine, ci sarebbe una funzione di "transizione" (delta), in cui viene riassunta la sequenza totale (passo per passo) delle lavorazioni. matematico, e che esprime l'istruzione completa: lettura della cella, scrittura di nuovi simboli, cambiamenti di stato (o meno) e movimento del testa; in un ciclo ricorrente che si interrompe quando si trova la risposta alla domanda iniziale, o anche nel momento in cui che l'utente lo abbia previsto all'interno del proprio codice (spesso con un'esclamazione, che si legge come "stop"). Non appena la macchina si ferma, il nastro viene recuperato e la risposta fornita viene analizzata in dettaglio.

Come si può vedere, c'è una chiara somiglianza tra la macchina di Turing e i computer che usiamo oggi. Il suo contributo è stato fondamentale per avanzare in modo esponenziale in tutta la successiva progettazione di computer, fino al punto che il suo spirito risiede nel cuore stesso di una tecnologia che ci permette di restare interconnesso.

Riferimenti bibliografici:

  • Khan, S. e Khiyal, M. (2006). Modello di Turing per il calcolo distribuito. Giornale di tecnologia dell'informazione. 5, 305-313.
  • Qu, P., Yan, J., Zhang, Y. e Gao, G. (2017). Parallel Turing Machine, una proposta. Giornale di informatica e tecnologia, 32, 269-285.

Ecologia culturale: cos'è, cosa studia e metodi di ricerca

L'ecologia culturale è una corrente che studia le relazioni tra un gruppo umano e il suo ambiente...

Leggi di più

Le 35 migliori poesie del romanticismo (di grandi autori)

Le 35 migliori poesie del romanticismo (di grandi autori)

La poesia è una delle arti più conosciute fin dai tempi antichi.. Questo genere letterario è ed è...

Leggi di più

14 libri per migliorare le tue abilità sociali

14 libri per migliorare le tue abilità sociali

Gli esseri umani sono esseri sociali e infatti le relazioni interpersonali sono un fattore import...

Leggi di più