C'è una semplice procedura che cattura tutta l'intuizione, compresi gli elementi psicologici e geometrici. Si basa sull'utilizzo della prossimità spaziale , che è la base della nostra percezione e fornisce un modo intrinseco per catturare ciò che viene misurato solo imperfettamente dalle simmetrie.
Per fare ciò, dobbiamo misurare la "complessità" di questi array a varie scale locali. Sebbene abbiamo molta flessibilità nello scegliere quelle scale e nel senso in cui misuriamo la "prossimità", è abbastanza semplice ed efficace abbastanza da usare piccoli quartieri quadrati e guardare le medie (o, equivalentemente, somme) al loro interno. A tal fine, una sequenza di matrici può essere derivata da qualsiasi matrice by formando somme di vicinato in movimento usando per quartieri, quindi per , ecc., Fino a per (anche se a quel punto di solito ci sono troppo pochi valori per fornire qualcosa di affidabile).mnk=2233min(n,m)min(n,m)
Per vedere come funziona questo, cerchiamo di fare i calcoli per gli array in questione, che chiamerò attraverso , da cima a fondo. Ecco i grafici delle somme mobili per ( è l'array originale, ovviamente) applicato a .a1 k = 1 , 2 , 3 , 4 k = 1 a 1a5k=1,2,3,4k=1a1
In senso orario da in alto a sinistra, uguale a , , e . Le matrici sono per , quindi per , per e per , rispettivamente. Sembrano tutti "casuali". Misuriamo questa casualità con la loro entropia di base 2. Per , la sequenza di queste entropie è . Chiamiamo questo "profilo" di .1 2 4 3 5 5 4 4 2 2k124355442233a1(0.97,0.99,0.92,1.5)a1
Ecco, al contrario, le somme mobili di :a4
Per c'è poca variazione, da cui bassa entropia. Il profilo è . I suoi valori sono costantemente inferiori ai valori di , a conferma del senso intuitivo che esiste un forte "modello" presente in .k=2,3,4(1.00,0,0.99,0)a1a4
Abbiamo bisogno di un quadro di riferimento per l'interpretazione di questi profili. Un array perfettamente casuale di valori binari avrà circa la metà dei suoi valori pari a e l'altra metà uguale a , per un'entropia di . Le somme mobili all'interno dei quartieri per tenderanno ad avere distribuzioni binomiali, dando loro prevedibili entropie (almeno per array di grandi dimensioni) che possono essere approssimate di :011kk1+log2(k)
Questi risultati sono confermati dalla simulazione con matrici fino a . Tuttavia, si rompono per piccoli array (come gli array per qui) a causa della correlazione tra le finestre vicine (una volta che la dimensione della finestra è circa la metà delle dimensioni dell'array) e a causa della piccola quantità di dati. Ecco un profilo di riferimento di array casuali per generati dalla simulazione insieme a grafici di alcuni profili effettivi:m=n=1005555
In questo grafico il profilo di riferimento è blu fisso. I profili dell'array corrispondono a : rosso, : oro, : verde, : azzurro. (Includere oscurerebbe l'immagine perché è vicino al profilo di .) Complessivamente i profili corrispondono all'ordinamento nella domanda: si abbassano alla maggior parte dei valori di quando l'apparente ordinamento aumenta. L'eccezione è : fino alla fine, per , le sue somme mobili tendono ad avere tra le entropie più basse. Ciò rivela una regolarità sorprendente: ogni quartiere per ina1a2a3a4a5a4ka1k=422a1 ha esattamente o quadrati neri, mai più o meno. È molto meno "casuale" di quanto si possa pensare. (Ciò è in parte dovuto alla perdita di informazioni che accompagna la somma dei valori in ciascun quartiere, una procedura che condensa possibili configurazioni di quartiere in solo diverse possibili somme. Se volessimo rendere conto in modo specifico per il raggruppamento e l'orientamento all'interno di ciascun vicinato, quindi invece di utilizzare somme in movimento utilizzeremmo concatenazioni in movimento. Cioè, ogni per vicinato ha122k2k2+1kk2k2possibili diverse configurazioni; distinguendoli tutti, possiamo ottenere una misura più fine di entropia. Sospetto che una tale misura eleverebbe il profilo di rispetto alle altre immagini.)a1
Questa tecnica di creazione di un profilo di entropie su un intervallo controllato di scale, sommando (o concatenando o combinando altrimenti) valori all'interno di quartieri in movimento, è stata utilizzata nell'analisi delle immagini. È una generalizzazione bidimensionale dell'idea ben nota di analizzare il testo prima come una serie di lettere, quindi come una serie di digrafi (sequenze di due lettere), quindi come trigrafi, ecc. Ha anche alcune evidenti relazioni con il frattale analisi (che esplora le proprietà dell'immagine su scale sempre più fini). Se ci prendiamo cura di usare una somma che sposta i blocchi o concatena i blocchi (quindi non ci sono sovrapposizioni tra le finestre), si possono derivare semplici relazioni matematiche tra le entropie successive; però,
Sono possibili varie estensioni. Ad esempio, per un profilo invariante a rotazione, utilizzare i quartieri circolari anziché quelli quadrati. Tutto si generalizza oltre gli array binari, ovviamente. Con matrici sufficientemente grandi si possono persino calcolare profili di entropia variabili localmente per rilevare la non stazionarietà.
Se si desidera un singolo numero, anziché un intero profilo, scegliere la scala a cui interessa la casualità spaziale (o la sua mancanza). In questi esempi, quella scala corrisponderebbe meglio a un vicinato in movimento per o per , perché per il loro modello si basano tutti su raggruppamenti che si estendono da tre a cinque celle (e un vicinato per una media di tutte le variazioni nel array e quindi è inutile). In quest'ultima scala, le entropie da a sono , , , e334455a1a51.500.81000 ; l'entropia attesa su questa scala (per un array uniformemente casuale) è . Ciò giustifica la sensazione che "dovrebbe avere un'entropia piuttosto elevata". Per distinguere , e , che sono legati con entropia su questa scala, guarda la successiva risoluzione più fine ( per quartieri): le loro entropie sono rispettivamente , , (mentre una griglia casuale dovrebbe ha un valore di ). Con queste misure, la domanda originale pone le matrici esattamente nell'ordine giusto.1.34a1a3a4a50331.390.990.921.77