Go to content Go to navigation Go to search

Shannon, Bertalanffy e i sistemi codificati. · 2008-10-05 by mmzz

i primi tentativi di contatto avvennero attraverso apparecchi elettronici che trasmettevano nella massa della gelatina vivente gli impulsi emessi dagli interlocutori. L’oceano vi prese parte attiva, modificando gli apparecchi stessi – S.Lem Solaris

Su teoria della comunicazione, sistemi, adattamento, codice. Cerco di integrare il mio pensiero sul codice nelle teorie dei sistemi (Bertalanffy) e della comunicazione (Shannon).

Comunicazione: Shannon

L’articolo di Shannon A mathematical theory of communication (1948) pone le basi della teoria della comunicazione in termini sistemici e matematici. A p.15, al capiltolo “Representation of the encoding and decoding operations” scrive:

We have yet to represent mathematically the operations performed by the transmitter and receiver in encoding and decoding the information. Either of these will be called a discrete transducer. The input to the transducer is a sequence of input symbols and its output a sequence of output symbols. The transducer may have an internal memory so that its output depends not only on the present input symbol but also on the past history. We assume that the internal memory is finite, i.e., there exist a finite number m of possible states of the transducer and that its output is a function of the present state and the present input symbol. The next state will be a second function of these two quantities.

In formule, Shannon propone questa semplice traduzione:

y n = ƒ (x n , α n)

α n+1 = g ( x n , α n)

where

x n is the n th input symbol,

α n is the state of the transducer when the n th input symbol is introduced,

y n is the output symbol (or sequence of output symbols) produced when x n is introduced if the state is α n.

In una parola, l’output è determinato da uno stato, α , dall’input, e da una funzione ƒ .Lo stato α a sua volta dipende da una funzione g che influenza lo stato successivo di α in base all’input stesso. Cioè l’input determina sia l’output in baso allo stato corrente, sia lo stato futuro del sistema. Il sistema può essere più o meno complesso in base alla profondità della memoria, e potrà divenire anche ampiamente imprevedibile se le funzioni ƒ e g sono complesse. Il problema qui in esame non è tanto complessità e libertà di un sistema, ma la sua capacità di adattarsi all’ambiente (resilienza) ed evolvere.

Shannon precisa che se il sistema in esame è composto, occorrerà prendere in considerazione più parametri oltre ad α , ad esempio β per un sistema il cui input sia l’output del primo ( cioè y n ). l’aumento dei componenti di un sistema complesso comporta l’aumento del numero dei parametri.

I sistemi aperti: von Berthalanffy

Questa precisazione è utile per situare come avviene la comunicazione in un sistema complesso, quali quelli aperti, di cui si occupa Ludwig von Bertalanffy nel suo celebre testo del 1968 General Systems Theory. Alcune definizioni:

I sistemi aperti, nei quali ricadono i sistemi viventi, sono differenti da quelli “meccanici”. Infatti
Processes occurring in machine-like strucures follow a fixed pathway. Therefore the final state will be changed if the initial conditions or the course of the process is altered. In contrast, the same final state, the same “goal”, may be reached fronm different initial conditions and in different pathways in organismic processes. (p.132). Questa proprietà degli organismi di raggiungere comunque, indipendentemente dalle condizioni iniziali, determinati stati (“steady states”), ben distanti dall’equilibro termondinamico con l’ambiente, viene chiamata da LvB “equifinality”. Questo stato “of high statistical improbability of order and organization” viene raggiunto e mantenuto attivamente dal sistema aperto indipendentemente dalle condizioni iniziali.

I sistemi complessi codificati

Se i sistemi complessi sono composti da componenti semplici che comunicano tra loro, come emerge il comportamento “equifinale”? Come conciliare il determinismo di Shannon per cui il sistema dipende da due funzioni (“comportamento” che trasforma input in output, e “memoria” che trasforma lo stato passato in quello futuro) e un parametro di “stato” α con l’ampio grado di libertà richiesto da un sistema aperto per raggiungere l’equifinalità? Ed inoltre come spiegare l’origine del sistema, il suo cambiamento, la capacità di ripararsi e adattarsi dinamicamente all’ambiente (resilienza) senza perdere quello “steady state” che ne determina l’integrità?

