Informatik
Informatik bezeichnet die Wissenschaft von der systematischen Verarbeitung von Informationen, insbesondere der automatischen Verarbeitung mit Hilfe von Rechenanlagen.
Geschichte der Informatik
Begriffsbildung
Der Begriff Informatik ist zusammengesetzt aus den Wörtern Information und Automatik. Das Wort wurde in Deutschland erstmals 1957 von Karl Steinbuch, damals Mitarbeiter der Standard Elektrik Gruppe, in einer Veröffentlichung über eine Datenverarbeitungsanlage für das Versandhaus Quelle gebraucht. Der in Europa geprägte Begriff Informatik deckt unter anderem die Felder ab, die im Englischen mit computer science und information systems bezeichnet werden. In Skandinavien wird der Begriff Datalogi als Bezeichnung verwendet.
Ursprung der Wissenschaft
Die Wurzeln der Informatik liegen in der Mathematik, der Physik und der Elektrotechnik (hier vor allem der Nachrichtentechnik). Als Ingenieurwissenschaft konzipiert die Informatik mathematische Maschinen, mit denen Daten übertragen, gespeichert und durch Algorithmen automatisch verarbeitet werden können. Damit ermöglicht die Informatik insbesondere die maschinelle Simulation realer Prozesse. Als Hilfswissenschaft anderer Fachgebiete bildet die Informatik deren Gegenstände in abstrakte Strukturen ab und deren Prozesse in Algorithmen.
Als Überbegriff rund um die Informationsverarbeitung sowie die entsprechenden Berufe hat sich die Informationstechnik (IT) etabliert.
Vorläufer des Computers

Als erste Vorläufer der Informatik jenseits der Mathematik können die Bestrebungen zur Ausführung maschineller Berechnungen betrachtet werden. Als einfache Rechengeräte leisten Abakus (Rechentafel) und später der Rechenschieber unschätzbare Dienste. 1641 konstruiert Blaise Pascal eine mechanische Rechenmaschine, die Additionen inklusive Überträgen durchführen kann. Nur wenig später stellt Gottfried Wilhelm Leibniz eine Rechenmaschine vor, die alle vier Grundrechenarten beherrscht. Diese Maschinen basieren auf ineinandergreifenden Zahnrädern. Einen Schritt in Richtung größerer Flexibilität geht ab 1838 Charles Babbage, der eine Steuerung der Rechenoperationen mittels Lochkarten anstrebt. Erst Herman Hollerith ist aufgrund der technischen Fortschritte ab 1886 in der Lage, diese Idee gewinnbringend umzusetzen. Seine auf Lochkarten basierenden Zählmaschinen kommen unter anderem bei der Auswertung einer Volkszählung in den USA zum Einsatz.
Entwicklung des Computers

