Calcul lateral - Lateral computing

Calculul lateral este o abordare a gândirii laterale pentru rezolvarea problemelor de calcul . Gândirea laterală a fost popularizată de Edward de Bono . Această tehnică de gândire este aplicată pentru a genera idei creative și a rezolva probleme. În mod similar, prin aplicarea tehnicilor de calcul lateral unei probleme, poate deveni mult mai ușor să se ajungă la o soluție computațional ieftină, ușor de implementat, eficientă, inovatoare sau neconvențională.

Abordarea tradițională sau convențională pentru rezolvarea problemelor de calcul este fie să construim modele matematice, fie să avem o structură IF-THEN-ELSE . De exemplu, o căutare cu forță brută este utilizată în multe motoare de șah , dar această abordare este costisitoare din punct de vedere al calculului și uneori poate ajunge la soluții slabe. Pentru astfel de probleme, calculul lateral poate fi util pentru a forma o soluție mai bună.

O simplă problemă a backupului camionului poate fi utilizată pentru ilustrarea calculului lateral. Aceasta este una dintre sarcinile dificile pentru tehnicile de calcul tradiționale și a fost rezolvată eficient prin utilizarea logicii fuzzy (care este o tehnică de calcul lateral). Calculul lateral ajunge uneori la o soluție nouă pentru o anumită problemă de calcul, utilizând modelul modului în care ființele vii, cum ar fi modul în care oamenii, furnicile și albinele, rezolvă o problemă; modul în care cristalele pure se formează prin recoacere sau evoluția ființelor vii sau a mecanicii cuantice etc.

De la gândirea laterală la calculul lateral

Gândirea laterală este tehnica gândirii creative pentru rezolvarea problemelor. Creierul ca centru al gândirii are un sistem informațional auto-organizat. Tinde să creeze modele și procesul de gândire tradițional le folosește pentru a rezolva probleme. Tehnica gândirii laterale propune să evadeze din acest model pentru a ajunge la soluții mai bune prin idei noi. Utilizarea provocatoare a procesării informațiilor este principiul de bază al gândirii laterale,

Operatorul provocator (PO) este ceva ce caracterizează gândirea laterală. Funcția sa este de a genera idei noi prin provocare și oferind cale de evacuare de la ideile vechi. Se creează un aranjament provizoriu de informații.

Logica apei este în contrast cu logica tradițională sau rock . Logica apei are limite care depind de circumstanțe și condiții, în timp ce logica rocilor are limite grele. Logica apei, într-un fel, seamănă cu logica neclară .

Trecerea la calculul lateral

Calculul lateral face o utilizare provocatoare a procesării informațiilor, similar cu gândirea laterală. Acest lucru se explică prin utilizarea calculului evolutiv, care este o tehnică de calcul lateral foarte utilă. Evoluția are loc prin schimbare și selecție. În timp ce mutația aleatorie oferă schimbări, selecția se face prin supraviețuirea celui mai potrivit . Mutația aleatorie funcționează ca o prelucrare provocatoare a informațiilor și oferă o nouă cale pentru a genera soluții mai bune pentru problema calculelor. Termenul "Lateral Computing" a fost propus pentru prima dată de Prof CR SUTHIKSHN Kumar și Primul Congres Mondial de Lateral Computing WCLC 2004 a fost organizat cu participanți internaționali în decembrie 2004.

Calculul lateral ia analogiile din exemple din lumea reală, cum ar fi:

  • Cât de lentă răcire a stării gazoase fierbinți duce la cristale pure ( Recocire )
  • Cum rețelele neuronale din creier rezolvă probleme precum recunoașterea feței și a vorbirii
  • Cât de simple insecte precum furnicile și albinele rezolvă unele probleme sofisticate
  • Modul în care evoluția ființelor umane din formele de viață moleculară este mimată de calculul evolutiv
  • Cum se apără organismele vii de boli și își vindecă rănile
  • Cum este distribuită electricitatea prin rețele

