Computer videnskab

fra Wikipedia, den gratis encyklopædi
Spring til navigation Spring til søgning

Datalogi er videnskaben om den systematiske repræsentation, lagring, behandling og transmission af information med særlig fokus på automatisk behandling med digitale computere . [1] Det er en grundlæggende og formel videnskab samt en ingeniørdisciplin . [2]

Informatikhistorie

oprindelse

Gottfried Wilhelm Leibniz havde allerede beskæftiget sig med repræsentationer af binære tal . Sammen med boolsk algebra , som først blev udarbejdet af George Boole i 1847, danner de de vigtigste matematiske grundlag for senere computersystemer. I 1937 udgav Alan Turing sit arbejde On Computable Numbers with an Application to the Decision Problem , hvor Turing -maskinen opkaldt efter ham blev præsenteret, en matematisk maskinmodel, der er af stor betydning for teoretisk datalogi den dag i dag. Den dag i dag er begrebet forudsigelighed baseret på universelle modeller som Turing -maskinen og kompleksitetsteorien , som begyndte at udvikle sig i 1960'erne. Den dag i dag har forudsigelighed været baseret på varianter af disse modeller.

etymologi

Ordet datalogi blev skabt ved at tilføje endelsen -ik til roden af information . Begrebet datalogi blev opfundet af Karl Steinbuch og kan spores tilbage til hans første publikation "Computer Science: Automatic Information Processing" fra 1957, som han udgav hos Standard Elektrik AG (SEG). [3] [4] For at understrege betydningen af ​​automatisering eller matematik for datalogi, bliver computervidenskab undertiden givet som et kuffertord bestående af information og automatisering eller information og matematik . [5]

Efter et internationalt kollokvium i Dresden den 26. februar 1968 etablerede datalogi sig som et navn for videnskab baseret på fransk (informatique) og russiske modeller (Информатика) i det tysktalende område. [6] [7] I juli samme år blev udtrykket datalogi for første gang brugt som det tyske navn på et nyt emne i en Berlin -tale af minister Gerhard Stoltenberg . [8] Mens begrebet datalogi er almindelig i den engelsktalende verden, den tyske ækvivalent af datalogi kunne ikke etablere sig. Begrebet informatik bruges dog på engelsk om visse dele af anvendt informatik - for eksempel i tilfælde af bioinformatik eller geoinformatik . Når det kommer til oversættelser til engelsk, foretrækkes udtrykket informatik undertiden frem for datalogi i tysktalende lande. [9]

Udvikling af datalogi til videnskab

I Tyskland går begyndelsen på datalogi tilbage til Institute for Practical Mathematics (IPM) ved Technical University of Darmstadt (TH Darmstadt) , som matematikeren Alwin Walther opbyggede siden 1928. [10] I 1956 kunne de første studerende på Darmstadt elektroniske lommeregner håndtere problemerne med lommeregnere. Samtidig blev de første programmeringsforedrag og praktikophold tilbudt på TH Darmstadt. På grund af det ry, TH TH Darmstadt havde på det tidspunkt inden for computerforskning, fandt den første kongres i det tysktalende område om emnet datalogi ( elektroniske beregningsmaskiner og informationsbehandling ) med international deltagelse sted i oktober 1955 på TH Darmstadt.

I 1960'erne manglede Tyskland konkurrenceevne inden for databehandling (DV). For at modvirke dette vedtog Forbundsudvalget for Videnskabelig Forskning programmet til fremme af forskning og udvikling inden for databehandling til offentlige opgaver den 26. april 1967. Det såkaldte "Technical Advisory Board for Data Processing" var ansvarlig for implementeringen og bestod hovedsageligt af repræsentanter fra universiteter og ikke-universitets forskningsinstitutioner. På det syvende møde i det rådgivende udvalg den 15. november 1967 signalerede Karl Ganzhorn , der på det tidspunkt var ansvarlig for forskning og udvikling i IBM Tyskland , industriens problemer med at finde kvalificeret personale. Direktøren for Institute for Message Processing på TH Darmstadt, Robert Piloty , påpegede, at de tyske universiteter er ansvarlige for uddannelse af kvalificeret personale. Som et resultat blev "IT -stole og træning" -komitéen dannet. Piloty tog stolen. Udvalget formulerede anbefalinger til uddannelse af dataloger, som gav mulighed for etablering af et kursus i datalogi ved flere universiteter og tekniske gymnasier. [10]

I 1967 tilbød det tekniske universitet i München et kursus i informationsbehandling som en del af matematikforløbet på initiativ af Friedrich Ludwig Bauer . [10] [11] [12] I 1968 introducerede TH Darmstadt det første datalogiske kursus. I 1969 fulgte kurset "datateknologi (teknisk informatik)" og i 1970 et matematikforløb, der afsluttedes med graden "kandidatingeniør i matematik med fokus på datalogi". [10] Den 1. september 1969 startede det tekniske universitet i Dresden det første universitet i DDR med uddannelsen af ​​Dipl.-Ing. til informationsbehandling. Også i 1969 begyndte Furtwangen ingeniørskole (senere Furtwangen University of Applied Sciences ) at træne, stadig kaldet informationsteknologi her. [13] I vintersemesteret 1969/70 var University of Karlsruhe (nu Karlsruhe Institute of Technology ) det første tyske universitet, der tilbød en grad i datalogi, der førte til en grad i datalogi. [14]

Johannes Kepler University (JKU) Linz startede i vintersemesteret 1969/70 som det første østrigske universitet, der specialiserede sig i datalogi og uddannede sig til ingeniør. [15] Det Tekniske Universitet i Wien fulgte i vintersemesteret 1970/71. [16] Et par år senere grundlagde de første datalogiske fakulteter, idet de allerede siden 1962 ved Purdue University havde bestået et institut for datalogi.