Eine der ersten größeren Rechenmaschinen ist die von Konrad Zuse erstellte, noch immer rein mechanisch arbeitende Z1 von 1937. Vier Jahre später realisiert Zuse seine Idee mittels elektrischer Relais: Die Z3 von 1941 verfügt bereits über eine Trennung von Befehls- und Datenspeicher und ein Ein-/Ausgabepult. Etwas später werden in England die Bemühungen zum Bau von Rechenmaschinen zum Knacken von deutschen Geheimbotschaften unter maßgeblicher Leitung von Alan Turing mit großem Erfolg vorangetrieben. Die nächsten wesentlichen Entwicklungsschritte erfolgen in den USA. Einer der Hauptakteure ist hier John von Neumann, nach dem die bis heute bedeutende Von-Neumann-Architektur benannt ist. 1946 erfolgt die Entwicklung des Röhrenrechners ENIAC, 1949 wird der EDSAC gebaut. Ab 1952 steigt IBM in die Entwicklung von Computern ein und steigt innerhalb von zehn Jahren zum Marktführer auf. Mit der Entwicklung der Transistortechnik und der Mikroprozessortechnik werden Computer von dieser Zeit an immer leistungsfähiger und preisgünstiger und erobern schließlich den Massenmarkt.
Entwicklung der Informatik als Wissenschaft
Bereits Leibniz hatte sich mit binären Zahlendarstellungen beschäftigt. Gemeinsam mit der Booleschen Algebra, die zuerst 1847 von George Boole ausgearbeitet wurde, bilden sie die wichtigsten mathematischen Grundlagen späterer Rechensysteme. 1936 veröffentlicht Alan Turing seine epochemachende Arbeit On Computable Numbers, in welcher die nach ihm benannte Turingmaschine vorgestellt wird, ein mathematisches Maschinenmodell, das bis heute für die Theoretische Informatik von größter Bedeutung ist. Bereits einige Jahre zuvor hatte Kurt Gödel das Entscheidungsproblem gemäß dem Hilbertprogramm negativ beantwortet, und dieses Ergebnis bestätigte Turing nun unter Verwendung eines Maschinenmodells. Dem Begriff der Berechenbarkeit liegen bis heute universelle Modelle wie die Turing- oder Registermaschine zu Grunde, und auch die Komplexitätstheorie, die sich ab den 1960er Jahren zu entwickeln begann, greift bis in die Gegenwart auf Varianten dieser Modelle zurück.
Formale Sprachen und Programmiersprachen
1956 beschreibt Noam Chomsky eine Hierarchie formaler Grammatiken, mit denen formale Sprachen und jeweils spezielle Maschinenmodelle korrespondieren. Diese Formalisierungen erlangen für die Entwicklung höherer Programmiersprachen große Bedeutung. Wichtige Meilensteine sind die Entwicklung von FORTRAN (1954), Lisp (1959), Basic (1960), C (1970), Pascal (1971), Smalltalk (1980) und Java (1995). Einige dieser Sprachen stehen für typische Programmierparadigmen ihrer jeweiligen Zeit. Sprachen und Paradigmenwechsel wurden von der Informatik-Forschung jeweils intensiv begleitet oder vorangetrieben.
Indessen schreibt nahezu jeder wichtige Teilbereich der Informatik seine eigene Geschichte, die im Einzelnen zu verfolgen den Rahmen dieses Abschnitts sprengen würde. Wie in anderen Wissenschaften auch, schreitet die Informatik mit zunehmender Nähe zur Gegenwart in Richtung einer immer größeren Spezialisierung fort.
Bedeutung der Informatik in der Moderne
Die Informatik hat in praktisch allen Bereichen des modernen Lebens Einzug gehalten. Offensichtlich wird dies durch den enormen Einfluss des Internets verstärkt. Die weltweite Vernetzung revolutionierte die Unternehmenskommunikation und Logistik, die Medien aber auch praktisch alle privaten Haushalte. Weniger offensichtlich, aber allgegenwärtig ist die Informatik in Haushaltsgeräten wie Videorekordern oder Spülmaschinen, in denen sogenannte Embedded Systems die mehr oder weniger intelligente Steuerung übernehmen.
Computer können große Datenmengen in kurzer Zeit verwalten, sichern, austauschen und verarbeiten. Um dieses zu ermöglichen, ist die Interaktion komplexer Hardware- und Softwaresysteme nötig, die auch das wesentliche Forschungsgebiet der Informatik darstellen. Als Beispiel mag die Wikipedia selbst dienen, in der 50.000 Anwender und Millionen von Besuchern täglich tausende Artikel suchen, lesen und bearbeiten.
Die Stärken von Computersystemen liegen darin, algorithmische Berechnungen auch auf großen Datenmengen mit hoher Geschwindigkeit ausführen zu können. Viele scheinbar alltägliche Intelligenzleistungen des Menschen basieren jedoch auf kognitiven Leistungen (wie z.B. dem Erkennen von Formen und Gesichtern, dem Treffen von Entscheidungen bei nur unvollständig gegebener Information), die von Computern bis heute nur sehr eingeschränkt zu erbringen sind. Derartige Prozesse werden von der Künstlichen Intelligenz untersucht. In einzelnen Teildisziplinen konnten dabei bereits beachtliche Ergebnisse erzielt werden. Von einer umfassenden Simulation menschlicher Intelligenz kann dabei jedoch noch nicht gesprochen werden.
Die Teildisziplinen in der Informatik
Die Informatik unterteilt sich selbst in die wesentlichen Teilgebiete der Theoretischen Informatik, der Praktischen Informatik und der Technischen Informatik. Neben diesen Hauptsäulen gibt es noch die Bereiche Künstliche Intelligenz sowie Informatik und Gesellschaft, die als interdisziplinäre Disziplinen z.T. eigenständig sind.
Die Anwendungen der Informatik in den verschiedenen Bereichen des täglichen Lebens sowie in anderen Fachgebieten, wie beispielsweise der Wirtschaftinformatik, Geoinformatik, Medizininformatik, werden unter dem Begriff der Angewandten Informatik geführt.
Im Wesentlichen kann dabei die Theoretische Informatik als Grundlage für die weiteren Teilgebiete betrachtet werden. Sie liefert fundamentale Erkenntnisse für die Berechenbarkeit von Problemen, für die Einordnung ihrer Komplexität und für die Formalisierung von Automaten und Sprachen.
Auf dieser Grundlage bauen die Praktische Informatik und die Technische Informatik auf. Sie beschäftigen sich mit zentralen Problemen der Informationsverarbeitung und bieten pragmatisch anwendbare Lösungen. Hierbei sind diese beiden Teilgebiete eng ineinander verzahnt und unterscheiden sich nur durch das Maß der Nähe zur Mikroelektronik. Aus Sicht der Informatik ist die Elektronik jedoch mehr ein Hilfsmittel und nicht Teil der Kernforschung in der Informatik. In der Praktischen Informatik versucht man weitgehend von der Elektronik unabhängige Lösungen zu erarbeiten.
Die Resultate finden schließlich Verwendung in der Angewandten Informatik. Diesem Bereich sind Hardware- und Software-Realisierungen zuzurechnen und damit ein Großteil des kommerziellen IT-Marktes. In den interdisziplinären Fächern wird darüber hinaus untersucht, wie die Informationstechnik Probleme in anderen Wissenschaftsgebieten lösen kann. Als Beispiel mag hier die Entwicklung von Geodatenbanken für die Geografie dienen, aber auch die Wirtschafts- oder Bioinformatik.
Theoretische Informatik