Occorre forse introdurre (almeno temporaneamente) il concetto di sistema codificato come complesso di elementi ordinati, il cui ordine ed interazione è determinato da un insieme di istruzioni detto un codice . A differenza di una funzione semplice, il codice

  1. consente una serie di azioni alternative (ma questo può farlo anche una funzione complessa)
  2. può essere alterato da codice (non ho conoscenza in matematica di funzioni che cambiano se stesse).

Credo che le funzioni di Shannon possano essere emendate (provvisoriamente) in questo modo per esprimere quanto succede in un sistema codificato, a differenza di un sistema meccanico.

y n , ƒ n+1 = ƒ n (x n , α n)

α n+1 , g n+1 = g n ( x n , α n)

In altre parole il comportamento del sistema non è determinato da funzioni fisse che si applicano ad argomenti variabili, quali input e “stato”, bensì nello “stato” variabile del sistema vanno incluse le funzioni stesse. L’input e il tempo possono alterare, attraverso l’ingresso di informazioni o materia, non solo l’output, non solo lo stato, ma il modo stesso in cui l’input si trasforma in output ed il sistema memorizza il proprio stato. In parole povere, il sistema codificato è in grado di acquisire dal proprio ambiente anche, oltre ai dati, le informazioni od istruzioni che determinano il proprio comportamento. L’ingresso di nuovo codice in un sistema codificato non ha come unico esito la sostituzione di determinati comportamenti con altri, nuovi, ma l’emersione di comportamenti inattesi determinati dall’interazione (ibridazione, incrocio, competizione) tra codici diversi all’interno del sistema.

Una versione meno provvisoria della precedente potrebbe avvalersi della formulazione del lambda calculus (A.Church) , la cui notazione e’ adatta a maneggiare funzioni ricorsive ed e’ piu’ vicina al concetto di algoritmo e programma che a quella di una funzione statica.

Esempi

Sistemi complessi, aperti e codificati sono non solo i sistemi viventi indicati da LvB, ma i sistemi sociali, organismi complessi come organizzazioni, in cui i comportamenti degli individui sono in funzione del comportamento di altri individui o di istruzioni precise che devono essere interpretate. Religioni, sistemi di credenze politiche, sistemi di leggi e norme e tutte le complessità regolate esplicitamente sono soggette a fenomeni di scambio di codice che determina o influenza il comportamento: il codice viene tramesso per imitazione o esplicita trasmissione (ordine), e può essere accolto sostituendone altro o essere rifiutato (rafforzando comportamenti opposti o “vaccinando” il sistema contro codici analoghi) oppure emendato, interpretato autonomamente o addirittura sovvertito in base allo stato del sistema che lo riceve.
In futuro vedremo sempre più un crescente numero di sistemi artificiali i cui comportamenti sono regolati da istruzioni che possono essere trasmesse o autonomamente acquisite dall’ambiente: robot o sistemi informatici addestrati a compiere scelte autonome in base alle condizioni in cui si trovano o ad apprendere per imitazione.

Critica

Tutto è un calcolatore? Appare evidente quanto questa impostazione tradisca una visione del tipo “tutto è un calcolatore”. Analogamente a quanto già determinato da precedenti rivoluzioni (“tutto è un meccanismo”, “tutto è un sistema termodinamico probabilistico”, “tutto è soggetto a selezione e mutazione”,“tutto è un sistema cibernetico”), anche la rivoluzione informatica pesa con le sue metafore. Tuttavia credo che questa visione possa anziché sostituirsi, aggiungersi ad altri paradigmi nella comprensione della regolazione dei fenomeni complessi.

Parlare di codice che agisce sui dati non re-introduce il dualismo mente-corpo? Ho già cercato di dimostrare come questa distinzione tra “dato” ed “istruzione” (come altri dualismi, come mente-corpo, hardware-software, processore-processo e forse anche legge universale-materia) sia del tutto fittizia, in quanto manifesta e rende esplicito un “di più” che emerge da una unica azione, evidenziando due aspetti (agente-cosa agita) distinguibili ma indissolubili di una sola realtà. Questa distinzione è utile ma in determinate condizioni superabile, in particolar modo ragionando attorno ai sistemi viventi, basati su DNA, in cui il codice è sia istruzione che dato sul quale l’istruzione agisce. Inoltre si tratta di una possibile visione analitica tra molte altre, alla quale siamo forse abituati dalla aristotelica distinzione tra forma-sostanza.