Dienstag, 18. Dezember 2012

Wird Mathematik von Informatikern (immer noch) überbetont ‒ vor allem im Studium?

Informatik und Mathematik sind ein Fächerpaar, dessen Verhältnis völlig anders ist als das zwischen Physik und Mathematik. Deshalb ist kaum etwas von dem, was in einem früheren Beitrag dazu gesagt wurde, hier anwendbar. Wie die Elektrotechnik aus der Physik, so ist die Informatik aus der Mathematik hervorgegangen. Wer das leugnet, ignoriert die geschichtlichen Tatsachen. Dennoch muss man fragen, ob nicht beide Fächer sich noch klarer trennen sollten als bisher. Das ist völlig undenkbar, werden viele an Hochschulen tätige Informatiker sagen. Sie sind davon sogar überzeugt, wie es ihre Altvorderen waren.

Wechselbeziehung zur Mathematik

In der Vergangenheit tat man so, als ob jeder Ingenieur oder Informatiker im Beruf ein Einzelkämpfer sei, der sich, in irgendeiner Einöde sitzend, mit einer Logarithmentafel oder einem Taschenrechner bewaffnet durchschlagen muss. Die meisten von uns arbeiten heute in Firmen, wo es nicht mehr nötig ist, dass jeder alles kann. Manche Firmen können sich außer Informatikern sogar Mathematiker leisten. Natürlich wird es weiterhin Mathematiker geben. Nur braucht nicht jeder Informatiker gleichzeitig ein guter Mathematiker zu sein, so wie nicht jeder Elektroingenieur ein guter Physiker sein muss. Die Trennung muss auch dann erfolgen, wenn Mathematiker (oder Physiker) deshalb leiden müssen, d.h. wenn ihr Einfluss abnimmt. Dass diese Art von Trennung nicht immer einfach zu vollziehen ist, ist klar. Das gilt für beide Seiten. Natürlich bleibt auch danach die Mathematik die Grundlage oder das Fundament der Informatik. Die Computerisierung setzt die Mathematisierung voraus. Aber nicht alles ist gleich wichtig. 


Mathematik und Informatik haben ganz verschiedene Aufgaben. Die Mathematik liefert Methoden und Werkzeuge zur formalen Beschreibung von Objekten und Abläufen der Algebra, Geometrie, Physik, Technik oder Wirtschaft. Chemie und Biologie sind weniger betroffen. Die Beschreibungen, welche die Mathematik liefert, sind deshalb meistens elegant, weil sie idealisiert sein dürfen. Die Informatik liefert Methoden und Werkzeuge zur Automation von Rechen-, Datenerfassungs-, Datenmanipulations- und Datenhaltungsaufgaben in Industrie, Wirtschaft, Wissenschaft, Verwaltung, Verkehr, Medien, Gesundheitswesen und im Privatbereich. Insbesondere finden sie Anwendung bei Positionierungs-, Strukturierens-, Transport-, Zuteilungs- und Fertigungsaufgaben. Die benutzten Beschreibungen müssen nicht nur der Wirklichkeit recht nahe kommen, sie müssen auch von endlich großen Rechnern in endlicher Zeit verarbeitet werden können. Es müssen daher immer Kompromisse zwischen Genauigkeit und Aufwand gefunden werden.

Viel gravierender noch sind die Unterschiede in der Denkweise. An einigen Beispielen sei dies illustriert. Die Informatik benutzt logische Prädikate zum Suchen und mathematische Funktionen zum Verarbeiten. Die Prädikate müssen alle entscheidbar und die Funktionen berechenbar sein. Andere kommen nicht vor, es sei denn man hat in der Spezifikation einen Fehler gemacht. Bei allen Iterationsverfahren müssen Informatiker wissen, dass sie entweder terminieren oder immer laufen. Eine unbestimmte Situation ist nicht akzeptabel. Deshalb müssen sie die mathematisch abgeleitete Aussage, dass es hier auch unbestimmbare Prädikate geben kann (Turings Halteproblem) bewusst ignorieren. Statt sich mit Grundsätzlichem zu begnügen, müssen sie nämlich alle Prädikate und Funktionen, die sie verwenden, schrittweise von unten nach oben genauestens analysieren und verifizieren. Es ist wie bei Medizinern. Obwohl es sich theoretisch um ein unlösbares Problem handelt, muss man Menschen helfen am Leben zu bleiben, solange es geht.

Manchmal decken sich die Sichtweisen. Um das Leistungsverhalten von Informatik-Systemen vor ihrer Fertigstellung abschätzen zu können, muss man die Komplexität von Funktionen abschätzen (im Sinne der Klassen O(n) oder O(n2)). Nicht die Rechenergebnisse sind dabei von Interesse, sondern das dynamische Verhalten. Dazu dient das Modellieren. Man möchte Zuschauer spielen und den Verlauf von Kurven betrachten.

Besonderheiten der Informatik

