+5 Daumen
106 Aufrufe


1. EinfĂŒhrung

Was ist einer der grundlegendsten Unterschiede zwischen einem Informatiker und einem Nicht-Informatiker? Seine Denkweise! Computational Thinking ist eine der zentralen FĂ€higkeiten, die Informatiker wĂ€hrend ihres Studiums erlernen und dann zum Lösen von Problemen einsetzen. In vielen LĂ€ndern (so auch in Deutschland) wird bereits darĂŒber nachgedacht, wie man bereits SchĂŒlerinnen und SchĂŒlern diese FĂ€higkeiten beibringen kann und zwar unabhĂ€ngig davon, ob sie spĂ€ter einmal Informatik oder Germanistik.studieren wollen. Denn Computational Thinking ist nicht, wie es der Name vermuten lĂ€sst, das "Denken wie ein Computer", sondern vielmehr ein Problemlösungsprozess, der weit ĂŒber die Informatik alleine hinausgeht.

In meinem Kurs "Algorithmen verstehen" geht es also nicht nur darum, die Funktionsweise diverser Algorithmen nachzuvollziehen und anwenden zu können, sondern auch darum die FĂ€higkeiten zu erwerben, selbst Algorithmen entwickeln zu können. Es ist egal, ob du SchĂŒler oder Student der Biologie, BWL, Chemie, Physik, Geologie oder Informatik bist: Computational Thinking ist in allen Wissenschafts- und Alltagsbereichen eine in Zukunft unverzichtbare FĂ€higkeit. Um diese FĂ€higkeit zu erwerben, musst du die folgenden Teilbereiche meistern:

- Ein Problem in mehrere Bestandteile zerlegen. In der Literatur ist das z. B. das Zerlegen eines Gedichts in das Reimschema, die Struktur, den Stil, die Bedeutung usw.. Wenn du ein Problem in seine Bestandteile zerlegst, erhĂ€ltst du ein besseres VerstĂ€ndnis ĂŒber seine eigentliche Natur.

- Musterkennung. In den Wirtschaftswissenschaften sind Muster z. B. in dem Verkauf bestimmter Waren finden. Man erkennt z. B., dass in den Monaten Juni bis September ein erhöhter Verkauf von Eiscreme zu verzeichnen ist und kann sich dann auf die Suche nach den GrĂŒnden begeben. Daraus kann man dann wiederum Verkaufsmodelle entwickeln, die langfristig Gewinne erwirtschaften. Es lohnt sich also durchaus auch fĂŒr einen selbst, sich mit solchen Modellen zu beschĂ€ftigen.

- Abstraktion. Durch Abstraktion identifiziert man die grundlegenden Prinzipien, die fĂŒr die beobachteten bzw. erkannten Muster sorgen. Wenn du als Muster den sehr guten Geschmack deiner gebackenen KĂ€sekuchen erkannt hast, identifizierst du im nĂ€chsten Schritt, was dafĂŒr gesorgt hat, dass der KĂ€sekuchen so lecker war. SpĂ€ter kannst du die Ergebnisse deiner Abstraktion dazu nutzen, um Algorithmen (also Rezepte) zu entwerfen, die es auch anderen ermöglichen, leckere KĂ€sekuchen zu backen.

- Algorithmenentwurf. Am Ende eines Problemlösungsprozesses steht der Algorithmenentwurf, in dem du die Lösung als konkrete Handlungsanweisungen formulierst.

Das klingt im ersten Moment alles vielleicht etwas trocken. Du wirst mit der Zeit aber merken, dass du langfristig von dieser Art zu denken profitieren wirst. Egal, ob in der Schule, an der Uni oder im Alltag.

Die Informatik beschÀftigt sich mit der systematischen Verarbeitung von Informationen. Dabei werden u. a. auch Fragen geklÀrt wie:

- Wie visualisiert man Informationen?

- Wie speichert man Informationen am besten?

- Wie verarbeitet man Informationen?

Die Informatik befasst sich also auch mit Berechnungsmodellen und ihren Anwendungen unter Zuhilfenahme von Computern. Computational Thinking auf der anderen Seite umfasst Fertigkeiten und Denkweisen, die genutzt werden, um solche Berechnungsmodelle zu entwerfen und Computerprogramme zu schreiben.