I engelsktalende lande omtales den enkelte videnskab som datalogi . Den første universitetsgrad var Diploma in Numerical Analysis and Automatic Computing fra University of Cambridge . Det etårige kandidatuddannelse kunne begynde i oktober 1953. [17] [18]

Organisationer

Gesellschaft für Informatik (GI) blev grundlagt i 1969 og er det største specialbureau i tysktalende lande. De to store amerikanske foreninger, Association for Computing Machinery (ACM) siden 1947 og Institute of Electrical and Electronics Engineers (IEEE) siden 1963, er af særlig international betydning. Forum for computerforskere for fred og socialt ansvar . Association for Computing Machinery uddeler årligt Turing -prisen , hvilket nogenlunde kan sammenlignes med Nobelprisen med hensyn til rang inden for datalogi.

Regnemaskiner - computerens forløbere

En japansk soroban

Bestræbelserne på at udvikle to typer maskiner kan ses som de første forløbere for datalogi ud over matematik: dem ved hjælp af hvilke matematiske beregninger kan udføres eller forenkles (" beregningsmaskiner ") og dem, som der kan drages logiske konklusioner med og kontrollerede argumenter kan være (" logiske maskiner "). Som enkle beregning enheder, den kuglerammen og senere den regnestok afsmeltet uvurderlige tjenester. I 1641 konstruerede Blaise Pascal en mekanisk beregningsmaskine, der kunne udføre tilføjelser og subtraktioner, herunder overførsler . Først lidt senere præsenterede Gottfried Wilhelm Leibniz en regnemaskine, der kunne udføre alle fire grundlæggende regneoperationer. Disse maskiner er baseret på sammenflettende gear. Et skridt mod større fleksibilitet blev taget fra 1838 og fremefter af Charles Babbage , der havde til formål at kontrollere de aritmetiske operationer ved hjælp af hulkort . Kun Herman Hollerith var i stand til rentabelt at gennemføre denne idé takket være den tekniske udvikling fra 1886 og fremefter. Hans tællemaskiner baseret på hulkort blev blandt andet brugt til at evaluere en folketælling i USA.

Historien om logiske maskiner spores ofte tilbage til 1200 -tallet og spores tilbage til Ramon Llull . Selvom hans beregningsdisklignende konstruktioner, hvor flere diske, der roterede mod hinanden kunne repræsentere forskellige kombinationer af udtryk, ikke var mekanisk meget komplekse, var det sandsynligvis ham, der gjorde ideen om en logisk maskine kendt. Bortset fra denne meget tidlige forløber er logiske maskiners historie endnu mere forsinket end beregningsmaskiner: en diasregellignende enhed af den tredje jarl Stanhope , der krediteres med at kontrollere validiteten af syllogismer (i aristotelisk forstand), går tilbage til 1777. En rigtig "maskine" er for første gang blevet afleveret i form af "Logical Piano" af Jevons i slutningen af ​​1800 -tallet. Kun lidt senere blev mekanikken erstattet af elektromekaniske og elektriske kredsløb. De logiske maskiner nåede deres højdepunkt i 1940'erne og 1950'erne, for eksempel med maskinerne fra den engelske producent Ferranti . Med udviklingen af ​​universelle digitale computere - i modsætning til beregningsmaskiner - sluttede historien om uafhængige logiske maskiner pludseligt, da de opgaver, de behandlede og løste i stigende grad blev implementeret i software på netop de computere, hvis hardware -forgængere de tilhører.

Udvikling af moderne regnemaskiner

En af de første større regnemaskiner er Z1 fra 1937, som blev skabt af Konrad Zuse og stadig fungerer rent mekanisk.Dengang var tabuleringsmaskiner den dominerende teknologi i store administrationer, hvor Zuse forudså brug i ingeniørsektoren. Fire år senere implementerede Zuse sin idé ved hjælp af elektriske relæer : Z3 fra 1941 var verdens første fuldt funktionelle, frit programmerbare digitale computer [19] til at adskille kommando- og datahukommelser fra input / output -skrivebordet.

Lidt senere blev bestræbelserne på at bygge regnemaskiner til krakning af hemmelige tyske meddelelser skubbet frem med stor succes under ledelse af Alan Turing ( Turingbombe ) og Thomas Flowers (Colossus). Samtidig udviklede Howard Aiken Mark I (1944), den første programstyrede relæcomputer i USA, hvor videreudviklingen var betydeligt fremskreden. Yderligere relæcomputere blev bygget i Bell -laboratorierne (George Stibitz). Atanasoff-Berry-computeren anses for at være den første rørcomputer. En af hovedaktørerne her er John von Neumann , efter hvem Von Neumann -arkitekturen , som stadig er vigtig i dag, er opkaldt. I 1946 blev rørcomputeren ENIAC udviklet , i 1949 blev EDSAC bygget - med den første implementering af Von Neumann -arkitekturen.

Fra 1948 og frem begyndte IBM at udvikle computere og blev markedsleder inden for ti år. En milepæl i virksomhedens historie var introduktionen af System / 360 i 1964. Mainframe er forfader til nutidens Z-Systems mainframes og fulgte IBM 700/7000-serien . Allerede i 1959 blev IBM 1401, en computer for mellemstore virksomheder, introduceret, som ofte kaldes Ford Model T i computerindustrien på grund af dens salgstal. Med udviklingen af transistorteknologi og mikroprocessorteknologi blev computere mere og mere kraftfulde og billigere. I 1982 åbnede Commodore -virksomheden endelig massemarkedet med C64, især for hjemmebrugere, men også langt videre.

Programmeringssprog