Ein wesentlicher Grund dafür, dass Automatisierung betrieben wird und dass Computer so erfolgreich sind, ist der Wunsch und die Notwendigkeit Komplexität zu verstecken. Das gilt auch für die mathematische Komplexität. Wer immer noch davon spricht, Komplexität zu reduzieren, weiß nicht wovon er redet oder hat revolutionäre Absichten. Er will alle Menschen gleich machen und allen gleiche Bedürfnisse, gleiche Güter und gleiche Wünsche zuweisen. Bessere Benutzbarkeit gibt es nur durch gesteigerte Komplexität. Das gleiche gilt für bessere Zuverlässigkeit und bessere Sicherheit.

Die Informatik ist ihrer handwerklichen Phase entwachsen. Immer weniger Informatiker schreiben noch optimierende Compiler, die mathematische und logische Gesetzmäßigkeiten ausnutzen. Für viele mathematische Berechnungen gibt es längst Standardwerkzeuge e.g. Mathematica. Man darf sie nutzen, ohne ihre Interna zu verstehen. Das gleiche erwarten wir Informatiker von Betriebswirten, Ärzten, Flugzeugpassagieren und Autofahrern, was Informatik-Produkte anbetrifft. 

 Interpolation

Man kann Probleme mathematisieren ohne Mathematiker zu sein, genauso wie man automatisieren kann, ohne Informatiker zu sein. Informatiker wissen, dass Verifizierung nur durch Redundanz in der Beschreibung ermöglicht wird (redundante Spezifikationen, Zusicherungen, Testfälle). So etwas ist Mathematikern zuwider; es kann nur Kopfschütteln verursachen. Interpolationen wie Extrapolationen sind nichts anderes als Spekulationen, und umgekehrt.

Was wir als Theoretische Informatik bezeichnen, ist meistens versteckte Mathematik. Interessant ist, dass es weder einen theoretischen Maschinenbau noch eine theoretische Mathematik gibt. Wie des Öfteren gesagt, wäre es schön, wenn wir Informatiker hätten, die eine Theorie der Informatik entwickeln würden (wie einige theoretische Physiker das für die Physik tun).

Auswirkungen auf das Studium

Mit Bologna verbanden wir Praktiker die Hoffnung, dass es gelänge auch das Informatik-Studium zu entrümpeln und zu straffen. Stattdessen verlängert es sich auf nahezu acht Jahre. Schuld daran ist weder die Politik noch die Bürokratie. Die Fachverantwortlichen scheinen dies zu wollen, indem sie den international sehr verbreiteten Bachelor-Abschluss abwerten und den Master zum Regelabschluss erklären. Es ist dies eine Rücksichtslosigkeit gegenüber der Jugend, der Wirtschaft und der Gesellschaft.

Es ist mein Eindruck, dass Mathematik immer noch rund 50% des Zeitanteils (Leistungspunkte) am Bachelor-Studium besitzt. Dieser Brocken kann und muss zurückgedrängt werden. Er verlängert das Studium in nicht vertretbarem Maße. Die Mathematik belastet Studierende mehr als andere Fächer. Sie lässt viele scheitern, die Mathematik nie brauchen würden, aber dringend im Markt gebraucht werden. 

Verbesserungen in der Ausbildung erfordern Spezialisierung, also Vertiefung. Es geht nicht, ohne dass Breite verloren geht. In Stuttgart gelang es Jochen Ludewig einen mehr konstruktiv ausgerichteten Studiengang (Softwaretechnik) zu etablieren. Er konnte dies nur, indem er alle Kurse, die Rechner-Architektur betreffen, eliminierte unter Beibehaltung der vollen Mathematik. Ich halte dies für die falsche Wahl. Stuttgarter Absolventen, die sich nur für Software interessieren, sind wie Ärzte, die kein Blut sehen wollen.

Wertvoll aus Sicht der Studierenden ist vor allem aktuelles Wissen, also Wissen, das in unserer Generation entstand. Dass Vorlesungen in Mathematik bei Professoren beliebt sind, kann daran liegen, dass man sie halten kann, ohne selbst Informatiker zu sein, ja ohne selbst neu nachdenken zu müssen. Man kann sich mit dem Stoff kaum blamieren. Man betet nur nach, was anerkannte Koryphäen zu Lehrbuchwissen erklärt haben. Vielleicht findet man auch noch die Übungs- und Prüfungsaufgaben irgendwo. Würde man über aktuell bedeutende Programmiermethoden, Datenorganisationen oder Rechnernetze unterrichten, müsste man das Geschehen im Markt verfolgen. Microsofts C#, Hasso Plattners HANA oder Googles GFS sind nur Beispiele.

Wer für das Leben junger Menschen Verantwortung empfindet, wird sich nicht mit dem Nachplappern alten Wissens zufrieden geben. Er wird sich bemühen, das zu tun, was bei den Auszubildenden zur Erreichung einer Lebensleistung und zur beruflichen Orientierung nützlich ist. Er wird sich auch nicht davon täuschen lassen, dass während einer Arbeitsmarkt-Hausse, ‒ so wie jetzt ‒ ihm alle Absolventen aus der Hand gerissen werden. Er wird sich fragen, wie sich die Qualifizierung laufend verbessern und das Studium effizienter gestalten lässt.