Der Mathematiker und Erziehungswissenschaftler Seymour Papert war ĂŒbrigens der erste, der den Begriff "Computational Thinking" verwendet hat. Laut ihm mĂŒsse Mathematik ganz anders unterrichtet werden als es bisher der Fall gewesen wĂ€re. Man mĂŒsse Mathematik so vermitteln, wie Computer arbeiten. Die Informatikerin Jeannette Wing ist der festen Überzeugung, dass Computational Thinking das Wichtigste sei, das ein Informatiker in seinem Studium lernt. Sie sieht die Vorteile jedoch nicht nur im Informatik-Umfeld, sondern auch in vielen Bereichen jenseits der Computerwissenschaft. Sie ist diejenige, der wir die PopularitĂ€t des Computational Thinkings zu verdanken haben, da durch ihre Argumente die Firma Microsoft mehrere Millionen Dollar zur VerfĂŒgung stellte, um ein Zentrum zu errichten, in dem Computational Thinking und auch sein Einfluss auf andere Wissenschaftsdisziplinen fernab der Informatik, untersucht werden kann.

2. Algorithmisches Denken

Ein HerzstĂŒck des Computational Thinkings ist das Denken in Algorithmen. Auch wenn Douglas Adams "42" als die Antwort auf alle Fragen des Lebens, des Universums und des ganzen Rests propagierte, ist fĂŒr einen Informatiker eine Lösung ein Algorithmus. Ein bestimmtes Sudoku zu lösen, ist im Kontext des Computational Thinkings keine Leistung - ein Algorithmus, mit dem man ein beliebiges Sudoku lösen kann, hingegen schon! Bleiben wir doch beim Sudoku-Beispiel: Wenn du mehrere Sudokus gelöst hast, wirst du dir sicherlich eine Strategie ĂŒberlegt haben, wie du die leeren KĂ€stchen schrittweise mit den richtigen Zahlen fĂŒllst. Und genau das, was du dir dort ĂŒberlegt hast, ist ein Algorithmus. Das ist eine Lösung, die im 21. Jahrhundert etwas wert ist! Wenn man den Algorithmus zum Lösen eines Sudokus auf andere Sudokus anwendet, erhĂ€lt man auch fĂŒr diese eine Lösung oder kommt zur Erkenntnis, dass ein bestimmtes Sudoku ĂŒberhaupt nicht eindeutig lösbar ist.

Das Entscheidende hierbei ist, dass man Sudokus ohne wirklich nachzudenken lösen kann, wenn du genaue Anweisungen formulierst, wie ein Sudoku zu lösen ist. Durch das Formulieren dieser Regeln ist ein Computer dann in der Lage, jede erdenkliche Variation eines Sudokus (oder eines anderen Problems) zu löse und zwar, indem er die von dir definierten Handlungsanweisungen/Regeln stumpf befolgt. Diese Herangehensweise an Probleme (also das Entwerfen von allgemeinen Algorithmen statt spezieller Lösungen fĂŒr bestimmte AusprĂ€gungen des Problems) ist das, was die FĂ€higkeit des algorithmischen Denkens und somit auch des Computational Thinkings so mĂ€chtig macht:

- Ein Algorithmus zum Lösen von KreuzwortrÀtseln löst eine ganze Gruppe von KreuzwortrÀtseln (und nicht nur eines).

- Ein Algorithmus zum Lösen quadratischer Gleichungen löst eine ganze Gruppe von quadratischen Gleichungen (und nicht nur eine).

- Ein Algorithmus zum Erkennen von Hunden auf Bildern, erkennt Hunde auf einer ganzen Gruppe von Bildern (und nicht nur auf einem).

Es reicht zum Beispiel nicht aus zu wissen, dass 40+2=42 ist. Ein Informatiker möchte einen Algorithmus haben, der ALLE Additionsaufgaben lösen kann. In der Grundschule lernt jeder SchĂŒler bereits einen Algorithmus kennen, mit dem er Zahlen addieren kann und einmal gelernt, kann er ihn auf viele verschiedene Probleme anwenden. Das ist der Grund dafĂŒr, dass GrundschĂŒler ĂŒberhaupt rechnen können ohne sich jedesmal von Grund auf neu ĂŒberlegen zu mĂŒssen, wie man Zahlen addiert. Ein Computer kann auch rechnen (und zwar viel, viel besser als es ein Mensch je könnte). Und warum kann er das? Weil er, wie ein GrundschĂŒler, von seinem Lehrer (dem Menschen) einen Algorithmus dafĂŒr beigebracht bekommen hat, wie man rechnet. Die Sprachen, die der Mensch dafĂŒr verwendet hat, sind Programmiersprachen. Deshalb lernen wir in meiner Reihe "Alle Programmiersprachen lernen" die Konzepte des Programmierens kennen und erkennen diese dann in verschiedenen Programmiersprachen wieder. Das ist der Teilbereich "Abstraktion" des Computational Thinkings.