Opfindelsen af ​​"automatisk programmering" af Heinz Rutishauser (1951) var vigtig for udviklingen af ​​programmeringssprog. I 1956 beskrev Noam Chomsky et hierarki af formelle grammatikker, som formelle sprog og særlige maskinmodeller stemmer overens med. Disse formaliseringer blev meget vigtige for udviklingen af programmeringssprog . Vigtige milepæle var udviklingen af Fortran (fra engelsk: "FORmula TRANslation", formeloversættelse; første programmeringssprog på højt niveau , 1957), ALGOL (fra engelsk: "ALGOrithmic Language", algoritmesprog; struktureret / imperativt ; 1958/1960/ 1968), Lisp (fra engelsk: "LISt Processing", behandling af lister; funktionel , 1959), COBOL (fra engelsk: "COmmon Business Orientated Language", programmeringssprog til kommercielle applikationer, 1959), Smalltalk ( objektorienteret , 1971 ), Prolog ( logisk , 1972) og SQL ( relationelle databaser , 1976). Nogle af disse sprog står for typiske programmeringsparadigmer for deres respektive tid. Andre programmeringssprog, der har været i brug i lang tid, er BASIC (siden 1960), C (siden 1970), Pascal (siden 1971), Objective-C ( objektorienteret , 1984), C ++ (objekt- orienteret, generisk , multi-paradigme, siden 1985), Java (objektorienteret, siden 1995) og C # (objektorienteret, omkring 2000). Sprog og paradigmeskift blev intensivt ledsaget eller fremmet af datalogisk forskning.

Som med andre videnskaber er der også en stigende tendens til specialisering.

Datalogi discipliner

Alan Turing mindestatue i Sackville Park i Manchester

Datalogi er opdelt i underområderne teoretisk datalogi , praktisk datalogi og teknisk datalogi .

Datavidenskabens anvendelser inden for de forskellige områder af dagligdagen såvel som på andre specialområder, såsom forretningsinformatik , geoinformatik og medicinsk informatik, omtales som anvendt informatik . Virkningerne på samfundet undersøges også tværfagligt.

Datalogi arkitektur

Teoretisk datalogi danner det teoretiske grundlag for de andre delområder. Det giver grundlæggende viden om problemers beslutbarhed , til klassificering af deres kompleksitet og til modellering af automater og formelle sprog .

Disciplinerne praktisk og teknisk informatik er baseret på disse fund. Du håndterer centrale problemer med informationsbehandling og leder efter relevante løsninger.

Resultaterne bruges i sidste ende i anvendt datalogi. Hardware- og softwareimplementeringer kan tildeles dette område og dermed en stor del af det kommercielle IT -marked. De tværfaglige emner undersøger også, hvordan informationsteknologi kan løse problemer inden for andre videnskabelige områder, såsom udvikling af geografiske databaser til geografi , men også forretning eller bioinformatik .

Teoretisk datalogi

Som rygraden i datalogi beskæftiger sig området med teoretisk datalogi de abstrakte og matematikorienterede aspekter af videnskaben. Området er bredt og omhandler emner fra teoretisk lingvistik ( teori om formelle sprog eller automatteori ), beregningsbarhed og kompleksitetsteori . Formålet med disse underområder er at give omfattende svar på grundlæggende spørgsmål som "Hvad kan beregnes?" Og "Hvor effektivt / effektivt kan du beregne noget?".

Automata teori og formelle sprog

1-bånds Turing-maskine

Inden for datalogi er automater "imaginære maskiner", der opfører sig efter visse regler. En endelig automat har et begrænset sæt interne tilstande. Den læser med et "inputord" karakter for karakter og udfører en tilstandsovergang for hvert tegn. Derudover kan den udsende et "output symbol" ved hver tilstandsovergang. Når input er fuldført, kan maskinen acceptere eller afvise inputordet.

Den formelle sprogtilgang har sit udspring i lingvistik og er derfor velegnet til at beskrive programmeringssprog. Formelle sprog kan imidlertid også beskrives ved hjælp af maskinmodeller, da mængden af ​​alle ord, der accepteres af en maskine, kan ses som et formelt sprog.

Mere komplekse modeller har en hukommelse, for eksempel push-down- maskiner eller Turing-maskinen, som ifølge Church-Turing-tesen kan gengive alle funktioner, der kan beregnes af mennesker.

Beregningsteori

I forbindelse med beregningsteori undersøger teoretisk datalogi, hvilke problemer der kan løses med hvilke maskiner. En computermodel eller et programmeringssprog kaldes Turing-complete, hvis den kan bruges til at simulere en universel Turing-maskine . Alle computere, der bruges i dag og de fleste programmeringssprog er Turing-complete, hvilket betyder, at du kan bruge dem til at løse de samme opgaver. Alternative beregningsmodeller som lambda-beregningen , WHILE-programmer , μ-rekursive funktioner eller registermaskiner viste sig også at være Turing-komplette. Church-Turing-tesen udviklede sig ud fra disse fund, som, selvom den formelt ikke kan bevises, er generelt accepteret.

Begrebet beslutsomhed kan illustreres som spørgsmålet om, hvorvidt et bestemt problem kan løses algoritmisk. Et problem, der kan afgøres, er f.eks. Egenskaben for en tekst for at være et syntaktisk korrekt program. Et problem, der ikke kan afgøres, er for eksempel spørgsmålet om, hvorvidt et givet program med givne inputparametre nogensinde kommer til et resultat, som omtales som et stallproblem .

Kompleksitetsteori

Kompleksitetsteorien omhandler ressourcekravene til algoritmisk behandlingsbare problemer på forskellige matematisk definerede formelle computermodeller samt kvaliteten af ​​de algoritmer, der løser dem. Specielt undersøges ressourcerne " runtime " og " lagerplads ", og deres krav er normalt repræsenteret i Landau -notation . Først og fremmest noteres løbetiden og lagerpladsbehovet afhængigt af længden af ​​input. Algoritmer, der højst adskiller sig fra en konstant faktor i deres driftstid eller deres lagringskrav, tildeles den samme klasse, det vil sige et sæt problemer med en tilsvarende driftstid, der kræves af algoritmen til løsningen, ved hjælp af Landau -notationen.