Factori diferențiați ai „calculului lateral”:

  • Nu abordează direct problema prin mijloace matematice.
  • Folosește modele indirecte sau caută analogii pentru a rezolva problema.
  • Radical diferit de ceea ce este în vogă, cum ar fi utilizarea „fotonilor” pentru calcul în calcul optic. Acest lucru este rar deoarece majoritatea computerelor convenționale folosesc electroni pentru a transporta semnale.
  • Uneori tehnicile de calcul lateral sunt surprinzător de simple și oferă soluții de înaltă performanță la probleme foarte complexe.
  • Unele dintre tehnicile din calculul lateral utilizează „salturi inexplicabile”. Este posibil ca aceste sărituri să nu pară logice. Exemplul este utilizarea operatorului „Mutație” în algoritmi genetici.

Convenție - lateral

Este foarte greu să trasezi o graniță clară între calculul convențional și cel lateral. Într-o perioadă de timp, unele tehnici de calcul neconvenționale devin parte integrantă a computerului de masă. Deci, va exista întotdeauna o suprapunere între calculul convențional și cel lateral. Va fi o sarcină dificilă clasificarea unei tehnici de calcul ca tehnică de calcul convențională sau laterală, așa cum se arată în figură. Limitele sunt neclare și se poate aborda cu seturi neclare.

Definiție formală

Calculul lateral este un set fuzzy al tuturor tehnicilor de calcul care utilizează o abordare neconvențională de calcul. Prin urmare, calculul lateral include acele tehnici care utilizează calculul semi-convențional sau hibrid. Gradul de apartenență la tehnicile de calcul lateral este mai mare de 0 în setul fuzzy de tehnici de calcul neconvenționale.

Următoarele evidențiază diferențieri importanți pentru calculul lateral.

Calcul convențional
  • Problema și tehnica sunt corelate direct .
  • Tratează problema cu o analiză matematică riguroasă.
  • Creează modele matematice.
  • Tehnica de calcul poate fi analizată matematic.
Calcul lateral
  • Este posibil ca problema să nu aibă nicio legătură cu tehnica de calcul utilizată
  • Abordează problemele prin analogii, cum ar fi modelul de procesare a informațiilor umane, recoacerea etc.
  • Uneori tehnica de calcul nu poate fi analizată matematic.

Calcul lateral și calcul paralel

Calculul paralel se concentrează pe îmbunătățirea performanței computerelor / algoritmilor prin utilizarea mai multor elemente de calcul (cum ar fi elementele de procesare). Viteza de calcul este îmbunătățită prin utilizarea mai multor elemente de calcul. Calculul paralel este o extensie a calculului secvențial convențional . Cu toate acestea, în calculul lateral, problema este rezolvată folosind prelucrarea neconvențională a informațiilor, indiferent dacă se utilizează un calcul secvențial sau paralel.

O revizuire a tehnicilor de calcul lateral

Există mai multe tehnici de calcul care se potrivesc paradigmei de calcul lateral. Iată o scurtă descriere a unora dintre tehnicile de calcul lateral:

Inteligența roiului

Inteligența roiului (SI) este proprietatea unui sistem prin care comportamentele colective ale agenților (nesofisticați), care interacționează local cu mediul lor, fac să apară modele funcționale globale coerente. SI oferă o bază cu care este posibilă explorarea rezolvării colective (sau distribuite) a problemelor fără control centralizat sau furnizarea unui model global.

O tehnică inteligentă interesantă de roi este algoritmul Ant Colony :

  • Furnicile sunt nesofisticate din punct de vedere comportamental; colectiv îndeplinesc sarcini complexe. Furnicile au dezvoltat o comunicare sofisticată bazată pe semne.
  • Furnicile comunică folosind feromoni; sunt așezate trasee care pot fi urmate de alte furnici.
  • Problemă de rutare Furnicile aruncă diferiți feromoni utilizați pentru a calcula calea „cea mai scurtă” de la sursă la destinație (e).

Sisteme bazate pe agenți

