Schlagwort-Archiv: Informatik

SE 2013 – Dinner

Eindrücke aus dem Workshop SEUH 2013 und der Software Engineering Multikonferenz 2013

Auf dem Workshop »Software Engineering im Unterricht an Hochschulen 2013«, der Bestandteil der Software Engineering Multikonferenz 2013 war, gab es einiges, was mir hängen blieb. Die Konferenz fand statt an der RWTH Aachen, die ja schon Erstsemester Roboter mit MATLAB und Lego Mindstorms bauen lässt, und ich freute mich besonders, dass wir dieses Ereignis sponserten. Ein paar Gedanken sind mir besonders aufgefallen, diese möchte ich hier teilen. Weiterlesen

Clouds von theaucitron (CC-BY-SA)

Gesamtsystem-Optimierung per Simulation als Erfolgsfaktor

Dr. Stefan Kampmann, Bereichsvorstand für Elektrofahrzeug- und Hybridsysteme bei Bosch, hat einen meines Erachtens sehr wichtigen Artikel im ATZblog zum Thema Systemkompetenz im Automobil geschrieben. Er schreibt »Eine reine Optimierung einzelner Komponenten ist dabei [bei der Nutzung von Hybrid- und elektrischen Antrieben] nicht ausreichend. Die Suche nach optimalen Lösungen hinsichtlich Zusammenspiel und Effizienz muss bereits auf Gesamt-Systemebene ansetzen und dann in Subsysteme und Produkte weitergeführt werden.« Simulation dürfte dafür Schlüsseltechnologie sein.

Ich finde dieser Beitrag, besonders auch mit dem Hinweis am Anfang auf die gesellschaftliche Bedeutung von Innovation bei Transportkonzepten und Systemdefinition, gehört in den Grundkanon der Ingenieursausbildung. Bei allem Detailwissen, bei aller perfekter lokaler Auslegung und Domänenwissen kann eines leicht aus dem Fokus geraten: Dass schließlich und endlich das System den Nutzen erbringen muss, nicht einzelne Funktionalitäten, nicht einzelne Elemente. Das gesamte System muss ein möglichst optimales Ergebnis liefern.

Dieses optimale Ergebnis ist oftmals nicht im endlosen Optimieren einzelner Komponenten zu finden – Gunter Duecks Supramanie lässt grüßen –, sondern erst im Zusammenspiel, in der gesamtheitlichen Betrachtung des Systems. Viele moderne Systeme lassen sich durch den einzelnen jedoch kaum noch im Zusammenspiel und Wirkweise der einzelnen Parameter aller Komponenten überblicken, eine rein analytische Auslegung oder Optimierung wird unmöglich, weil das Gesamtsystem hoch nichtlinear ist. Stark vereinfacht fängt der Entwickler an, einzelne Stellschrauben zu verändern in der Hoffnung, das sich das Gesamtsystemverhalten in der darauf folgenden Messung oder Versuchsfahrt verbessert. Dreht er an anderen Stellschrauben, kann sich dies auch wieder verschlechtern. Manuell ist aufs Gesamtsystem bezogen also wenig zu holen.

Man müsste die Möglichkeit haben, hunderte oder tausende von Stellschraubenänderungen zusammen mit dem dazugehörigen Versuch gleichzeitig und automatisch durchführen zu können. Die Technologie dafür heißt Simulation und wird mit vielerlei Werkzeugen – seien es die meines Arbeitgebers, MATLAB & Simulink, oder auch  andere Simulationstools – seit Jahren für Teilsysteme oder einzelne Komponenten durchgeführt. Wie wäre es nun, die Simulation tatsächlich in größerem Maßstab durchzuführen? Und nicht nur einmal, nicht nur zehn mal, sondern hunderte, tausende Male? Und die Parameteroptimierung dabei automatisch durchführen zu lassen? Nicht nur für einen oder zwei, sondern für dutzende Parameter? Automatische Parameteroptimierung auf numerischer Basis gibt es schon. Aber auf einem Computer kommen Sie bei derartigen Aufgabenstellungen freilich nicht. Vielleicht bekommen Sie noch einmal das Modell unter, installieren dafür aber besser die 64-bit-Version des Simulators. Aber die Simulationszeit? Ist kein prinzipielles Hindernis, denn parallelisierbar ist das ganze auch schon. (Vorsicht: 2 Produktlinks). Rechenzeit sollte doch heutzutage kein limitierender Faktor mehr sein. Was hindert Sie daran, tausende von Simulationsläufen durchzuführen, von denen jeder ein paar Stunden dauert? Dass Sie nur einen kleinen Cluster zur Verfügung haben? Wozu gibt es Clouds? Simulation funktioniert auch in Clouds wie Amazons EC2.