En algoritme, hvis spilletid er uafhængig af inputlængden, fungerer "i konstant tid", skriver du . For eksempel vil programmet "returner det første element på en liste" fungere i konstant tid. Programmet "kontrollere, om et bestemt element er indeholdt i en usorteret længdeliste n" har brug for "lineær tid", dvs. , for i værste fald skal inputlisten læses nøjagtigt en gang.

Kompleksitetsteori har hidtil kun givet øvre grænser for ressourcekrav til problemer, fordi metoder til nøjagtige lavere grænser næsten ikke er udviklet, og kun få problemer kendes (f.eks. Til opgave at sortere en værdiliste med hjælp af en given ordensrelation gennem sammenligninger, den nedre grænse ). Ikke desto mindre er der metoder til at klassificere særligt vanskelige problemer som sådan, idet teorien om NP-fuldstændighed spiller en central rolle. Ifølge dette er et problem særligt svært, hvis man ved at løse det også automatisk kan løse de fleste af de andre naturlige problemer uden at bruge væsentligt flere ressourcer.

Det største åbne spørgsmål i kompleksitetsteorien er spørgsmålet om P = NP ?” . Problemet er et af de årtusindsproblemer, der blev annonceret af Clay Mathematics Institute med $ 1 million. Hvis P ikke er lig med NP, kan NP-komplette problemer ikke løses effektivt.

Teori om programmeringssprog

Dette område omhandler teori, analyse, karakterisering og implementering af programmeringssprog og forskes aktivt i både praktisk og teoretisk datalogi. Delområdet påvirker stærkt relaterede fagområder som dele af matematik og lingvistik .

Formelle metoder teori

Teorien om formelle metoder omhandler en række forskellige teknikker til den formelle specifikation og verifikation af software og hardwaresystemer . Motivationen for dette område kommer fra teknisk tænkning - streng matematisk analyse hjælper med at forbedre pålideligheden og robustheden af ​​et system. Disse egenskaber er særlig vigtige i systemer, der arbejder i sikkerhedskritiske områder. At undersøge sådanne metoder kræver blandt andet viden om matematisk logik og formel semantik .

Praktisk datalogi

Praktisk datalogi udvikler grundlæggende begreber og metoder til løsning af specifikke problemer i den virkelige verden, for eksempel styring af data i datastrukturer eller udvikling af software . Her spiller udviklingen af algoritmer en vigtig rolle. Eksempler på dette er sorterings- og søgealgoritmer .

Et af de centrale emner i praktisk datalogi er softwareteknologi (også kaldet software engineering ). Hun beskæftiger sig med systematisk oprettelse af software. Koncepter og foreslåede løsninger til store softwareprojekter udvikles også, hvilket bør muliggøre en gentagelig proces fra idéen til den færdige software.

C kildekode Maskinkode (skematisk)
 / **
* Beregning af GCD af to tal
* ifølge den euklidiske algoritme
* /
int ggt ( int nummer1 , int nummer2 ) {
  int temp ;
  mens ( nummer2 ! = 0 ) {
    temp = nummer1 % nummer2 ;
    nummer1 = nummer2 ;
    nummer2 = temp ;
  }
  returnere tal1;
}
→ Kompilator →
 ...
 0010 0100 1011 0111
 1000 1110 1100 1011
 0101 1001 0010 0001
 0111 0010 0011 1101
 0001 0000 1001 0100
 1000 1001 1011 1110
 0001 0011 0101 1001
 0111 0010 0011 1101
 0001 0011 1001 1100
 ...
Skitse af et B-træ

Et vigtigt emne i praktisk datalogi er kompilatorkonstruktion , som også undersøges i teoretisk datalogi. En kompilator er et program, der oversætter andre programmer fra et kildesprog (f.eks. Java eller C ++ ) til et målsprog. En kompiler gør det muligt for en person at udvikle software på et mere abstrakt sprog end det maskinsprog, som CPU'en bruger .

Et eksempel på brugen af ​​datastrukturer er B-træet , som giver mulighed for hurtige søgninger i store databaser i databaser og filsystemer .

Teknisk datalogi

Teknisk informatik beskæftiger sig med det grundlæggende hardware i informatik, såsom mikroprocessorteknologi , computerarkitektur , integrerede og realtidssystemer , computernetværk inklusive den tilhørende systemrelaterede software samt modellerings- og evalueringsmetoder udviklet til dette formål.

Aktivitetsområde inden for teknisk informatik

Mikroprocessorteknologi, computer designproces

Mikroprocessorteknologi domineres af den hurtige udvikling af halvlederteknologi . Strukturbredderne i nanometerområdet muliggør miniaturisering af meget komplekse kredsløb med flere milliarder individuelle komponenter. Denne kompleksitet kan kun mestres med sofistikerede designværktøjer og kraftfulde hardware -beskrivelsessprog . Vejen fra idéen til det færdige produkt fører gennem mange faser, som stort set er computerstøttede og sikrer en høj grad af nøjagtighed og frihed for fejl. Hvis hardware og software er designet sammen på grund af høje krav til ydeevne, betegnes dette også som hardware-software co-design.

Arkitekturer

Die Rechnerarchitektur bzw. Systemarchitektur ist das Fachgebiet, das Konzepte für den Bau von Computern bzw. Systemen erforscht. Bei der Rechnerarchitektur wird z. B. das Zusammenspiel von Prozessoren , Arbeitsspeicher sowie Steuereinheiten ( Controller ) und Peripherie definiert und verbessert. Das Forschungsgebiet orientiert sich dabei sowohl an den Anforderungen der Software als auch an den Möglichkeiten, die sich über die Weiterentwicklung von Integrierten Schaltkreisen ergeben. Ein Ansatz ist dabei rekonfigurierbare Hardware wie z. B. FPGAs (Field Programmable Gate Arrays), deren Schaltungsstruktur an die jeweiligen Anforderungen angepasst werden kann.