Es geht jedoch nicht, wie es bisher den Anschein hatte, um reine Berechnungen. Wer in Algorithmen denkt, kann die Welt nachhaltig verĂ€ndern. Die GrĂŒnder von Google, Facebook und Amazon sind der beste Beweis dafĂŒr. Wenn du fĂŒr ein Problem einen Algorithmus formulierst statt nur eine konkrete Lösung anzugeben und diesen dann noch als Programm einem Computer beibringst, kannst du den Algorithmus blind fĂŒr dich arbeiten lassen:

- Du kannst dir Filme und Serien, die nur zu bestimmten Zeiten laufen, automatisiert mitschneiden lassen.

- Zudem kannst du einen Roboter deine Wohnung saugen lassen, wÀhrend du auf der Arbeit bist.

Bei dem Fragenportal LETSROCKMATHE haben wir es uns zur Aufgabe gemacht, dein Lern- und ErklĂ€rverhalten zu analysieren und dadurch einen Algorithmus zu entwerfen, der dich optimal beim Lernen und Helfen unterstĂŒtzt.

3. Der Einfluss auf andere Wissenschaften

Wie bereits angeklungen ist, kann Computational Thinking auch die Art, wie wir Wissenschaft betreiben, beeinflussen. Es kann also nicht nur auf das Auffinden von Algorithmen als Lösung von Problemen reduziert werden.

Betrachten wir einmal die klassische Arbeitsweise in den naturwissenschaftlichen FĂ€chern. Diese basiert auf Experimenten. WĂ€hrend Mediziner Arzneimitteltests durchfĂŒhren, Chemiker verschiedene Stoffe zur Reaktion bringen und Physiker Versuche in der realen Welt durchfĂŒhren, arbeiten Biologen am lebenden Organismus. Wenn man eine Theorie hat, wie z. B. Krebsgewebe Zellen im menschlichen Körper angreift, welchen Einfluss Handystrahlen auf die KonzentrationsfĂ€higkeit des Menschen hat oder wie eine Ameisenkönigin ihre Arbeiter kontrolliert, fĂŒhrt man klassischerweise Experimente durch. Ein Informatiker kann solche Versuche auch durchfĂŒhren, nur entwirft er dazu Algorithmen, die genauso wie die am Experiment beteiligten Parteien arbeiten. Informatiker schaffen auf Basis solcher Algorithmen also Computermodelle, mit dem sie solchen Forschungsfragen durch Simulation nachgehen können. Innerhalb des Computermodells können dann solche Experimente durchgefĂŒhrt werden und mĂŒssen nicht in die reale Welt verlagert werden, was enorme Kostenersparnisse bedeutet. Wenn die aufgestellten Hypothesen korrekt sind, verhĂ€lt sich die Simulation wie vorhergesagt. Andernfalls stimmt etwas mit der Annahme nicht. Das ist wissenschaftliche Arbeit par ex­cel­lence. Derartige Computermodelle sind aber selbstverstĂ€ndlich nur möglich, weil wir im Laufe der Jahrzehnte sehr viel Wissen in den jeweiligen Bereichen sammeln konnten, die eine Simulation ĂŒberhaupt erst ermöglichen. Das Computermodell kann aber auch weitere GesetzmĂ€ĂŸigkeiten zutage fördern, die dann wiederum in der realen Welt ĂŒberprĂŒft werden können.

Computational Thinking ist eine fundamental wichtige Reihe von Techniken, die uns Werkzeuge an die Hand geben, mit denen wir bestehende Dinge optimieren und noch tiefer ĂŒber die uns umgebende Welt nachdenken können.

Dieser Artikel hat 50 Bonuspunkte erhalten. Schreib auch du einen Artikel.
geschlossen: Mathe-Artikel
von 3,4 k

wow, spannender ansatz. Kann man diese denkweise auch lernen?

Kann man diese denkweise auch lernen?

Ja, in meiner Reihe "Algorithmen verstehen", an der ich aktuell fĂŒr meinen YouTube-Kanal arbeite :)

Ein anderes Problem?

Stell deine Frage

Ähnliche Fragen

0 Daumen
1 Antwort
0 Daumen
1 Antwort
0 Daumen
1 Antwort
0 Daumen
1 Antwort

Willkommen bei der Mathelounge! Stell deine Frage sofort und kostenfrei

x
Made by a lovely community
...