Und wenn Sie Simulationen nicht einfach nur platt von vorn bis hinten durchführen, sondern die Simulation des Aufstartverhaltens Ihres Systems vielleicht als Schnappschuss abspeichern und erst dort zu simulieren anfangen, wo es interessant wird, dann sparen Sie sich von jedem Simulationslauf nochmals Zeit. Und wenn Sie dann noch Abstraktionsebenen sinnvoll wählen und Detail nur dort modelliert ist, wo es auch notwendig ist, dann laufen die Modelle auch. Ein Gerüst zur Wahl der Abstraktionsebene in verschiedenen Dimensionen bietet übrigens das Kapitel über Abstraktion in meiner Dissertation. Informatik und Ingenieurswissenschaften gehören hier zusammen.

Prinzipielle Anwendungen einiger Aspekte können Sie auch in den Aufzeichnungen der Vorträge von Scania zum Thema Spritsparen und Loren Dean zum Thema Parallelisierung auf der MathWorks Automotive Conference 2010 sehen, oder auch in der dazugehörigen Keynote.

Ist das einfach, ein Gesamtsystemmodell so zu integrieren, dass es tatsächlich noch in einem heutigen Computer simuliert werden kann? Nein, das wird mit Sicherheit kein Spaziergang. Das ganze dann noch stabil in die Cloud bringen? Es wird die Hölle, zumindest am Anfang. Was aber ist die Alternative? So weitermachen wie bisher und denken Sie (= Ihre Organisation) kommen damit ewig durch? Optimierungspotential auf der Strasse lassen?

Die Technologie der Simulation kann und wird sich nur in dem Maße vereinfachen und verbessern, in dem Sie genutzt und an ihre Grenzen und darüber hinaus getrieben wird. Es liegt in Ihrer Hand, die fußballfeldergroßen Hallen voller Computerracks, die an den Flüssen dieser Welt stehen, für Innovation im Ingenieurbereich, speziell der Antriebstechnik, zu nutzen. Und es liegt an Ihnen, der Software, genauer gesagt den Softwareherstellern immer mehr abzuverlangen. Aber simulieren Sie!

Kampmann schließt mit den Worten »Wer ins System investiert, wird in Zukunft den Markt für Hybrid- und Elektrofahrzeug aktiv mitgestalten.« Und ins System investieren heißt Systemverständnis herstellen, vertiefen und verfeinern, um dann mit diesem Verständnis arbeiten und optimieren zu können. Simulation ist der Schlüssel. Tun Sie was!

Was meinen Sie? Lassen Sie es die anderen Leser und mich bitte wissen.

Disclaimer

Ich arbeite für MathWorks, den Hersteller von MATLAB & Simulink und bringe die Begeisterung für diese Software bisweilen auch in Blogbeiträgen, Tweets, Kommentaren, Posts auf Facebook, Google+ und Xing zum Ausdruck. Die Meinung in diesem Blogbeitrag gibt nicht notwendigerweise die Meinung von MathWorks wider, sondern meine persönliche.

(Foto: theaucitron auf Flickr, Lizenz Creative Commons-BY-SA)

Warum wir die Digitale Gesellschaft brauchen

(c) Digitale Gesellschaft, CC-BY-SA

(c) Digitale Gesellschaft, CC-BY-SA