Aufbauend auf der Architektur der sequentiell arbeitenden Von-Neumann-Maschine , bestehen heutige Rechner in der Regel aus einem Prozessor, der selbst wieder mehrere Prozessorkerne, Speicher-Controller und eine ganze Hierarchie von Cache -Speichern enthalten kann, einem als Direktzugriffsspeicher ( Random-Access Memory , RAM) ausgelegten Arbeitsspeicher (Primärspeicher) und Ein/Ausgabe-Schnittstellen unter anderem zu Sekundärspeichern (z. B. Festplatte oder SSD-Speicher ). Durch die vielen Einsatzgebiete ist heute ein weites Spektrum von Prozessoren im Einsatz, das von einfachen Mikrocontrollern , z. B. in Haushaltsgeräten über besonders energieeffiziente Prozessoren in mobilen Geräten wie Smartphones oder Tabletcomputern bis hin zu intern parallel arbeitenden Hochleistungsprozessoren in Personal Computern und Servern reicht. Parallelrechner gewinnen an Bedeutung, bei denen Rechenoperationen auf mehreren Prozessoren gleichzeitig ausgeführt werden können. Der Fortschritt der Chiptechnik ermöglicht heute schon die Realisierung einer großen Zahl (gegenwärtige Größenordnung 100…1000) von Prozessorkernen auf einem einzigen Chip ( Mehrkernprozessoren , Multi/Manycore-Systeme, „ System-on-a-Chip “ (SoCs)).

Ist der Rechner in ein technisches System eingebunden und verrichtet dort weitgehend unsichtbar für den Benutzer Aufgaben wie Steuerung, Regelung oder Überwachung, spricht man von einem eingebetteten System. Eingebettete Systeme sind in einer Vielzahl von Geräten des Alltags wie Haushaltsgeräten, Fahrzeugen, Geräten der Unterhaltungselektronik, Mobiltelefonen, aber auch in industriellen Systemen z. B. in der Prozessautomation oder der Medizintechnik im Einsatz. Da eingebettete Computer immerzu und überall verfügbar sind, spricht man auch von allgegenwärtigem oder ubiquitärem Rechnen ( Ubiquitous computing ). Immer häufiger sind diese Systeme vernetzt, z. B. mit dem Internet („ Internet of Things “). Netzwerke von interagierenden Elementen mit physikalischer Eingabe von und Ausgabe zu ihrer Umwelt werden auch als Cyber-Physical Systems bezeichnet. Ein Beispiel sind drahtlose Sensornetze zur Umweltüberwachung.

Echtzeitsysteme sind darauf ausgelegt, dass sie auf bestimmte zeitkritisch ablaufende Prozesse der Außenwelt mit angemessener Reaktionsgeschwindigkeit rechtzeitig antworten können. Dies setzt voraus, dass die Ausführungszeit der Antwortprozesse entsprechende vorgegebene Zeitschranken garantiert nicht überschreitet. Viele eingebettete Systeme sind auch Echtzeitsysteme.

Eine zentrale Rolle bei allen Mehrrechnersystemen spielt die Rechnerkommunikation. Diese ermöglicht den elektronischen Datenaustausch zwischen Computern und stellt damit die technische Grundlage des Internets dar. Neben der Entwicklung von Routern , Switches oder Firewalls , gehört hierzu auch die Entwicklung der Softwarekomponenten, die zum Betrieb dieser Geräte nötig ist. Dies schließt insbesondere die Definition und Standardisierung von Netzwerkprotokollen , wie TCP , HTTP oder SOAP , ein. Protokolle sind dabei die Sprachen, in denen Rechner untereinander Information austauschen.

Bei Verteilten Systemen arbeitet eine große Zahl von Prozessoren ohne gemeinsamen Speicher zusammen. Üblicherweise regeln Prozesse , die über Nachrichten miteinander kommunizieren, die Zusammenarbeit von einzelnen weitgehend unabhängigen Computern in einem Verbund ( Cluster ). Schlagworte in diesem Zusammenhang sind beispielsweise Middleware , Grid-Computing und Cloud Computing .

Modellierung und Bewertung

Als Basis für die Bewertung der genannten Architekturansätze sind – wegen der generellen Komplexität solcher Systemlösungen – spezielle Modellierungsmethoden entwickelt worden, um Bewertungen bereits vor der eigentlichen Systemrealisierung durchführen zu können. Besonders wichtig ist dabei zum einen die Modellierung und Bewertung der resultierenden Systemleistung, z. B. anhand von Benchmark -Programmen. Als Methoden zur Leistungsmodellierung sind z. B. Warteschlangenmodelle , Petri-Netze und spezielle verkehrstheoretische Modelle entwickelt worden. Vielfach wird insbesondere bei der Prozessorentwicklung auch Computersimulation eingesetzt.

Neben der Leistung können auch andere Systemeigenschaften auf der Basis der Modellierung studiert werden; z. B. spielt gegenwärtig auch der Energieverbrauch von Rechnerkomponenten eine immer größere, zu berücksichtigende Rolle. Angesichts des Wachstums der Hardware- und Softwarekomplexität sind außerdem Probleme der Zuverlässigkeit, Fehlerdiagnose und Fehlertoleranz , insbesondere bei sicherheitskritischen Anwendungen, von großer Bedeutung. Hier gibt es entsprechende, meist auf Verwendung redundanter Hardware- bzw. Softwareelemente basierende Lösungsmethoden.

Beziehungen zu anderen Informatikgebieten und weiteren Fachdisziplinen