Die Theoretische Informatik beschäftigt sich mit der Theorie formaler Sprachen bzw. Automatentheorie, Berechenbarkeits- und Komplexitätstheorie, Logik (u. a. Aussagenlogik und Prädikatenlogik), formaler Semantik und bietet Grundlagen für den Bau von Compilern von Programmiersprachen und die mathematische Formalisierung von Problemstellungen. Sie ist somit das formale Rückrat der Informatik.

Automaten sind in der Informatik gedachte Maschinen, die sich nach bestimmten Regeln, dem Programm, verhalten. Ein endlicher Automat hat eine endliche Menge von inneren Zuständen. Er liest ein Eingabewort zeichenweise ein und führt bei jedem Zeichen, gemäß seinem Programm einen Zustandsübergang durch. Zusätzlich kann er bei jedem Zustandsübergang ein Ausgabesymbol ausgeben. Ein endlicher Automat hat einen besonders gekennzeichneten Startzustand und eine Menge von Endzuständen. Erreicht der Automat nach einer Folge von Zustandsübergängen einen Endzustand, so bedeutet dies, dass das gelesene Wort in der Sprache vorhanden ist, der Automat akzeptiert es also. Die Menge aller von einem Automaten akzeptierter Wörter bezeichnet man als die akzeptierte Sprache.

Um kompliziertere Sprachen akzeptieren zu können, sind andere Automatenmodelle notwendig, die insbesondere über einen Speicher verfügen müssen. Die Menge aller Wörter, die aus einer Folge von Buchstaben a gefolgt von einer gleichgroßen Anzahl von Buchstaben b bestehen, kurz , kann durch einen Kellerautomaten akzeptiert werden, der einen Stapelspeicher zur Verfügung hat und sich somit merken kann, wie oft der Buchstabe a gelesen wurde und wie oft der Buchstabe b deshalb folgen muss.
Der Linguist Noam Chomsky ordnete die formalen Sprachen in eine Hierarchie ein, die zwischen regulären, kontextfreien und kontextsensitiven Sprachen unterscheidet. Erstere werden mit endlichen Automaten, zweitere von Kellerautomaten und letztere von linear beschränkten Turingmaschinen erkannt.
Berechenbarkeitstheorie
Im Rahmen der Berechenbarkeitstheorie untersucht die Theoretische Informatik, welche Probleme mit welchen Maschinen lösbar sind. Die churchsche These geht davon aus, dass Register- und Turingmaschinen genau die gleiche Klasse von Problemen berechnen können und dass es keine Maschine gibt, die berechnungsstärker ist. Diese These ist formal nicht beweisbar, wird jedoch allgemein akzeptiert.
Komplexitätstheorie
Die Komplexitätstheorie befasst sich mit der Komplexität von algorithmisch behandelbaren Problemen auf verschiedenen mathematisch definierten formalen Rechnermodellen, sowie der Güte der sie lösenden Algorithmen. Die Komplexität eines Algorithmus wird üblicherweise in der Landau-Notation dargestellt. Bei der Bewertung eines Algorithmus hinsichtlich seiner Komplexität betrachtet man üblicherweise in erster Linie seine Laufzeit in Abhängigkeit der Länge der Eingabe sowie den Speicherbedarf. Ein Algorithmus, dessen Laufzeit von der Eingabelänge unabhängig ist, arbeitet "in konstanter Zeit", man schreibt O(1). Beispielsweise wird das Programm "gib das erste Element einer Liste zurück" in konstanter Zeit arbeiten. Das Programm "prüfe, ob ein bestimmtes Element in der Liste enthalten ist" braucht "lineare Zeit", also O(n), denn die Eingabeliste muss genau einmal komplett gelesen werden.
Es gibt verschiedene Sortierverfahren, die unterschiedlich effizient arbeiten. Bubblesort hat beispielsweise quadratische Laufzeit, effizientere Sortierverfahren wie Quicksort und Heapsort schaffen O(n log(n)). Mit der "Komplexität des Problems" ist die Komplexität des schnellsten, es lösenden Algorithmus gemeint.
Praktische Informatik
Die Praktische Informatik beschäftigt sich mit der Lösung von konkreten Problemen der Informatik und insbesondere der Softwaretechnik. Sie liefert nicht nur grundlegende Konzepte zur Lösung von Standardaufgaben, wie die Datenstrukturen und Algorithmen, welche Teil jeder Software sind. Sie stellt insbesondere auch die Werkzeuge zum Entwicklen der Software bereit. So werden in der Praktischen Informatik die Programmiersprachen wie Visual Basic, Java oder C++ entwickelt. Insbesondere auf diesem Gebiet hat die Zusammenarbeit zwischen Praktischer und Theoretischer Informatik zu bahnbrechenenden Verbesserungen geführt. Nur durch die Grundlage der Formalen Sprachen ist die effizente Erstellung von modernen Computersprachen möglich.
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hallo Welt!");
}
}
Eines der zentralsten Themen der Informatik überhaupt, ist die Softwaretechnik, die ebenfalls in den Bereich der Praktischen Informatik fällt. Sie beschäftigt sich mit der systematischen Erstellung von Software. Dabei werden die Ergebnisse aller anderen Bereiche, wie Algorithem und Programmiersprachen, eingesetzt. Zusätzlich werden aber auch Konzepte und Lösungsvorschläge für große Softwareprojekte entwickelt, die einen wiederholbaren Prozess von der Idee, bis zur fertigen Software erlauben sollen. Dabei ist die eigentliche Programmierarbeit, die sogenannte Implementierung, nur noch ein kleiner Teil des Gesamtprozesses.