In einem Post auf Facebook fragte die Gesellschaft für Informatik e.V. (kurz GI), ob wir die neugegründete Organisation Digitale Gesellschaft e.V. brauchen. Ich meinte ja, sie meinten auch ja, aber »Warum schon wieder eine neue Organisation? Es gibt den CCC, es gibt weitere NGO’s, es gibt die Piraten, es gibt Sascha Lobo usw….und die FDP…« [GI1] (immer sauber zitieren, vor allem als Dr.). Um kurz den Kontext zu setzen, empfiehlt sich die Lektüre des Artikels »Wir sind die digitale Gesellschaft«. Zentrale Themen sind Lobby-Transparenz, Urheberrecht, Datenschutz, Open Data, Netzneutralität und Vorratsdaten.

Also, warum eine neue Organisation und nicht eine der oben genannten? Liebe GI, deren Mitglied ich seit vielen Jahren bin:

  • CCC (Chaos Computer Club): Ist nach eigener Auskunft »die größte europäische Hackervereinigung«. Verfolgt meines Erachtens nach ähnliche Ziele wie die Digitale Gesellschaft, gilt aber gemeinhin eben als Organisation von Nerds, Hackern und ist eher technisch denn politisch/soziologisch orientiert.
  • Piratenpartei: Ist eben eine Partei. Hatte eine kurze Hochphase vor der vergangenen Bundestagswahl, viele interessante Ansätze, verlor sich seitdem in der Institutionalisierung, die als Partei eben unabdingbar ist. Und nachdem sich eine Partei von der anderen nichts sagen lässt, ist die Wahrscheinlichkeit, dass sich die etablierten Parteien hier Rat holen, verschwindend gering. Hätte in der Anfangszeit meines Erachtens durchaus das Potential zu einer ordentlichen NGO gehabt.
  • Sascha Lobo: Kenne ich nur als Einzelperson, nicht als Organisation. Wobei die Organisation seiner Haare natürlich beachtlich ist. Zudem würde ich ihn nicht unbedingt als zentrale Autorität zu den Themen der Digitalen Gesellschaft bezeichnen, sondern eher im Onlinemarketing verorten.
  • FDP: Nicht wirklich, oder? Unter Netzpolitik findet sich genau 1 Artikel. Auf der Seite der FDP Bundespartei (wo ist der Unterschied?) findet sich lesenswertes im Artikel »Internet«, in dem im Kontext Urheberrecht auch nur von Verwertungsgesellschaften, aber nie vom Urheber/Autor geschrieben wird. Ansonsten dominiert eher die Sorge um die Wirschaft als um die Gesellschaft.

Vom GI nicht genannt (warum eigentlich nicht?):

  • Gesellschaft für Informatik: Laut eigenen Angaben sind die Ziele hauptsächlich in der beruflichen und wissenschaftlichen Förderung der Informatik und der Austausch darüber zu finden. Meines Erachtens damit eher technisch-wirtschaftlich orientiert. Das lässt sich auch an der Liste der Fachbereiche ablesen: 8 Fachbereiche mit interner-technologischer Ausrichtung, 1 zu Ausbildung, 3 zu Anwendungsbereichen. Es gibt tatsächlich auch den Fachbereich Informatik und Gesellschaft, dessen Reichweite leider nur »mehrere Hundert subskribierte Leserinnen und Leser« [GI2] beträgt und sich tatsächlich eher mit dem theoretischen Unterbau als mit praktischen und aktuellen gesellschaftlichen Erwägungen beschäftigt. Finde ich gut, reicht halt nicht. Die Digitale Gesellschaft hat schon 2000 Follower Reichweite allein auf Twitter.
  • BITKOM – Bundesverband Informationswirtschaft, Telekommunikation und neue Medien e.V.: Ist laut eigenen Angaben »das Sprachrohr der IT-, Telekommunikations- und Neue-Medien-Branche.« [BK1] Also explizit ausgerichtet an Wirtschaft, nicht der Gesellschaft.