Die Technische Informatik hat enge Beziehungen zu anderen Gebieten der Informatik und den Ingenieurwissenschaften. Sie baut auf der Elektronik und Schaltungstechnik auf, wobei digitale Schaltungen im Vordergrund stehen ( Digitaltechnik ). Für die höheren Softwareschichten stellt sie die Schnittstellen bereit, auf denen wiederum diese Schichten aufbauen. Insbesondere über eingebettete Systeme und Echtzeitsysteme gibt es enge Beziehungen zu angrenzenden Gebieten der Elektrotechnik und des Maschinenbaus wie Steuerungs- , Regelungs- und Automatisierungstechnik sowie zur Robotik .

Informatik in interdisziplinären Wissenschaften

Unter dem Sammelbegriff der Angewandten Informatik „fasst man das Anwenden von Methoden der Kerninformatik in anderen Wissenschaften … zusammen“ . [1] Rund um die Informatik haben sich einige interdisziplinäre Teilgebiete und Forschungsansätze entwickelt, teilweise zu eigenen Wissenschaften . Beispiele:

Computational sciences

Dieses interdisziplinäre Feld beschäftigt sich mit der computergestützten Analyse, Modellierung und Simulation von naturwissenschaftlichen Problemen und Prozessen. Entsprechend den Naturwissenschaften wird hier unterschieden:

  • Die Bioinformatik (englisch bioinformatics , auch computational biology ) befasst sich mit den informatischen Grundlagen und Anwendungen der Speicherung, Organisation und Analyse biologischer Daten . Die ersten reinen Bioinformatikanwendungen wurden für die DNA -Sequenzanalyse entwickelt. Dabei geht es primär um das schnelle Auffinden von Mustern in langen DNA-Sequenzen und die Lösung des Problems, wie man zwei oder mehr ähnliche Sequenzen so übereinander legt und gegeneinander ausrichtet, dass man eine möglichst optimale Übereinstimmung erzielt ( sequence alignment ). Mit der Aufklärung und weitreichenden Funktionsanalyse verschiedener vollständiger Genome (z. B. des Fadenwurms Caenorhabditis elegans ) verlagert sich der Schwerpunkt bioinformatischer Arbeit auf Fragestellungen der Proteomik , wie z. B. dem Problem der Proteinfaltung und Strukturvorhersage , also der Frage nach der Sekundär- oder Tertiärstruktur bei gegebener Aminosäuresequenz.
    • Die Biodiversitätsinformatik umfasst die Speicherung und Verarbeitung von Informationen zur biologischen Vielfalt. Während die Bioinformatik sich mit Nucleinsäuren und Proteinen beschäftigt, sind die Objekte der Biodiversitätsinformatik Taxa , biologische Sammlungsbelege und Beobachtungsdaten.
    • Künstliches Leben (englisch Artificial life ) wurde 1986 als interdisziplinäre Forschungsdisziplin etabliert. [20] [21] Die Simulation natürlicher Lebensformen mit Software- ( soft artificial life ) und Hardwaremethoden ( hard artificial life ) ist ein Hauptziel dieser Disziplin. [22] Anwendungen für künstliches Leben gibt es heute unter anderem in der synthetischen Biologie, im Gesundheitssektor und der Medizin, in der Ökologie, bei autonomen Robotern, im Transport- und Verkehrssektor, in der Computergrafik, für virtuelle Gesellschaften und bei Computerspielen. [23]
  • Die Chemoinformatik (englisch chemoinformatics , cheminformatics oder chemiinformatics ) bezeichnet einen Wissenschaftszweig, der das Gebiet der Chemie mit Methoden der Informatik verbindet und umgekehrt. Sie beschäftigt sich mit der Suche im chemischen Raum , welcher aus virtuellen ( in silico ) oder realen Molekülen besteht. Die Größe des chemischen Raumes wird auf etwa 10 62 Moleküle geschätzt und ist weit größer als die Menge der bisher real synthetisierten Moleküle. Somit lassen sich unter Umständen Millionen von Molekülen mit Hilfe solcher Computer-Methoden in silico testen, ohne diese explizit mittels Methoden der Kombinatorischen Chemie oder Synthese im Labor erzeugen zu müssen.

Ingenieurinformatik, Maschinenbauinformatik

Die Ingenieurinformatik , englisch auch als Computational Engineering Science bezeichnet, ist eine interdisziplinäre Lehre an der Schnittstelle zwischen den Ingenieurwissenschaften , der Mathematik und der Informatik an den Fachbereichen Elektrotechnik , Maschinenbau , Verfahrenstechnik , Systemtechnik .
Die Maschinenbauinformatik beinhaltet im Kern die virtuelle Produktentwicklung ( Produktionsinformatik ) mittels Computervisualistik , sowie die Automatisierungstechnik .

Wirtschaftsinformatik, Informationsmanagement

Die Wirtschaftsinformatik (englisch (business) information systems , auch management information systems ) ist eine „Schnittstellen-Disziplin“ zwischen der Informatik und den Wirtschaftswissenschaften , besonders der Betriebswirtschaftslehre . Sie hat sich durch ihre Schnittstellen zu einer eigenständigen Wissenschaft entwickelt und kann sowohl an Wirtschafts- als auch an Informatik- Fakultäten studiert werden. Ein Schwerpunkt der Wirtschaftsinformatik liegt auf der Abbildung von Geschäftsprozessen und der Buchhaltung in relationalen Datenbanksystemen und Enterprise-Resource-Planning -Systemen. Das Information Engineering der Informationssysteme und das Informationsmanagement spielen im Rahmen der Wirtschaftsinformatik eine gewichtige Rolle. Entwickelt wurde dies an der Fachhochschule Furtwangen bereits 1971. [13] Ab 1974 richteten die damalige TH Darmstadt, die Johannes-Kepler-Universität Linz und die TU Wien einen Studiengang Wirtschaftsinformatik ein.

Sozioinformatik

Die Sozioinformatik befasst sich mit den Auswirkungen von IT-Systemen auf die Gesellschaft, wie sie z. B. Organisationen und Gesellschaft in ihrer Organisation unterstützen, aber auch wie die Gesellschaft auf die Entwicklung von sozial eingebetteten IT-Systemen einwirkt, sei es als Prosumenten auf kollaborativen Plattformen wie der Wikipedia, oder mittels rechtlicher Einschränkungen, um beispielsweise Datensicherheit zu garantieren.