Neben diesen Grundlagen wendet sich die Praktische Informatik auch speziellen Lösungen für bestimmte Aufgaben zu. Hier sind insbesondere die Betriebssysteme und zunnehmend die Datenbanktechnologie zu nennen. Sie verwalten die Betriebsmittel eines Computers und garantieren die zuverlässige Speicherung aller Informationen. Auf Grund der essentiellen Bedeutung dieser hochkomplexen Softwaresystemen, sind zahlreiche Algorithmen für den Einsatz in Betriebsystemen und Datenbanken entwickelt worden. Ein Beispiel hierfür ist der B-Baum, der in Datenbanken und Dateisystemen, das schnelle Suchen in grossen Datenbeständen erlaubt.
Technische Informatik
Die Technische Informatik befasst sich mit den hardwareseitigen Grundlagen der Informatik wie etwa der Mikroprozessortechnik, Rechnerarchitekturen und verteilten Systemen.
Dieses Fachgebiet entwickelt Mikroprozessor-Chips basierend auf Integrierten Schaltkreisen. Dazu gehört das Entwickeln von CPUs wie auch von Controllern oder Speicher.
Rechnerkommunikation

Die Rechnerkommunikation ist die Wissenschaft des elektronischen Datenaustausches zwischen Computern. Dies beinhaltet die Entwicklung und Anwendung von Netzwerkkomponenten, wie Routern, Switches oder einer Firewall, aber auch die notwendigen Softwarekomponenten, die diese Geräte betreiben. Wesentlich dazu ist Definition sogenanntern Netzwerkprotokolle, die festlegen, in welcher Sprache zwei Computer mit einander „reden“.
Rechnerarchitektur
Rechnerarchitektur definiert sich aus den Attributen und des Verhaltens eines Computers, wie dieser von einem Systemprogrammierer gesehen wird. Diese Definition umfasst den Befehlssatz, die Befehlsformate, die Opcodes, die Adressierungsarten und alle Register und Speicher, die direkt durch einen Maschinenspracheprogrammierer verändert werden können. Die Implementation ist durch den tatsächlichen Hardwareaufbau, das logische Design und die Organisation der Datenpfade einer bestimmten Ausführung der Architektur definiert.
Verteilte Systeme
Ein verteiltes System ist ein Zusammenschluss unabhängiger Computer oder Prozesse, welcher sich für den Benutzer als ein einzelnes System präsentiert. Schlagworte in diesem Zusammenhang sind beispielsweise Grid-Computing und Middleware.
Informatik in interdisziplinären Wissenschaften
Rund um die Informatik haben sich einige interdisziplinäre Forschungsansätze, teilweise zu eigenen Wissenschaften, entwickelt:
Bioinformatik
Die Bioinformatik (englisch bioinformatics, auch computational biology) ist eine Wissenschaft, die sich mit den informatischen Grundlagen und Anwendungen der Speicherung, Organisation und Analyse von biologischen Daten befasst.
Cheminformatik
Die Cheminformatik (engl. chemoinformatics, cheminformatics oder chemiinformatics) bezeichnet einen Wissenschaftszweig, der das Gebiet der Chemie mit Methoden der Informatik verbindet und umgekehrt.
Computerlinguistik
In der Computerlinguistik wird untersucht, wie natürliche Sprache mit dem Computer verarbeitet werden kann. Sie ist eigentlich ein Teilbereich der Künstlichen Intelligenz aber auch gleichzeitig Schnittstelle zwischen Linguistik und Informatik. Verwandt dazu ist auch der Begriff der Kognitionswissenschaft, die einen eigenen interdisziplinären Wissenschaftszweig darstellt, der u.a. Linguistik, Informatik, Philosophie, Anthropologie, Psychologie und Neurologie verbindet.
Computervisualistik
Die Computervisualistik ist eine interdisziplinäre Informatik-Disziplin, die sich mit allen Formen der Bilderzeugung, Bildverarbeitung und Bildgestaltung mittels des Computers auseinandersetzt, wobei Forschungsschwerpunkte auf Computergrafik, Simulation, Visualisierung und Computerspielen liegen. Sie wird auch als Teilgebiet der angewandten Informatik gesehen.
Geoinformatik
Die Geoinformatik (englisch geoinformatics) ist die Lehre des Wesen 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.
Künstliche Intelligenz (KI)

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.
Im Verständnis des Begriffs „Künstliche Intelligenz“ spiegelt sich oft die aus der Aufklärung stammende Vorstellung vom Menschen als Maschine wieder, 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.
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 von Intelligenz.
Während die starke KI an ihrer philosophischen Fragestellung bis heute scheiterte, sind nur auf der Seite der schwachen KI in den letzten Jahren Fortschritte erzielt worden.
Die Verfahren der KI finden Anwendung in Expertensystemen, in der Sensorik und Robotik.
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.
Medizininformatik
Die Medizinische Informatik befasst sich mit der theoretischen, praktischen und (computer-)technischen Prozess-Steuerung von Datenverarbeitung in der Medizin.
Rechtsinformatik
Die Rechtsinformatik befasst sich als interdisziplinäre wissenschaftliche Disziplin mit den Querbezügen von Rechtswissenschaft und Informatik.
Umweltinformatik
Die Umweltinformatik beschäftigt sich mit der computertechnischen Erfassung, Bewertung und Darstellung von Umweltsachverhalten.
Wirtschaftsinformatik
Die Wirtschaftsinformatik (englisch 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.
Mit dem noch immer fortschreitenden Einzug von Informationstechnik in alle Lebensbereiche sind Informatiker maßgeblich (oft indirekt) an Entscheidungen beteiligt, wer über was und wie informiert ist, welche Handlungen in einem System möglich sind und wie damit Macht ausgeübt werden kann. Einer der bekanntesten Computerkritiker ist der Informatiker Joseph Weizenbaum.
Siehe auch
- Siehe Portal Informatik als Wegweiser zu Artikeln rund um die Informatik.
- Siehe IT-Berufe für eine Übersicht der Berufe rund um die Informatik.
Literatur
- Heinz-Peter Gumm, Manfred Sommer: Einführung in die Informatik. 5. Auflage. Oldenbourg, München 2002, ISBN 3-486-25635-1
- Sascha Kersken: Kompendium der Informationstechnik. Galileo Press, Bonn 2003, ISBN 3-89842-355-7 (OpenBook-Version)
- Peter Rechenberg, Gustav Pomberger (Hrsg.): Informatik-Handbuch, 3. Auflage. Hanser 2002, ISBN 3-446-21842-4
- Gesellschaft für Informatik: Was ist Informatik? Positionspapier der Gesellschaft für Informatik. (PDF) Juli 2005
Weblinks
Vorlage:Wiktionary1 Vorlage:Wikiquote1
Deutschland
- Liste mit Informatikstudiengängen an deutschen Hochschulen
- Tutorials zu den Kerngebieten der Informatik RA,DB,ST,KI und BS
- Materialien zum Grundstudium in Informatik
- Gesellschaft für Informatik e.V. (GI)