Vier der sechs genannten braucht Deutschland. Aber das reicht eben nicht, aus den genannten Gründen. Habe ich noch eine relevante Organisation vergessen? Dann bitte in die Kommentare damit!

Da hinter der Digitalen Gesellschaft e.V. unter anderem Markus Beckedahl von Netzpolitik.org dahintersteht, ist eine Autorität zu den zentralen angesprochenen Themenbereichen präsent, wenngleich auch dies diskutiert wird. Deshalb freue ich mich, dass es seit heute die Digitale Gesellschaft gibt (Update: und nicht nur ich, sondern beispielsweise auch Christian Buggisch). Ich weiß nicht, was daraus wird, ob es ein Erfolg wird oder nicht, das wird sich zeigen. Ob der Verein die Transparenz, die er fordert, auch selbst praktizieren wird. Wie die Arbeit denn ganz konkret aussehen wird. Das alles wird sich zeigen. Doch hier zählt allein schon das initiale Engagement. Nicht gegen Parteien, sondern mitgestalten.

Gestalten heißt nämlich für etwas sein, nicht dagegen.

Vier Gründe, Informatik zu studieren für unsere Gesellschaft

von http://office.microsoft.com/en-us/images/similar.aspx#ai:MP900262446|

Ein dreifach donnernds Jawoll und Danke möchte ich Stefan Jähnichen zurufen, Präsident der Gesellschaft für Informatik. Denn er hat zehn Gründe vorgelegt, Informatik zu studieren. Ich möchte seine Gründe noch erweitern, denn meiner Erfahrung nach haben junge Menschen dieser Tage eben nicht nur sich selbst im Sinn, sondern fragen zunehmend auch nach demselbigen, wollen sich gesellschaftlich engagieren. Und auch dafür ist ein Informatikstudium geeignet, wenn man sich die größeren Zusammenhänge bewußt macht:

  1. Ein immer größer werdender Teil der Wertschöpfung deutscher Maschinenbauunternehmen – und dazu zähle ich auch den Automobilbau – wird durch Software generiert. Die deutsche Wirtschaft profitiert von Informatikern, die den Mehrwert hervorragender Ingenieurleistungen in den Systemen für die Kunden durch Software noch vergrößern.
    Wir brauchen studierte Informatiker, die offen für die Welt und Methoden der Ingenieursdisziplinen sind wie etwa Regelungssysteme für Lastkraftwagen.
  2. Informatik gestaltet eine Kulturtechnik. Ebenso wie die Technologie Buchdruck und Fernsehen unsere Gesellschaft verändert haben, so verändert auch die Allgegenwärtigkeit von Computern und Software die Gesellschaft. Die Errungenschaften der Informatik wechselwirken mit Soziologie und Politik.
    Wir brauchen studierte Informatiker, die nicht nur Systeme entwerfen, sondern sich auch mit deren gesellschaftlichen Auswirkungen beschäftigen und sie den Nicht-Informatikern und vor allem Politikern näher bringen.
  3. Softwaresysteme sind zunehmend von elementarer Bedeutung für den Betrieb von Unternehmen. Software bildet Unternehmensprozesse ab, beschleunigt diese oder macht sie überhaupt erst möglich, wie beispielsweise automatische Preisbildung.
    Wir brauchen studierte Informatiker, die Mathematik in automatische betriebswirtschaftliche Abläufe umsetzen.
  4. Wie oben angeführt, bedingt Originalität von Systemen eben Software, oftmals verbunden mit cleveren originären Ideen von Ingenieuren wie der SmartBird von Festo. In einer Welt, in der etablierte Produkte einem erheblichen Kostendruck unterworfen sind, wird Innovativität wird zum entscheidenden Standortfaktor für Deutschland.
    Wir brauchen studierte Informatiker, die die Herausforderung zusammen mit Ingenieuren annehmen, mit den Unternehmen im globalen Wettbewerb zu bestehen.