Agenții sunt sisteme informatice încapsulate care sunt situate într-un anumit mediu și sunt capabile de acțiuni flexibile și autonome în acel mediu pentru a-și îndeplini obiectivele de proiectare. Agenții sunt considerați autonomi (independenți, necontrolabili), reactivi (răspunzând la evenimente), proactivi (inițierea acțiunilor din propria voință) și sociali (comunicativi). Agenții își variază abilitățile: pot fi statici sau mobili sau pot fi sau nu inteligenți. Fiecare agent poate avea propria sarcină și / sau rol. Agenții și sistemele multi-agenți sunt folosite ca metaforă pentru modelarea proceselor distribuite complexe. Astfel de agenți trebuie să interacționeze invariabil pentru a-și gestiona interdependențele . Aceste interacțiuni implică agenți care cooperează, negociază și se coordonează între ei.

Sistemele bazate pe agenți sunt programe de calculator care încearcă să simuleze diverse fenomene complexe prin intermediul „agenților” virtuali care reprezintă componentele unui sistem de afaceri. Comportamentele acestor agenți sunt programate cu reguli care descriu în mod realist modul în care se desfășoară afacerea. Deoarece agenții individuali foarte variați interacționează în model, simularea arată cum comportamentele lor colective guvernează performanța întregului sistem - de exemplu, apariția unui produs de succes sau un program optim. Aceste simulări sunt instrumente strategice puternice pentru analiza scenariului „ce-ar fi dacă”: pe măsură ce managerii schimbă caracteristicile agentului sau „regulile”, impactul schimbării poate fi ușor văzut în rezultatul modelului

Procesare in retea

Prin analogie , o rețea de calcul este o infrastructură hardware și software care oferă acces fiabil, consecvent, omniprezent și ieftin la capabilități de calcul high-end. Aplicațiile de calcul de rețea sunt în:

  • Proiectarea cipurilor, probleme criptografice , instrumente medicale și supercomputere .
  • Aplicațiile de supercomputere distribuite folosesc grile pentru a agrega resurse de calcul substanțiale pentru a aborda problemele care nu pot fi rezolvate pe un singur sistem.

Calcul autonom

Sistemul nervos autonom guvernează ritmul cardiac și temperatura corpului, eliberându-ne astfel creierul conștient de sarcina de a face față acestor și a multor alte funcții de nivel scăzut, dar vital. Esența calculului autonom este autogestionarea, a cărei intenție este de a elibera administratorii de sistem de detaliile funcționării și întreținerii sistemului.

Patru aspecte ale calculului autonom sunt:

  • Autoconfigurare
  • Auto-optimizare
  • Auto vindecare
  • Auto-protectie

Aceasta este o mare provocare promovată de IBM .

Calcul optic

Calculul optic este de a folosi mai degrabă fotoni decât electroni convenționali pentru calcul. Există destul de multe cazuri de computere optice și utilizarea lor cu succes. Porțile logice convenționale folosesc semiconductori , care folosesc electroni pentru transportul semnalelor. În cazul computerelor optice, fotonii dintr-un fascicul de lumină sunt folosiți pentru a face calcule.

Există numeroase avantaje ale utilizării dispozitivelor optice pentru calcul, cum ar fi imunitatea la interferențe electromagnetice , lățime de bandă mare etc.

Calculul ADN-ului

Calculul ADN utilizează șiruri de ADN pentru a codifica instanța problemei și pentru a le manipula folosind tehnici disponibile în mod obișnuit în orice laborator de biologie moleculară pentru a simula operațiuni care selectează soluția problemei, dacă aceasta există.

Deoarece molecula de ADN este, de asemenea, un cod, dar este alcătuită dintr-o secvență de patru baze care se împerechează într-un mod previzibil, mulți oameni de știință s-au gândit la posibilitatea creării unui computer molecular. Aceste computere se bazează pe reacțiile mult mai rapide ale legării nucleotidelor ADN cu complementele lor, o metodă de forță brută care deține un potențial enorm pentru crearea unei noi generații de computere care ar fi de 100 de miliarde de ori mai rapidă decât cel mai rapid computer din zilele noastre. Calculul ADN a fost anunțat ca „primul exemplu de nanotehnologie adevărată ” și chiar „începutul unei noi ere”, care creează o legătură fără precedent între informatică și știința vieții.