Sozialinformatik

Die Sozialinformatik befasst sich zum einen mit dem IT-Betrieb in sozialen Organisationen, zum anderen mit Technik und Informatik als Instrument der Sozialen Arbeit, wie zum Beispiel beim Ambient Assisted Living .

Medieninformatik

Die Medieninformatik hat die Schnittstelle zwischen Mensch und Maschine als Schwerpunkt und befasst sich mit der Verbindung von Informatik, Psychologie , Arbeitswissenschaft , Medientechnik , Mediengestaltung und Didaktik .

Computerlinguistik

In der Computerlinguistik wird untersucht, wie natürliche Sprache mit dem Computer verarbeitet werden kann. Sie ist ein Teilbereich der Künstlichen Intelligenz , aber auch gleichzeitig Schnittstelle zwischen Angewandter Linguistik und Angewandter Informatik . Verwandt dazu ist auch der Begriff der Kognitionswissenschaft , die einen eigenen interdisziplinären Wissenschaftszweig darstellt, der ua Linguistik , Informatik, Philosophie , Psychologie und Neurologie verbindet. Anwendungsgebiete der Computerlinguistik sind die Spracherkennung und -synthese , automatische Übersetzung in andere Sprachen und Informationsextraktion aus Texten.

Umweltinformatik, Geoinformatik

Die Umweltinformatik beschäftigt sich interdisziplinär mit der Analyse und Bewertung von Umweltsachverhalten mit Mitteln der Informatik. Schwerpunkte sind die Verwendung von Simulationsprogrammen , Geographische Informationssysteme (GIS) und Datenbanksysteme.
Die Geoinformatik (englisch geoinformatics ) ist die Lehre des Wesens und der Funktion der Geoinformation und ihrer Bereitstellung in Form von Geodaten und mit den darauf aufbauenden Anwendungen auseinander. Sie bildet die wissenschaftliche Grundlage für Geoinformationssysteme (GIS). Allen Anwendungen der Geoinformatik gemeinsam ist der Raumbezug und fallweise dessen Abbildung in kartesische räumliche oder planare Darstellungen im Bezugssystem .

Andere Informatikdisziplinen

Weitere Schnittstellen der Informatik zu anderen Disziplinen gibt es in der Informationswirtschaft , Medizinischen Informatik , Logistikinformatik , Pflegeinformatik und der Rechtsinformatik , Informationsmanagement ( Verwaltungsinformatik , Betriebsinformatik ), Architekturinformatik ( Bauinformatik ) sowie der Agrarinformatik , Archäoinformatik , Sportinformatik , sowie neue interdisziplinäre Richtungen wie beispielsweise das Neuromorphic Engineering . Die Zusammenarbeit mit der Mathematik oder der Elektrotechnik wird aufgrund der Verwandtschaft nicht als interdisziplinär bezeichnet. Mit dem Informatikunterricht , besonders an Schulen, befasst sich die Didaktik der Informatik . Die Elementarinformatik beschäftigt sich mit der Vermittlung von grundlegenden Informatikkonzepten im Vorschul- und Grundschulbereich.

Künstliche Intelligenz

Eine Kohonenkarte beim Lernen

Die Künstliche Intelligenz (KI) ist ein großes Teilgebiet der Informatik mit starken Einflüssen aus Logik , Linguistik , Neurophysiologie und Kognitionspsychologie . Dabei unterscheidet sich die KI in der Methodik zum Teil erheblich von der klassischen Informatik. Statt eine vollständige Lösungsbeschreibung vorzugeben, wird in der Künstlichen Intelligenz die Lösungsfindung dem Computer selbst überlassen. Ihre Verfahren finden Anwendung in Expertensystemen , in der Sensorik und Robotik .

Im Verständnis des Begriffs „Künstliche Intelligenz“ spiegelt sich oft die aus der Aufklärung stammende Vorstellung vom Menschen als Maschine wider, dessen Nachahmung sich die sogenannte „starke KI“ zum Ziel setzt: eine Intelligenz zu erschaffen, die wie der Mensch nachdenken und Probleme lösen kann und die sich durch eine Form von Bewusstsein beziehungsweise Selbstbewusstsein sowie Emotionen auszeichnet.

Die Umsetzung dieses Ansatzes erfolgte durch Expertensysteme, die im Wesentlichen die Erfassung, Verwaltung und Anwendung einer Vielzahl von Regeln zu einem bestimmten Gegenstand (daher „Experten“) leisten.

Im Gegensatz zur starken KI geht es der „schwachen KI“ darum, konkrete Anwendungsprobleme zu meistern. Insbesondere sind dabei solche Anwendungen von Interesse, zu deren Lösung nach allgemeinem Verständnis eine Form von „ Intelligenz “ notwendig scheint. Letztlich geht es der schwachen KI somit um die Simulation intelligenten Verhaltens mit Mitteln der Mathematik und der Informatik; es geht ihr nicht um Schaffung von Bewusstsein oder um ein tieferes Verständnis der Intelligenz. Ein Beispiel aus der schwachen KI ist die Fuzzylogik .

Neuronale Netze gehören ebenfalls in diese Kategorie – seit Anfang der 1980er Jahre analysiert man unter diesem Begriff die Informationsarchitektur des (menschlichen oder tierischen) Gehirns. Die Modellierung in Form künstlicher neuronaler Netze illustriert, wie aus einer sehr einfachen Grundstruktur eine komplexe Mustererkennung geleistet werden kann. Gleichzeitig wird deutlich, dass diese Art von Lernen nicht auf der Herleitung von logisch oder sprachlich formulierbaren Regeln beruht – und somit etwa auch die besonderen Fähigkeiten des menschlichen Gehirns innerhalb des Tierreichs nicht auf einen regel- oder sprachbasierten „Intelligenz“-Begriff reduzierbar sind. Die Auswirkungen dieser Einsichten auf die KI-Forschung, aber auch auf Lerntheorie , Didaktik und andere Gebiete werden noch diskutiert.