Unsere Jugend ist meiner Meinung nach bei weitem nicht so unpolitisch, wie ihr oft unterstellt wird. Eine Hilfestellung, wie sich ein Gefühl, etwas bewegen zu wollen, konkret umsetzen läßt, finde ich daher notwendig.

Was meinen Sie, wo hat Informatik noch eine zentrale Bedeutung für unsere Gesellschaft?

Vortrag auf der ICST 2011: It‘s Math That Drives Things – Simulink as Simulation and Modeling Environment

Auf der IEEE International Conference on Software Testing, Verification and Validation (ICST) in Berlin hatte ich die Gelegenheit, als Informatiker eine Gruppe von größtenteils ebenfalls Informatikern über die Bedeutung von dynamischer Simulation für den Software- und Systemtest aufzuklären.

In zwölf Minuten ging es vom Beispiel einer Windkraftanlage im Modell bis hin zu den Verifikations- und Validierungsmethoden, die in MATLAB & Simulink vorhanden sind. Das Modell der Windkraftanlage findet sich auf MATLAB Central.

Informatik und Ingenieurwesen haben in der Tat noch einen langen Weg vor sich, um besser zusammenzuwachsen und von den jeweiligen Stärken der Fachgebiete und der Spezialisten wechselseitig zu profitieren.

Schneller zum Ergebnis – Videointerview von der Embedded World

EN: Addendum: At the Embedded World trade show I got interviewed, and meanwhile this video is available in “Seth on Simulink“. By the way: Each week, Seth has useful posts around simulation and modeling!

DE: Nachgereicht: Auf der Embedded World wurde ich interviewt, und mittlerweile ist dieses Video auch auf “Seth on Simulink” angekommen. Seth hat übrigens jede Woche lesenswertes rund um Simulation und Modellierung!

Das LaTeX-Einsteigerbuch

Meine Hilfe für gute Arbeiten und sonstige Texte, das LaTeX-Buch ist jetzt neu in der überarbeiteten 3. Auflage erschienen: Wissenschaftliche Arbeiten schreiben mit LaTeX, Mitp-Verlag, ISBN 978-3826658922

Eine lösungsorientierte Einführung in LaTeX mit allen Bereichen wie Graphiken, Tabellen, Literaturverwaltung, Verzeichnissen und Formeln.
Anders als andere Bücher habe ich dieses konsequent aus der Anwenderssicht geschrieben. Sie lernen, wie Sie mit LaTeX Dokumente schreiben können und nicht man möglichst ausgefuchst LaTeX programmiert. Denn dafür gibt es andere Werke.

Pressestimmen:

Mit dem Buch gelangt der Leser schnell zum fertigen Dokument, und damit hat auch der Autor das selbstgesteckte Ziel erreicht, dem Leser einen einfachen Einstieg in die Materie zu ermöglichen. Das Buch bietet für einen vergleichsweise guten Preis einen sinnvollen Umfang an Know-how für eine komplexe Materie.

linuxuser, 10/08

Dieses Buch ist definitiv ein sehr gelungenes, kompaktes Einsteigerbuch. [...] Auch als kleines Nachschlagewerk lassen sich zum Beispiel die Kapitel über Mathematik, Graphiken und Tabellen sehr gut verwenden.
[...] Ein rundum sehr empfehlenswertes Buch, welches ein grundsolides Basiswissen zu LaTeX vermittelt.

golatex.de, Dezember 2008

Vorlesung Verteilte Systeme: Qualität und Sicherheit

1 Ziel der Vorlesung

Das korrekte Funktionieren von Systemen sollte eine Selbstverständlichkeit sein. Jedoch wird der Qualität und Funktionssicherheit von Systemen oft zu wenig Beachtung geschenkt und allzuoft versucht Qualität nur durch Testen zu erzeugen. Die Vorlesung möchte alternative Wege aufzeigen und ein Bewußtsein für Qualität und Funktionssicherheit von Systemen schaffen.

Qualität und Funktionssicherheit können unter anderem erreicht werden durch formale Modellierung, (formale) Verifikation, Prozeßnormen und Entwicklungsnormen. Weiterlesen