Lateral computing - Lateral computing
Lateral computing er en lateral tankegang til løsning af computerproblemer . Sidetænkning er blevet gjort populær af Edward de Bono . Denne tænkningsteknik anvendes til at generere kreative ideer og løse problemer. På samme måde kan det ved at anvende lateral computing teknikker til et problem blive meget lettere at nå frem til en beregningsmæssigt billig, let at implementere, effektiv, innovativ eller ukonventionel løsning.
Den traditionelle eller konventionelle tilgang til løsning af computerproblemer er enten at bygge matematiske modeller eller have en IF -THEN -ELSE -struktur. For eksempel bruges en brute-force-søgning i mange skakmotorer , men denne tilgang er beregningsmæssigt dyr og kan nogle gange komme til dårlige løsninger. Det er for problemer som dette, at lateral computing kan være nyttig til at danne en bedre løsning.
Et simpelt problem med lastbil backup kan bruges til at illustrere lateral computing. Dette er en af de vanskelige opgaver for traditionelle computerteknikker og er effektivt løst ved brug af fuzzy logik (som er en lateral computingteknik). Lateral computing når nogle gange frem til en ny løsning til et bestemt computerproblem ved at bruge modellen for, hvordan levende væsener, såsom hvordan mennesker, myrer og honningbier, løser et problem; hvordan rene krystaller dannes ved glødning eller udvikling af levende væsener eller kvantemekanik osv.
Fra lateral tænkning til lateral computing
Sidetænkning er teknik til kreativ tænkning til løsning af problemer. Hjernen som centrum for tænkning har et selvorganiserende informationssystem. Det har en tendens til at skabe mønstre og traditionel tankeproces bruger dem til at løse problemer. Den laterale tænkningsteknik foreslår at flygte fra denne mønster for at nå frem til bedre løsninger gennem nye ideer. Provokativ brug af informationsbehandling er det grundlæggende underliggende princip for lateral tænkning,
Den provokerende operatør (PO) er noget, der kendetegner lateral tænkning. Dens funktion er at generere nye ideer ved provokation og give flugtvej fra gamle ideer. Det skaber et foreløbigt arrangement af oplysninger.
Vandlogik står i kontrast til traditionel eller stenlogik . Vandlogik har grænser, der afhænger af omstændigheder og betingelser, mens stenlogik har hårde grænser. Vandlogik ligner på en eller anden måde fuzzy logik .
Overgang til lateral computing
Lateral computing gør en provokerende brug af informationsbehandling, der ligner lateral tænkning. Dette forklares med brugen af evolutionær computing, som er en meget nyttig lateral computing teknik. Evolutionen foregår ved forandring og selektion. Selvom tilfældig mutation giver forandring, er udvælgelsen gennem overlevelse af de stærkeste . Den tilfældige mutation fungerer som en provokerende informationsbehandling og giver en ny vej til at skabe bedre løsninger på computerproblemet. Udtrykket "Lateral Computing" blev først foreslået af prof CR SUTHIKSHN Kumar og First World Congress on Lateral Computing WCLC 2004 blev organiseret med internationale deltagere i løbet af december 2004.
Lateral computing tager analogierne fra virkelige eksempler som:
- Hvor langsom afkøling af den varme gasformede tilstand resulterer i rene krystaller ( annealing )
- Hvordan de neurale netværk i hjernen løser sådanne problemer som ansigts- og talegenkendelse
- Hvordan simple insekter som myrer og honningbier løser nogle sofistikerede problemer
- Hvordan evolution af mennesker fra molekylære livsformer efterlignes af evolutionær computing
- Hvordan levende organismer forsvarer sig mod sygdomme og heler deres sår
- Hvordan elektricitet fordeles af net
Differentierende faktorer ved "lateral computing":
- Nærmer sig ikke problemet direkte med matematiske midler.
- Bruger indirekte modeller eller leder efter analogier for at løse problemet.
- Radikalt anderledes end hvad der er på mode, såsom at bruge "fotoner" til computing i optisk computing. Dette er sjældent, da de fleste konventionelle computere bruger elektroner til at transportere signaler.
- Nogle gange er Lateral Computing -teknikkerne overraskende enkle og leverer højtydende løsninger på meget komplekse problemer.
- Nogle af teknikkerne i lateral computing bruger "uforklarlige spring". Disse spring ser måske ikke logiske ud. Eksemplet er brugen af "Mutation" -operatør i genetiske algoritmer.
Konvention - lateralt
Det er meget svært at tegne en klar grænse mellem konventionel og lateral computing. Over en periode bliver nogle ukonventionelle computerteknikker en integreret del af mainstream computing. Så der vil altid være et overlap mellem konventionel og lateral computing. Det vil være en hård opgave at klassificere en computingteknik som en konventionel eller lateral computerteknik som vist på figuren. Grænserne er uklare, og man kan nærme sig med uklare sæt.
Formel definition
Lateral computing er et uklart sæt af alle computerteknikker, der anvender ukonventionel computertilgang. Derfor omfatter lateral computing de teknikker, der anvender semi-konventionel eller hybrid computing. Graden af medlemskab for laterale computingteknikker er større end 0 i det uklare sæt ukonventionelle computerteknikker.
Det følgende bringer nogle vigtige differentiatorer frem for lateral computing.
- Konventionel databehandling
- Problemet og teknikken er direkte korreleret .
- Behandler problemet med streng matematisk analyse.
- Opretter matematiske modeller.
- Beregningsteknikken kan analyseres matematisk.
- Lateral computing
- Problemet har næppe nogen relation til den anvendte computerteknik
- Nærmer sig problemer ved analogier såsom menneskelig informationsbehandlingsmodel, annealing osv.
- Nogle gange kan computingsteknikken ikke analyseres matematisk.
Lateral computing og parallel computing
Parallel computing fokuserer på at forbedre computerens/algoritmers ydeevne ved brug af flere computerelementer (såsom behandlingselementer). Beregningshastigheden forbedres ved at bruge flere computerelementer. Parallel computing er en forlængelse af konventionel sekventiel computing . I lateral computing løses problemet imidlertid ved hjælp af ukonventionel informationsbehandling, uanset om der bruges en sekventiel eller parallel computing.
En gennemgang af lateral-computing teknikker
Der er flere computerteknikker, der passer til lateral computing -paradigme. Her er en kort beskrivelse af nogle af Lateral Computing -teknikkerne:
Swarm intelligens
Swarm intelligence (SI) er ejendommen i et system, hvorved (usofistikerede) agens kollektive adfærd, der interagerer lokalt med deres omgivelser, får sammenhængende funktionelle globale mønstre til at dukke op. SI giver et grundlag, hvormed det er muligt at udforske kollektiv (eller distribueret) problemløsning uden centraliseret kontrol eller tilvejebringelse af en global model.
En interessant sværm intelligent teknik er Ant Colony -algoritmen :
- Myrer er adfærdsmæssigt usofistikerede; samlet udfører de komplekse opgaver. Myrer har højt udviklet sofistikeret tegnbaseret kommunikation.
- Myrer kommunikerer ved hjælp af feromoner; der lægges stier, der kan følges af andre myrer.
- Routeringsproblem Myrer taber forskellige feromoner, der bruges til at beregne den "korteste" sti fra kilde til destination (er).
Agentbaserede systemer
Agenter er indkapslede computersystemer, der er placeret i nogle miljøer og er i stand til fleksibel, autonom handling i dette miljø for at opfylde deres designmål. Agenter anses for at være autonome (uafhængige, ikke-kontrollerbare), reaktive (reagerer på begivenheder), pro-aktive (initierer handlinger af egen vilje) og sociale (kommunikative). Agenter varierer i deres evner: de kan være statiske eller mobile, eller de kan være intelligente. Hver agent kan have sin egen opgave og/eller rolle. Agenter og multi-agent systemer bruges som en metafor til at modellere komplekse distribuerede processer. Sådanne agenter har altid brug for at interagere med hinanden for at styre deres indbyrdes afhængigheder . Disse interaktioner involverer agenter, der samarbejder, forhandler og koordinerer med hinanden.
Agentbaserede systemer er computerprogrammer, der forsøger at simulere forskellige komplekse fænomener via virtuelle "agenter", der repræsenterer komponenterne i et forretningssystem. Disse agenters adfærd er programmeret med regler, der realistisk skildrer, hvordan forretningen drives. Da vidt forskellige individuelle agenter interagerer i modellen, viser simuleringen , hvordan deres kollektive adfærd styrer hele systemets ydeevne - for eksempel fremkomsten af et vellykket produkt eller en optimal tidsplan. Disse simuleringer er stærke strategiske værktøjer til "hvad-hvis" -scenarioanalyse: Når ledere ændrer agentkarakteristika eller "regler", kan virkningen af ændringen let ses i modeloutput
Grid computing
Ved analogi , en beregningsmæssige gitter er en hardware og software infrastruktur, der giver pålidelig, konsistent, gennemtrængende, og billig adgang til high-end beregningsmæssige evner. Anvendelserne af grid computing er i:
- Chipdesign, kryptografiske problemer, medicinsk instrumentering og supercomputing .
- Distribuerede supercomputer -applikationer bruger net til at samle betydelige beregningsressourcer for at løse problemer, der ikke kan løses på et enkelt system.
Autonom computing
Det autonome nervesystem styrer vores puls og kropstemperatur og frigør dermed vores bevidste hjerne fra byrden ved at håndtere disse og mange andre lavniveau, men alligevel vitale funktioner. Essensen af autonom computing er selvstyring, hvis hensigt er at frigøre systemadministratorer fra detaljerne i systemdrift og vedligeholdelse.
Fire aspekter af autonom computing er:
- Selvkonfiguration
- Selvoptimering
- Selvhelbredende
- Selvbeskyttelse
Dette er en stor udfordring fremmet af IBM .
Optisk computing
Optisk computing er at bruge fotoner frem for konventionelle elektroner til computing. Der er ganske få tilfælde af optiske computere og vellykket brug af dem. De konventionelle logiske porte bruger halvledere , som bruger elektroner til at transportere signalerne. I tilfælde af optiske computere bruges fotoner i en lysstråle til beregning.
Der er mange fordele ved at bruge optiske enheder til computing, såsom immunitet over for elektromagnetisk interferens, stor båndbredde osv.
DNA -computing
DNA -computing bruger DNA -strenge til at kode forekomsten af problemet og manipulere dem ved hjælp af teknikker, der er almindeligt tilgængelige i ethvert molekylærbiologisk laboratorium for at simulere operationer, der vælger løsning af problemet, hvis det eksisterer.
Da DNA -molekylet også er en kode, men i stedet består af en sekvens af fire baser, der parres på en forudsigelig måde, har mange forskere tænkt over muligheden for at oprette en molekylær computer. Disse computere er afhængige af de meget hurtigere reaktioner af DNA -nukleotider, der bindes med deres komplementer, en brute force -metode, der rummer et enormt potentiale for at skabe en ny generation af computere, der ville være 100 milliarder gange hurtigere end nutidens hurtigste pc. DNA -computing er blevet bebudet som "det første eksempel på ægte nanoteknologi " og endda "starten på en ny æra", som skaber en hidtil uset forbindelse mellem datalogi og life science.
Eksempelapplikationer af DNA -computing er i løsning for det Hamiltoniske sti -problem, som er et kendt NP -komplet. Antallet af nødvendige laboratorieoperationer ved hjælp af DNA vokser lineært med antallet af hjørner i grafen. Der er rapporteret molekylære algoritmer, der løser det kryptografiske problem i et polynomisk antal trin. Som kendt er factoring af store tal et relevant problem i mange kryptografiske applikationer.
Quantum computing
I en kvantecomputer er den grundlæggende informationsenhed (kaldet en kvantebit eller qubit ) ikke binær, men snarere mere kvaternær . Denne qubit -egenskab opstår som en direkte konsekvens af dens overholdelse af kvantemekanikkens love, som adskiller sig radikalt fra lovene i klassisk fysik. En qubit kan eksistere ikke kun i en tilstand, der svarer til den logiske tilstand 0 eller 1 som i en klassisk bit, men også i tilstande, der svarer til en blanding eller kvantesuperposition af disse klassiske tilstande. Med andre ord kan en qubit eksistere som et nul, en eller samtidigt som både 0 og 1, med en numerisk koefficient, der repræsenterer sandsynligheden for hver tilstand. En kvantecomputer manipulerer qubits ved at udføre en række kvanteporte , hver en enhedstransformation, der virker på en enkelt qubit eller et par qubits. Ved anvendelse af disse porte i rækkefølge kan en kvantecomputer udføre en kompliceret enhedstransformation til et sæt qubits i en eller anden indledende tilstand.
Omkonfigurerbar computing
Feltprogrammerbare gate-arrays (FPGA) gør det muligt at bygge virkelig rekonfigurerbare computere . Computerarkitekturen transformeres ved hjælp af rekonfiguration af FPGA -kredsløb. Den optimale matchning mellem arkitektur og algoritme forbedrer den rekonfigurerbare computers ydelse. Nøglefunktionen er hardwareydelse og softwarefleksibilitet.
For flere applikationer, f.eks. Fingeraftryksmatchning, sammenligning af DNA -sekvenser osv., Har rekonfigurerbare computere vist sig at udføre flere størrelsesordener bedre end konventionelle computere.
Simuleret glødning
Den simulerede udglødningsalgoritme er designet ved at se på, hvordan de rene krystaller dannes fra en opvarmet gasform, mens systemet afkøles langsomt. Dataproblemet redesignes som en simuleret annealing -øvelse, og der er nået frem til løsningerne. Arbejdsprincippet for simuleret glødning er lånt fra metallurgi: et stykke metal opvarmes (atomerne får termisk omrøring), og derefter lader metallet afkøle langsomt. Den langsomme og regelmæssige afkøling af metallet tillader atomer gradvist at glide deres mest stabile ("minimal energi") positioner. (Hurtig afkøling ville have "frosset" dem i den position, de tilfældigvis befandt sig på det tidspunkt.) Den resulterende struktur af metallet er stærkere og mere stabil. Ved at simulere processen med udglødning inde i et computerprogram er det muligt at finde svar på vanskelige og meget komplekse problemer. I stedet for at minimere energien i en metalblok eller maksimere dens styrke, minimerer eller maksimerer programmet et mål, der er relevant for det aktuelle problem.
Soft computing
En af hovedkomponenterne i "Lateral-computing" er soft computing, der nærmer sig problemer med modellen til behandling af menneskelig information. Soft Computing-teknikken omfatter Fuzzy logic, neuro-computing, evolutionary-computing, machine learning og probabilistic-chaotic computing.
Neuro computing
I stedet for at løse et problem ved at oprette en ikke-lineær ligningsmodel af det, bruges den biologiske neurale netværksanalogi til at løse problemet. Det neurale netværk er trænet som en menneskelig hjerne til at løse et givet problem. Denne fremgangsmåde er blevet meget vellykket til at løse nogle af mønstergenkendelsesproblemerne .
Evolutionær computing
Den genetiske algoritme (GA) ligner den naturlige udvikling for at give en universel optimering. Genetiske algoritmer starter med en population af kromosomer, der repræsenterer de forskellige løsninger. Løsningerne evalueres ved hjælp af en fitnessfunktion, og en udvælgelsesproces afgør, hvilke løsninger der skal bruges til konkurrenceprocessen. Disse algoritmer har stor succes med at løse søge- og optimeringsproblemer. De nye løsninger er skabt ved hjælp af evolutionære principper som mutation og crossover.
Sløret logik
Fuzzy logik er baseret på de fuzzy sets -koncepter, der foreslås af Lotfi Zadeh . Graden af medlemskabskoncept er central for uklare sæt. De fuzzy sæt adskiller sig fra skarpe sæt, da de tillader et element at tilhøre et sæt i en grad (grad af medlemskab). Denne fremgangsmåde finder gode applikationer til kontrolproblemer. Fuzzy -logikken har fundet enorme applikationer og har allerede fundet en stor tilstedeværelse på markedet inden for forbrugerelektronik såsom vaskemaskiner, mikrobølger, mobiltelefoner, fjernsyn, videokameraer osv.
Probabilistisk/kaotisk computing
Probabilistiske computermotorer, f.eks. Brug af probabilistisk grafisk model såsom Bayesiansk netværk . Sådanne beregningsteknikker omtales som randomisering, hvilket giver probabilistiske algoritmer. Når de fortolkes som et fysisk fænomen gennem klassisk statistisk termodynamik, fører sådanne teknikker til energibesparelser, der er proportionelle med sandsynligheden p, hvormed hvert primitivt beregningstrin garanteret er korrekt (eller ækvivalent med sandsynligheden for fejl, (1 – p). Chaotic Computing er baseret på kaosteorien.
Fraktaler
Fractal Computing er objekter, der viser selv-lighed i forskellige skalaer. Fraktalgenerering involverer små iterative algoritmer. Fraktalerne har dimensioner større end deres topologiske dimensioner. Fraktalens længde er uendelig, og størrelsen af den kan ikke måles. Det beskrives ved en iterativ algoritme i modsætning til en euklidisk form, der er givet ved en simpel formel. Der er flere typer fraktaler, og Mandelbrot -sæt er meget populære.
Fraktaler har fundet applikationer inden for billedbehandling, billedkomprimering af musikgenerering, computerspil osv. Mandelbrot -sæt er en fraktal opkaldt efter dens skaber. I modsætning til de andre fraktaler, selvom Mandelbrot-sættet er selvlignende i forstørrelse, er detaljerne i lille skala ikke identiske med helheden. Dvs Mandelbrot -sættet er uendeligt komplekst. Men processen med at generere den er baseret på en ekstremt simpel ligning. Mandelbrot -sættet M er en samling af komplekse tal. Tallene Z, der tilhører M , beregnes ved iterativt at teste Mandelbrot -ligningen. C er en konstant. Hvis ligningen konvergerer for valgte Z , derefter Z tilhører M . Mandelbrot ligning:
Randomiseret algoritme
En randomiseret algoritme foretager vilkårlige valg under udførelsen. Dette giver mulighed for en besparelse i udførelsestiden i starten af et program. Ulempen ved denne metode er muligheden for, at der opstår en forkert løsning. En veldesignet randomiseret algoritme vil have en meget stor sandsynlighed for at returnere et korrekt svar. De to kategorier af randomiserede algoritmer er:
Overvej en algoritme for at finde det k th element i en matrix. En deterministisk tilgang ville være at vælge et pivot -element nær medianen på listen og opdele listen omkring det element. Den randomiserede tilgang til dette problem ville være at vælge en pivot tilfældigt og dermed spare tid i begyndelsen af processen. Ligesom tilnærmelsesalgoritmer kan de bruges til hurtigere at løse hårde NP-komplette problemer. En fordel i forhold til tilnærmelsesalgoritmerne er imidlertid, at en randomiseret algoritme i sidste ende vil give et præcist svar, hvis den udføres nok gange
Maskinelæring
Mennesker/dyr lærer nye færdigheder, sprog/begreber. Tilsvarende giver machine learning -algoritmer mulighed for at generalisere ud fra træningsdata. Der er to klasser af Machine Learning (ML):
- Tilsyn ML
- Uovervåget ML
En af de velkendte teknikker til maskinlæring er Back Propagation Algorithm. Dette efterligner, hvordan mennesker lærer af eksempler. Træningsmønstrene præsenteres gentagne gange for netværket. Fejlen spredes tilbage, og netværksvægterne justeres ved hjælp af gradientafstamning. Netværket konvergerer gennem flere hundrede iterative beregninger.
Understøtter vektormaskiner
Dette er en anden klasse af meget vellykkede maskinindlæringsteknikker, der med succes anvendes på opgaver som tekstklassificering, højttalergenkendelse , billedgenkendelse osv.
Eksempel applikationer
Der er flere vellykkede anvendelser af lateral-computing teknikker. Her er et lille sæt applikationer, der illustrerer lateral computing:
- Boblesortering : Her behandles computerproblemet med sortering med en analogi af bobler, der stiger i vand. Dette er ved at behandle tallene som bobler og flyde dem til deres naturlige position.
- Truck backup problem: Dette er et interessant problem med at vende en lastbil og parkere den på et bestemt sted. De traditionelle computerteknikker har haft svært ved at løse dette problem. Dette er blevet løst med succes med Fuzzy system.
- Balancering af et omvendt pendul: Dette problem involverer balancering og omvendt pendul. Dette problem er effektivt løst af neurale netværk og uklare systemer.
- Smart volumenkontrol til mobiltelefoner: Lydstyrkekontrollen i mobiltelefoner afhænger af baggrundsstøjniveauer, støjklasser, brugerprofil for brugeren og andre parametre. Målingen på støjniveau og lydstyrkeniveau involverer upræcision og subjektive mål. Forfatterne har demonstreret den vellykkede brug af fuzzy logic system til volumenkontrol i mobiltelefoner.
- Optimering ved hjælp af genetiske algoritmer og simuleret udglødning : Problemer som f.eks. Rejsende sælgerproblemer har vist sig at være NP -komplette problemer. Sådanne problemer løses ved hjælp af algoritmer, der har gavn af heuristik. Nogle af applikationerne er i VLSI -routing, partitionering osv. Genetiske algoritmer og Simulated annealing har været en succes med at løse sådanne optimeringsproblemer.
- Programmering The Unprogrammable (PTU), der involverer automatisk oprettelse af computerprogrammer til utraditionelle computerenheder såsom mobilautomater , multi-agent-systemer , parallelle systemer , feltprogrammerbare gate-arrays , feltprogrammerbare analoge arrays, myrekolonier, sværmintelligens , distribuerede systemer , og lignende.
Resumé
Ovenfor er en gennemgang af lateral-computing teknikker. Lateral computing er baseret på den lateraltænkende tilgang og anvender ukonventionelle teknikker til at løse computerproblemer. Selv om de fleste problemer er løst i konventionelle teknikker, er der problemer, der kræver lateral computing. Lateral computing giver fordel af beregningseffektivitet, lave omkostninger ved implementering, bedre løsninger sammenlignet med konventionel computing til flere problemer. Lateral computing tackler med succes en klasse problemer ved at udnytte tolerance for upræcision, usikkerhed og delvis sandhed for at opnå traktabilitet, robusthed og lave løsningsomkostninger. Lateral-computing teknikker, der bruger de menneskelige lignende informationsbehandlingsmodeller, er blevet klassificeret som "Soft Computing" i litteraturen.
Lateral computing er værdifuld, mens der løses adskillige computerproblemer, hvis matematiske modeller ikke er tilgængelige. De giver en måde at udvikle innovative løsninger, der resulterer i smarte systemer med Very High Machine IQ (VHMIQ). Denne artikel har sporet overgangen fra lateral-tænkning til lateral-computing. Derefter er flere laterale computingsteknikker blevet beskrevet efterfulgt af deres applikationer. Lateral computing er til opbygning af ny generation af kunstig intelligens baseret på ukonventionel behandling.
Se også
- Beregning
- Computing
- Computationalism
- Virkelig beregning
- Reversibel beregning
- Hypercomputation
- Beregning
- Beregningsproblem
- Utraditionel computing
Referencer
Kilder
- de Bono, E. (2003). "Edward de Bono" . Arkiveret fra originalen 2001-02-01.
- Proceedings of IEEE (2001): Special Issue on Industrial Innovations Using Soft Computing , september.
- T. Ross (2004): Fuzzy Logic With Engineering Applications , McGraw-Hill Inc Publishers.
- B. Kosko (1994); Fuzzy Thinking, Flamingo Publishers.
- E. Aarts og J. Krost (1997); Simulerede annealing- og Boltzmann -maskiner, John Wiley og Sons forlag.
- KV Palem (2003); Energy Aware Computing through Probabilistic Switching: En undersøgelse af grænser , Teknisk rapport GIT-CC-03-16 maj 2003.
- M. Sima, S. Vassiliadis, S. Cotofona, JTJ Van Eijndoven og KA Vissers (2000); En taksonomi af brugerdefinerede computermaskiner i værkstedet Proceedings of the Progress, oktober.
- 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 og RR Aliev (2001); Soft Computing og dens applikationer , World Scientific Publishers.
- Jyh-Shing Roger Jang, Chuen-Tsai Sun & Eiji Mizutani (1997); Neuro-Fuzzy and Soft Computing: A Computational Approach to Learning and Machine Intelligence, Prentice Hall Publishers.
- John R. Koza, Martin A. Keane, Matthew J. Streeter, William Mydlowec, Jessen Yu og Guido Lanza (2003); Genetic Programming IV: Routine Human-Competitive Machine Intelligence, Kluwer Academic.
- James Allen (1995); Natural Language Understanding, 2. udgave, Pearson Education Publishers.
- R. Herken (1995); Universal Turing Machine, Springer-Verlag 2. udgave.
- Harry R. Lewis, Christos H. Papadimtrou (1997); Elements of Theory of Computation, 2. udgave, Prentice Hall Publishers.
- M. Garey og D. Johnson (1979); Computere og uoverkommelighed: En teori om NP -fuldstændighed, WH Freeman og Company Publishers.
- M. Sipser (2001); Introduktion til Theory of Computation, Thomson/Brooks/Cole Publishers.
- K. Compton og S. Hauck (2002); Rekonfigurerbar computing: En undersøgelse af systemer og software, ACM Computing Surveys, Vo. 34, nr. 2, juni 2002, s. 171–210.
- DW Patterson (1990); Introduktion til kunstig intelligens og ekspertsystemer, Prentice Hall Inc. Publishers.
- E. Charniak og D. Mcdermott (1999); Introduktion til kunstig intelligens, Addison Wesley.
- Hameroff, SR (1997). Ultimativ computing . Elsevier Science Publishers. ISBN 978-0-444-70283-8.
- RL Epstein og WA Carnielli (1989); Computability, Computable Functions, Logic and The Foundations of Mathematics, Wadsworth & Brooks/Cole Advanced Books and Software.
- T. Joachims (2002); Lær at klassificere tekst ved hjælp af understøttelsesvektormaskiner , Kluwer Academic Publishers.
- T. Mitchell (1997); Machine Learning, McGraw Hill Publishers.
- R. Motwani og P. Raghavan (1995); Randomiserede algoritmer , Cambridge International Series in Parallel Computation, Cambridge University Press.
- Sun Microsystems (2003); Introduktion til gennemførelsesberegning, teknisk rapport.
Konferencer
- Første verdenskongres om lateral computing , IISc, Bangalore Indien, december 2004 WCLC 2004
- Anden verdenskongres om lateral computing , WCLC 2005, PESIT, Bangalore, Indien