Exemple de aplicații ale calculului ADN sunt în soluție pentru problema căii hamiltoniene, care este una cunoscută NP completă. Numărul operațiilor de laborator necesare folosind ADN crește liniar cu numărul de vârfuri ale graficului. S-au raportat algoritmi moleculari care rezolvă problema criptografică într-un număr polinomial de pași. După cum se știe, luarea în considerare a numărului mare este o problemă relevantă în multe aplicații criptografice.

Calcul cuantic

Într-un computer cuantic , unitatea fundamentală de informație (numită bit cuantic sau qubit ), nu este binară, ci mai degrabă mai cuaternară . Această proprietate qubit apare ca o consecință directă a aderării sale la legile mecanicii cuantice, care diferă radical de legile fizicii clasice. Un qubit poate exista nu numai într-o stare corespunzătoare stării logice 0 sau 1 ca într-un bit clasic, ci și în stări corespunzătoare unui amestec sau suprapunere cuantică a acestor stări clasice. Cu alte cuvinte, un qubit poate exista ca un zero, unul sau simultan atât ca 0, cât și 1, cu un coeficient numeric care reprezintă probabilitatea pentru fiecare stare. Un computer cuantic manipulează qubiturile executând o serie de porți cuantice , fiecare transformare unitară acționând asupra unui singur qubit sau pereche de qubituri. Aplicând aceste porți succesiv, un computer cuantic poate efectua o transformare unitară complicată într-un set de qubiți într-o anumită stare inițială.

Calcul reconfigurabil

Matricele de poartă programabile pe teren (FPGA) fac posibilă construirea de computere cu adevărat reconfigurabile . Arhitectura computerului este transformată prin reconfigurarea rapidă a circuitelor FPGA. Potrivirea optimă între arhitectură și algoritm îmbunătățește performanța computerului reconfigurabil. Caracteristica cheie este performanța hardware și flexibilitatea software-ului.

Pentru mai multe aplicații, cum ar fi potrivirea amprentelor digitale, compararea secvenței ADN etc., sa demonstrat că computerele reconfigurabile îndeplinesc mai multe ordine de mărime mai bine decât computerele convenționale.

Recuocare simulată

Recoacere simulată Algoritmul este proiectat pe baza modului în cristalele pure formează dintr - o încălzită stare gazoasă în timp ce sistemul este răcit lent. Problema de calcul este reproiectată ca un exercițiu de recoacere simulat și se ajunge la soluții. Principiul de lucru al recoacerii simulate este împrumutat din metalurgie: o bucată de metal este încălzită (atomilor li se dă agitație termică), iar apoi metalul este lăsat să se răcească încet. Răcirea lentă și regulată a metalului permite atomilor să alunece progresiv pozițiile lor cele mai stabile („energie minimă”). (Răcirea rapidă i-ar fi „înghețat” în orice poziție s-ar fi întâmplat în acel moment.) Structura rezultată a metalului este mai puternică și mai stabilă. Simulând procesul de recoacere în interiorul unui program de calculator, este posibil să găsiți răspunsuri la probleme dificile și foarte complexe. În loc să minimizeze energia unui bloc de metal sau să-i maximizeze rezistența, programul minimizează sau maximizează un obiectiv relevant pentru problema în cauză.

Soft computing

Una dintre componentele principale ale "Lateral-computing" este soft computing, care abordează probleme cu modelul de procesare a informațiilor umane. Tehnica Soft Computing cuprinde logica Fuzzy, neuro-calculatoare, evolutive-computere, învățarea automată și computere probabilist-haotice.

Neuro-calcul

În loc să rezolve o problemă prin crearea unui model de ecuație neliniară, analogia rețelei neuronale biologice este utilizată pentru rezolvarea problemei. Rețeaua neuronală este antrenată ca un creier uman pentru a rezolva o anumită problemă. Această abordare a devenit extrem de reușită în rezolvarea unora dintre problemele de recunoaștere a modelelor .

Calcul evolutiv