Während die starke KI an ihrer philosophischen Fragestellung bis heute scheiterte, sind auf der Seite der schwachen KI Fortschritte erzielt worden.

Informatik und Gesellschaft

„Informatik und Gesellschaft“ (IuG) ist ein Teilbereich der Wissenschaft Informatik und erforscht die Rolle der Informatik auf dem Weg zur Informationsgesellschaft. Die dabei untersuchten Wechselwirkungen der Informatik umfassen die unterschiedlichsten Aspekte. Ausgehend von historischen, sozialen, kulturellen Fragen betrifft dies ökonomische, politische, ökologische, ethische, didaktische und selbstverständlich technische Aspekte. Die entstehende global vernetzte Informationsgesellschaft wird für die Informatik als zentrale Herausforderung gesehen, in der sie als technische Grundlagenwissenschaft eine definierende Rolle spielt und diese reflektieren muss. IuG ist dadurch gekennzeichnet, dass eine interdisziplinäre Herangehensweise, insbesondere mit den Geisteswissenschaften, aber auch z. B. mit den Rechtswissenschaften notwendig ist.

Siehe auch

Portal: Informatik – Übersicht zu Wikipedia-Inhalten zum Thema Informatik

Literatur

Weblinks

Wiktionary: Informatik – Bedeutungserklärungen, Wortherkunft, Synonyme, Übersetzungen
Commons : Informatik – Sammlung von Bildern, Videos und Audiodateien
Wikibooks: Regal:EDV – Lern- und Lehrmaterialien

Einzelnachweise

  1. a b Duden Informatik A – Z: Fachlexikon für Studium, Ausbildung und Beruf, 4. Aufl., Mannheim 2006. ISBN 978-3-411-05234-9 .
  2. Gesellschaft für Informatik: Was ist Informatik? Unser Positionspapier, S. 8 ff. Abgerufen am 9. Februar 2021 .
  3. Friedrich L. Bauer: Historische Notizen zur Informatik . Springer Science & Business Media, 2009, ISBN 978-3-540-85789-1 , S.   36 ( eingeschränkte Vorschau in der Google-Buchsuche [abgerufen am 25. Februar 2017]).
  4. Arno Pasternak: Fach- und bildungswissenschaftliche Grundlagen für den Informatikunterricht in der Sekundarstufe I (Dissertation). (PDF; 14,0 MB) 17. Mai 2013, S. 47 , abgerufen am 31. Juli 2020 (mit einem Faksimile des einleitenden Abschnitts aus den SEG-Nachrichten 4/1957).
  5. Tobias Häberlein: Eine praktische Einführung in die Informatik mit Bash und Python . Oldenbourg Verlag, 2011, ISBN 978-3-486-71445-6 , S.   5 ( eingeschränkte Vorschau in der Google-Buchsuche [abgerufen am 25. Februar 2017]).
  6. Präsentation zur 40-jährigen Geschichte der GI und der Informatik ( Memento vom 23. Dezember 2012 im Internet Archive ) (PDF; 3,1 MB)
  7. Friedrich L. Bauer: Historische Notizen zur Informatik . Springer Science & Business Media, 2009, ISBN 978-3-540-85789-1 , S.   36 ( eingeschränkte Vorschau in der Google-Buchsuche [abgerufen am 25. Februar 2017]).
  8. Wolfgang Coy : Geschichten der Informatik. Visionen, Paradigmen, Leitmotive . Hrsg.: Hans Dieter Hellige. Springer, 2004, ISBN 3-540-00217-0 , S.   475 .
  9. Start of study as from winter semester 2012/2013 – Fakultät für Informatik der Technischen Universität München. In: www.in.tum.de. Abgerufen am 7. September 2015 .
  10. a b c d Christine Pieper: Hochschulinformatik in der Bundesrepublik und der DDR bis 1989/1990 . In: Wissenschaft, Politik und Gesellschaft . 1. Auflage. Franz Steiner Verlag, Stuttgart 2009, ISBN 978-3-515-09363-7 .
  11. Fakultät für Informatik: Geschichte. Abgerufen am 13. September 2019 .
  12. 40 Jahre Informatik in München: 1967–2007 / Festschrift ( Memento vom 17. Mai 2011 im Internet Archive ) (PDF) S. 26 auf in.tum.de , abgerufen am 5. Januar 2014.
  13. a b Geschichte der HS Furtwangen
  14. Geschichte des Universitätsbereichs im KIT
  15. https://www.jku.at/die-jku/ueber-uns/geschichte/
  16. Kurze Geschichte der Technischen Universität Wien ( Memento vom 5. Juni 2012 im Internet Archive )
  17. University of Cambridge: A brief informal history of the Computer Laboratory
  18. University of Cambridge: Cambridge Computing: The First 75 Years , S. 96.
  19. Konrad Zuse – der Namenspatron des ZIB (abgerufen am 27. Juli 2012)
  20. Christopher Langton: Studying Artificial Life with Cellular Automata. In: Physics 22ID:120-149
  21. Christopher Langton: What is Artificial Life? (1987) pdf ( Memento vom 11. März 2007 im Internet Archive )
  22. Marc A. Bedau: Artificial life: organization, adaptation and complexity from the bottom up
  23. Wolfgang Banzhaf, Barry McMullin: Artificial Life. In: Grzegorz Rozenberg, Thomas Bäck, Joost N. Kok (Hrsg.): Handbook of Natural Computing. Springer 2012. ISBN 978-3-540-92909-3 (Print), ISBN 978-3-540-92910-9 (Online)