Veränderte Berufswelt

Im Vergleich zu früher haben wir heute – dank Informatik – zu jeder Tages- und Nachtzeit, an jedem Ort der Welt einen unmittelbaren und sofortigen Zugriff zu Wissen. Es handelt sich dabei nicht nur um das aktuelle Wissen aller Fachgebiete, sondern das Wissen aller Zeiten. Was Fachwissen betrifft, haben Hochschulen ihr teilweises Monopol verloren. Sich Wissen auf Vorrat anzueignen, ist überflüssig geworden. Das Wissen, welches man im Studium erwirbt, reicht für einen immer geringer werdenden Teil des Berufslebens. Umso mehr müssen junge Menschen Fähigkeiten entwickeln, komplexe Probleme zu erkennen, zu strukturieren und zu lösen. Sie müssen lernen Neues zu erfinden, Konzepte und Visionen zu entwickeln, ökonomische, soziale und ökologische Nebenwirkungen abzuschätzen und zu reduzieren. Schließlich müssen sie Menschen überzeugen und mitnehmen.

Die Mathematisierung und Computerisierung von Problembereichen schreitet fort. Informatiker sind gefordert, Gemeinsamkeiten und Unterschiede zu erkennen und zu berücksichtigen. Sie müssen als verantwortungsbewusste Professionals die nicht nur unter Laien grassierende Modellgläubigkeit und Berechnungsgläubigkeit durchbrechen. Wie einst der Club of Rome so extrapolieren Wissenschaftler aller Couleur immer wieder vorhandene Daten auf unzulässige Weise. Sie nehmen lineares oder exponentielles Wachstum an, also eine (mathematische) Welt ohne Störungen. Zuletzt waren es die schnellsten Programmierer der Welt, die bei Banken die waghalsigsten Algorithmen implementierten. Bertrand Meyer, ein in Zürich tätiger Kollege, hat neulich diese Denker gemeint, als er fragte, auf welche mathematische Funktion sie wohl tippten, wenn sie die Zahlenfolge 1, 4, 9, 16 sähen? Alle naiven Rechnernutzer glauben es zu wissen. Durch diese vier Punkte können unendlich viele Kurven gelegt werden. Das weiß (hoffentlich) jeder Informatiker, der sich mit den Grundlagen des Programm-Testens befasst hat.

Dass eine doppelte Abbildung von der Realität auf ein mathematisches Modell, und von dort auf die numerische Darstellung im Computer auch eine doppelte Fehlerquelle ist, wissen auch alle (gut ausgebildeten) Informatiker. Schließlich hängt der Lösungswert einer Gleichung von der benutzten Gleitkomma-Arithmetik ab.

Schlussgedanken

Wie lernt man all dies, was für ein erfolgreiches und verantwortliches Wirken als Informatikerin oder Informatiker dringend nötig ist? Sicherlich nicht durch noch mehr Mathematik oder mehr (aristotelische) Logik oder mehr (kantsche) Philosophie, sondern durch wesentlich vertiefte Informatik-Kenntnisse, plus etwas Ökonomie. Allmählich ist die Zeit reif, dass in der Informatik-Ausbildung Informatik-Wissen Vorrang bekommt gegenüber Wissen aus Fachgebieten, die zwar eine lange historische Tradition aber nur noch beschränkte Relevanz besitzen.

Gewisse Parallelen bestehen zu der Diskussion um die Rolle von Latein. Lange erschien es unverzichtbar. Nur so lerne man logisches Denken, hieß es. Meine Kinder kamen bereits ohne es aus. Ob meine Enkel ‒ sollten sie Informatik studieren ‒ mit weniger Mathematik auskommen werden als die heutigen Studierenden, ist fraglich. Bei der Generation danach bin ich es mir sicher.

Nicht nur drängen erheblich größere Teile eines Jahrgangs in akademische Berufe als bevor, wir benötigen auch mehr höher qualifiziertes Personal als in früheren Zeiten. Diese doppelte Aufgabe zu lösen, verlangt ein Höchstmaß an Flexibilität im Bildungssystem. Mir scheint, da müssen wir alle noch viel lernen. Mit Lernen ist hier gemeint neues Wissen zu erschließen.

1 Kommentar:

  1. Für einen Mathematiker ist nur das ein Problem, was sich mit mathematischen Methoden und Mitteln erkennen und bearbeiten lässt. Mit bearbeiten meine ich lösen, lindern oder umgehen.
    Ob in der Informatik mehr als 10% aller Probleme diese Bedingungen erfüllen, ist fraglich.

    AntwortenLöschen

Hinweis: Nur ein Mitglied dieses Blogs kann Kommentare posten.