Algoritmul genetic (GA) seamănă cu evoluția naturală pentru a oferi o optimizare universală. Algoritmii genetici încep cu o populație de cromozomi care reprezintă diferitele soluții. Soluțiile sunt evaluate utilizând o funcție de fitness și un proces de selecție determină ce soluții urmează să fie utilizate pentru procesul de competiție. Acești algoritmi au un mare succes în rezolvarea problemelor de căutare și optimizare. Noile soluții sunt create folosind principii evolutive precum mutația și încrucișarea.

Logică neclară

Logica fuzzy se bazează pe conceptele de seturi fuzzy propuse de Lotfi Zadeh . Gradul de concept de membru este esențial pentru seturile neclare. Seturile fuzzy diferă de seturile clare, deoarece permit unui element să aparțină unui set într-un anumit grad (grad de apartenență). Această abordare găsește aplicații bune pentru problemele de control. Logica Fuzzy a găsit aplicații enorme și a găsit deja o prezență mare pe piața electronică de larg consum, cum ar fi mașinile de spălat, microundele, telefoanele mobile, televizoarele, camerele video etc.

Calcul probabilistic / haotic

Motoare de calcul probabilistice, de exemplu utilizarea unui model grafic probabilistic, cum ar fi rețeaua bayesiană . Astfel de tehnici de calcul sunt denumite randomizare, producând algoritmi probabilistici. Atunci când sunt interpretate ca fenomen fizic prin termodinamica statistică clasică, astfel de tehnici conduc la economii de energie proporționale cu probabilitatea p cu care fiecare pas de calcul primitiv este garantat a fi corect (sau echivalent cu probabilitatea de eroare, (1 – p). Calculul haotic se bazează pe teoria haosului.

Fractale

Calculul fractal sunt obiecte care prezintă auto-similitudine la diferite scări. Generarea fractalelor implică algoritmi iterativi mici. Fractalii au dimensiuni mai mari decât dimensiunile lor topologice. Lungimea fractalului este infinită și dimensiunea acesteia nu poate fi măsurată. Este descris de un algoritm iterativ spre deosebire de o formă euclidiană care este dată de o formulă simplă. Există mai multe tipuri de fractali, iar seturile Mandelbrot sunt foarte populare.

Fractalele au găsit aplicații în procesarea imaginilor, generarea muzicii de compresie a imaginilor, jocuri pe computer etc. Setul Mandelbrot este un fractal numit după creatorul său. Spre deosebire de celelalte fractale, chiar dacă setul Mandelbrot este asemănător la scări mărite, detaliile la scară mică nu sunt identice cu ansamblul. Adică, setul Mandelbrot este infinit de complex. Dar procesul de generare a acestuia se bazează pe o ecuație extrem de simplă. Setul Mandelbrot M este o colecție de numere complexe. Numerele Z care aparțin lui M sunt calculate prin testarea iterativă a ecuației Mandelbrot. C este o constantă. În cazul în care converge ecuatia aleasa Z , atunci Z aparține M . Ecuația Mandelbrot:

Algoritm randomizat

Un algoritm aleatorizat face alegeri arbitrare în timpul executării sale. Aceasta permite economisirea timpului de execuție la începutul unui program. Dezavantajul acestei metode este posibilitatea ca o soluție incorectă să apară. Un algoritm randomizat bine conceput va avea o probabilitate foarte mare de a returna un răspuns corect. Cele două categorii de algoritmi randomizați sunt:

Luați în considerare un algoritm pentru a găsi al k- lea element al unui tablou. O abordare deterministă ar fi alegerea unui element pivot lângă mediana listei și partiționarea listei în jurul acelui element. Abordarea randomizată a acestei probleme ar fi alegerea unui pivot la întâmplare, economisind astfel timp la începutul procesului. La fel ca algoritmii de aproximare, aceștia pot fi folosiți pentru a rezolva mai repede probleme dificile NP-complete. Cu toate acestea, un avantaj față de algoritmii de aproximare este că un algoritm randomizat va da în cele din urmă un răspuns exact dacă este executat de suficiente ori

Învățare automată

Oamenii / animalele învață noi abilități, limbi / concepte. În mod similar, algoritmii de învățare automată oferă capacitatea de a generaliza din datele de instruire. Există două clase de învățare automată (ML):

  • ML supravegheat
  • ML nesupravegheat

Una dintre cele mai cunoscute tehnici de învățare automată este Algoritmul de propagare a spatelui. Aceasta imită modul în care oamenii învață din exemple. Modelele de instruire sunt prezentate în mod repetat rețelei. Eroarea este propagată înapoi și greutățile rețelei sunt ajustate folosind coborârea în gradient. Rețeaua converge prin câteva sute de calcule iterative.

Suporta mașini vectoriale

Aceasta este o altă clasă de tehnici de învățare automată de mare succes aplicate cu succes sarcinilor precum clasificarea textului, recunoașterea difuzoarelor , recunoașterea imaginii etc.

Exemple de aplicații

Există mai multe aplicații de succes ale tehnicilor de calcul lateral. Iată un set mic de aplicații care ilustrează calculul lateral:

  • Sortarea cu bule : Aici problema de calcul a sortării este abordată cu o analogie a bulelor care se ridică în apă. Acest lucru este tratând numerele ca bule și plutind în poziția lor naturală.
  • Problemă de rezervă a camionului: aceasta este o problemă interesantă a inversării unui camion și parcarea acestuia într-o anumită locație. Tehnicile de calcul tradiționale au găsit dificilă rezolvarea acestei probleme. Acest lucru a fost rezolvat cu succes de sistemul Fuzzy.
  • Echilibrarea unui pendul inversat: Această problemă implică echilibrarea și pendulul inversat. Această problemă a fost rezolvată eficient de rețelele neuronale și de sistemele fuzzy.
  • Controlul inteligent al volumului pentru telefoanele mobile: Controlul volumului în telefoanele mobile depinde de nivelurile de zgomot de fond, clasele de zgomot, profilul auditiv al utilizatorului și de alți parametri. Măsurarea nivelului de zgomot și a nivelului de sonoritate implică măsuri imprecise și subiective. Autorii au demonstrat utilizarea cu succes a sistemului de logică fuzzy pentru controlul volumului în telefoanele mobile.
  • Optimizare utilizând algoritmi genetici și recușire simulată : Probleme precum problema vânzătorului ambulant s-au dovedit a fi probleme complete NP . Astfel de probleme sunt rezolvate folosind algoritmi care beneficiază de euristică. Unele dintre aplicații sunt în rutare VLSI, partiționare etc. Algoritmii genetici și recoacerea simulată au reușit să rezolve astfel de probleme de optimizare.
  • Programare Unprogrammable (PTU) care implică crearea automată de programe de calculator pentru dispozitive de calcul neconvenționale, cum ar fi automatele celulare , sistemele multi-agent , sistemele paralele , matricele de poartă programabile în câmp, matricile analogice programabile în câmp, coloniile de furnici, inteligența roiurilor , sistemele distribuite , și altele asemenea.

rezumat

Mai sus este o revizuire a tehnicilor de calcul lateral. Calculul lateral se bazează pe abordarea gândirii laterale și aplică tehnici neconvenționale pentru rezolvarea problemelor de calcul. În timp ce majoritatea problemelor sunt rezolvate în tehnicile convenționale, există probleme care necesită calcule laterale. Calculul lateral oferă avantajul eficienței de calcul, costul redus de implementare, soluții mai bune în comparație cu calculul convențional pentru mai multe probleme. Calculul lateral abordează cu succes o clasă de probleme prin exploatarea toleranței la imprecizie, incertitudine și adevăr parțial pentru a atinge tractabilitatea, robustețea și costul scăzut al soluției. Tehnicile de calcul lateral care utilizează modele de procesare a informațiilor umane au fost clasificate în literatura de specialitate „Soft Computing”.

Calculul lateral este valoros în timp ce rezolvă numeroase probleme de calcul ale căror modele matematice nu sunt disponibile. Acestea oferă o modalitate de a dezvolta soluții inovatoare, rezultând în sisteme inteligente cu IQ foarte înaltă (VHMIQ). Acest articol a urmărit tranziția de la gândirea laterală la calculul lateral. Apoi au fost descrise mai multe tehnici de calcul lateral, urmate de aplicațiile lor. Calculul lateral este destinat construirii de inteligență artificială de nouă generație bazată pe procesare neconvențională.

Vezi si

Referințe

Surse

  • de Bono, E. (2003). „Edward de Bono” . Arhivat din original la 01.02 2001.
  • Proceedings of IEEE (2001): Ediție specială privind inovațiile industriale folosind Soft Computing , septembrie.
  • T. Ross (2004): Fuzzy Logic With Engineering Applications , McGraw-Hill Inc Publishers.
  • B. Kosko (1994); Fuzzy Thinking, Flamingo Publishers.
  • E. Aarts și J. Krost (1997); Mașini de recușire și Boltzmann simulate, editori John Wiley și Sons.
  • KV Palem (2003); Calculul conștient de energie prin comutare probabilistică: un studiu al limitelor , Raport tehnic GIT-CC-03-16 mai 2003.
  • M. Sima, S. Vassiliadis, S. Cotofona, JTJ Van Eijndoven și KA Vissers (2000); O taxonomie a mașinilor de calcul personalizate, în Proceedings of the Workshop, octombrie.
  • J. Gleick (1998); Choas: Making a New Science, Vintage Publishers.
  • B. Mandelbrot (1997); The Fractal Geometry of Nature, Freeman Publishers, New York.
  • DR Hofstadter (1999); Godel, Escher, Bach: An Eternal Golden Braid , Harper Collins Publishers.
  • RA Aliev și RR Aliev (2001); Soft Computing și aplicațiile sale , edituri științifice mondiale.
  • Jyh-Shing Roger Jang, Chuen-Tsai Sun și Eiji Mizutani (1997); Neuro-Fuzzy și Soft Computing: O abordare computațională a învățării și a inteligenței mașinilor, Editori Prentice Hall.
  • John R. Koza, Martin A. Keane, Matthew J. Streeter, William Mydlowec, Jessen Yu și Guido Lanza (2003); Programare genetică IV: Inteligența rutină a mașinilor umane-competitive, Kluwer Academic.
  • James Allen (1995); Înțelegerea limbajului natural, ediția a II-a, Pearson Education Publishers.
  • R. Herken (1995); Mașină universală Turing, ediția a doua Springer-Verlag.
  • Harry R. Lewis, Christos H. Papadimtrou (1997); Elements of Theory of Computation, ediția a II-a, Prentice Hall Publishers.
  • M. Garey și D. Johnson (1979); Computers and Intractability: A theory of NP Completeness, WH Freeman and Company Publishers.
  • M. Sipser (2001); Introducere în teoria calculelor, Thomson / Brooks / Cole Publishers.
  • K. Compton și S. Hauck (2002); Reconfigurable Computing: Un sondaj de sisteme și software, ACM Computing Surveys, Vo. 34, nr. 2, iunie 2002, pp. 171–210.
  • DW Patterson (1990); Introducere în Inteligența Artificială și Sisteme Expert, Editori Prentice Hall Inc.
  • E. Charniak și D. Mcdermott (1999); Introducere în inteligența artificială, Addison Wesley.
  • Hameroff, SR (1997). Calcul final . Elsevier Science Publishers. ISBN 978-0-444-70283-8.
  • RL Epstein și WA Carnielli (1989); Calculabilitate, funcții calculabile, logică și fundamentele matematicii, Wadsworth & Brooks / Cole Advanced Books and Software.
  • T. Joachims (2002); Învățarea clasificării textului folosind mașinile vectoriale de asistență , editorii universitari Kluwer.
  • T. Mitchell (1997); Machine Learning, McGraw Hill Publishers.
  • R. Motwani și P. Raghavan (1995); Algoritmi aleatori , Cambridge International Series in Parallel Computation, Cambridge University Press.
  • Sun Microsystems (2003); Introducere în calculul de transfer, raport tehnic.

Conferințe

  • Primul Congres Mondial de Calcul Lateral , IISc, Bangalore India, decembrie 2004 WCLC 2004
  • Al doilea Congres Mondial de Calcul Lateral , WCLC 2005, PESIT, Bangalore, India