Zur ästhetischen Visualisierung von Information

Größe: px
Ab Seite anzeigen:

Download "Zur ästhetischen Visualisierung von Information"

Transkript

1 Zur ästhetischen Visualisierung von Information Die Zeit der Graphen Der Fakultät Mathematik und Informatik an der FernUniversität in Hagen zur Erlangung des Grades eines Doktors der Naturwissenschaften (Dr. rer. nat.) eingereichte D i s s e r t a t i o n vorgelegt von Dipl.-Designer (FH) Dieter Meiller M.Comp.Sc. aus Kastl Betreuer: Prof. Dr.-Ing. Matthias Hemmje Co-Betreuer: Prof. Dr. rer. nat. Frieder Nake Tag der Einreichung: 16. August 2010 Tag der mündlichen Prüfung: 28. Oktober 2010

2 Danksagung Die Arbeit an der Dissertation begleitete mich auf verschiedenen Stationen meines Lebensweges: Während meiner Zeit als selbstständiger Unternehmer, Angestellter, wissenschaftlicher Mitarbeiter, Dozent, Professor, einfacher und dann zweifacher Vater. Allen Menschen, die mich in dieser Zeit unterstützt, motiviert, aufgemuntert und inspiriert haben, möchte ich hier danken. Herzlich bedanke ich mich bei meinem Mentor, Prof. Dr.-Ing. Matthias Hemmje, für sein Vertrauen in mich, als er mir die Möglichkeit zur Promotion gab. Seine fachkundige Betreuung, die wertvollen Hinweise und seine kluge und vorausschauende Planung des Promotionsvorhabens haben diese Arbeit ermöglicht. Auch für die Anstellung am Lehrgebiet will ich mich an dieser Stelle nochmals bedanken. Meinem zweiten Mentor, Prof. Dr. rer. nat. Frieder Nake, danke ich für die ausführlichen Korrekturen und Mails. Sein Besuch in Amberg war für mich ein besonderes Erlebnis. Die intensiven Gespräche und Einblicke in sein Werk haben mich sehr inspiriert. Meiner Frau: Magdalena, ohne Deine Liebe, aber auch ohne Deine Hilfe beim Lektorat wäre diese Arbeit nicht zu Stande gekommen. Dieter Meiller i

3 Der unvergängliche Ashvattha-Feigenbaum, dessen Blätter heilige Lieder sind, hat seine Wurzeln oben und seine Zweige unten. Wer ihn kennt, kennt die ewigen Wahrheiten. (Bhagavad-Gîtâ, 15. Kap.)

4 Inhalt Diese Arbeit befasst sich mit der Verbesserung der Ästhetik von Graphen- Visualisierungen. Es gibt eine große Zahl von Algorithmen zum Zeichnen von Graphen. Diese erzeugen ein bestimmtes Layout und verbessern bestimmte ästhetische Kriterien. Die so generierten Darstellungen sollen Zusammenhänge zwischen den Daten visualisieren. Die Betrachter wünschen sich ein kognitiv effizientes Layout, das im Kontext der jeweiligen Anwendung Informationen passend visualisiert. Deshalb sollten die Designer der Anwendung das Layout vorgeben, nicht der Algorithmus. Da die Menge der zu visualisierenden Informationen meist nicht von vornherein bekannt ist, sollte die Darstellung automatisiert auf ihre Ästhetik hin optimiert werden können. Jedoch sollten die Benutzer noch die Möglichkeit haben, mit der Visualisierung nach ihren Bedürfnissen zu interagieren. Deshalb wird in dem hier vorgestellten Modell eine Trennung des Layouts vom Prozess der Optimierung vorgeschlagen. Die Einordnung der Entwickler, des Optimierungs-Algorithmus und der Anwender in den Visualisierungs-Prozess ist Teil der Arbeit. Die praktische Relevanz dieses strukturierten Vorgehens wird anhand eines neuen Layouts für eine Suchmaschinen-Oberfläche eines visuellen Information-Retrieval- Suchsystems demonstriert. iii

5 Inhaltsverzeichnis 1 Über diese Arbeit 1 2 Einführung Die Problemstellung Der Ansatz Der wissenschaftliche Beitrag Gliederung der Arbeit Stand der Forschung Ästhetik Philosophische Ästhetik Informationsästhetik Psychologische Ästhetik Wahrnehmungspsychologie Ästhetik im Design Ästhetik als Gegenstand der KI Mensch-Maschine-Interaktion Informationsvisualisierung Die Einordnung der Arbeit Metriken für Informationsvisualisierungen iv

6 INHALTSVERZEICHNIS v Die Evaluierung von Informationsvisualisierungen Information-Retrieval Daffodil Graphen zeichnen Das Layout und die Regeln für dessen Aufbau Layout-Algorithmen Ästhetische Kriterien bei Graph-Visualisierungen Metriken für die Kriterien Algorithmen zum Messen der ästhetischen Kriterien Algorithmen zur Optimierung von ästhetischen Kriterien Dynamische Layouts mit physikalischer Simulation Constraints Visuelle Graphen-Grammatiken Layered Graph Grammars Spacial Graph Grammars Allgemeine Optimierungsverfahren Verwandte Arbeiten Lyberworld Web-Visualisierungen Zusammenfassung Das Modell Eine Klärung der Begriffe Die Problematik: Optimierung unter Berücksichtigung des Layouts Die Trennung des Layouts von der Optimierung der Darstellung

7 INHALTSVERZEICHNIS vi Struktur und Stil des Layouts Die Spezifizierung des Layouts Die Kriterien Die Optimierung der Darstellung mit genetischen Algorithmen Das Interaktionsmodell Zusammenfassung Die Umsetzung Grundsätzliche Überlegungen Eine erste experimentelle Umsetzung Die Klasse GeneticOptimizer Ein Prototyp zur Visualisierung von Suchanfragen Das Such-Layout Die Implementierung des Modells Logging-Funktionen Die Software-Architektur Die Anwendung Plexo Formative Evaluierungen Die finale Fassung Zusammenfassung Die Evaluierung Zielsetzung Messungen Die Vorgehensweise Die qualitative Evaluierung Vorbereitungen

8 INHALTSVERZEICHNIS vii Durchführung Befragung der Nutzer Die quantitative Evaluierung Vorbereitungen und Versuchsaufbau Durchführung Befragung der Nutzer Auswertung der Studien Zusammenfassung Zusammenfassung und Ausblick Zukünftige Arbeiten Ausblick Anhang 170 A Messungen 171 B Evaluierung am B.1 Fragen vor dem Test B.2 Fragen nach dem Test C Evaluierung am C.1 Fragen nach dem Test D Statistik für den

9 1 Über diese Arbeit Diese Arbeit entstand seit Anfang des Jahres 2007 im Rahmen des Promotionsverfahrens des Autors an der FernUniversität in Hagen am Lehrgebiet Multimedia und Internetanwendungen der Fakultät Mathematik und Informatik. Betreut wurde die Arbeit vom Lehrstuhlinhaber Prof. Dr.-Ing. Matthias L. Hemmje. Dort wird in folgenden Bereichen geforscht: Information Retrieval, multimediale Datenbanken, virtuelle Arbeitsumgebungen, Informationsvisualisierung, visuelle Mensch-Maschine-Interaktion, Multimedia, Content Engineering, Technologien des Wissensmanagements sowie Evaluation interaktiver Systeme. Ein Schwerpunkt der Forschung am Lehrgebiet ist die Informationsvisualisierung. Während der Entstehung der Arbeit wurden weitere Forschungsarbeiten aus diesem Bereich im Rahmen von Promotionen getätigt. Die Beteiligten kamen regelmäßig, im Halbjahresrhythmus, in Hagen oder Darmstadt zu einem Doktorandenseminar zusammen. Dort wurde über den Stand der Arbeiten diskutiert. Die Gruppe arbeitete eng zusammen, so dass man von einer Forschungsgruppe Informationsvisualisierung sprechen kann. Die Einordnung der Arbeit in diesen Kontext wird später vorgenommen. Inhaltlich ist die Arbeit dem DFG-Projekt Lacostir [Lac] zuzuordnen, dessen Forschungsgegenstand die Entwicklung eines neuen Ansatzes zur Gestaltung interaktiver Information-Retrieval-Systeme ist. Ein 1

10 KAPITEL 1. ÜBER DIESE ARBEIT 2 Teilaspekt ist dabei die Realisierung der Benutzungsoberfläche inklusive einer entsprechenden Visualisierung. Da es sich um eine interdisziplinäre Arbeit handelt, die außer dem Bereich der Informationsvisualisierung, einer Disziplin der Informatik, stark auf Erkenntnissen der Ästhetik, der Wahrnehmungspsychologie, der Gestaltung, der Künstlichen Intelligenz und anderen Wissenschaften aufbaut, wurde ein zweiter Betreuer hinzugezogen. Prof. Dr. Frieder Nake, Inhaber des Lehrstuhls für grafische Datenverarbeitung und interaktive Systeme von der Fakultät für Informatik der Universität Bremen, erklärte sich dazu bereit. Seine Interessensgebiete liegen in der Grafischen Datenverarbeitung, der Gestaltung und Theorie digitaler Medien, in Kunst und Bildung, Semiotik der Medien und in der Theorie der Informatik. Begonnen wurde die Arbeit als externe Promotion. Der Autor war zu diesem Zeitpunkt selbstständiger Multimedia-Entwickler und Designer. Darauf folgte im Jahr 2008 eine Tätigkeit als Dozent an der Hochschule Amberg-Weiden sowie eine halbjährige Anstellung als Wissenschaftler am Lehrgebiet. Diese Tätigkeit wurde dann im Oktober 2008 wegen einer Berufung zum Professor für Medieninformatik an der Hochschule Amberg- Weiden aufgegeben. Eine Kooperation der Hochschule Amberg-Weiden mit dem Lehrgebiet Multimedia und Internetanwendungen in Hagen war hilfreich dabei, die Promotion weiterzuverfolgen. Als günstig erwies sich die Nutzung dort vorhandener Ressourcen. So konnten bei der Evaluierung Studierende als Testbenutzer herangezogen werden.

11 2 Einführung In der modernen Gesellschaft steigt die Menge der zur Verfügung stehenden Daten stetig an. Einhergehend damit steigt die auf den Menschen einströmende Flut an Bildern. Dabei wird es immer schwieriger, diese Menge an Daten kognitiv zu erfassen und Relevantes zu erkennen, also Informationen zu gewinnen. Beispiele sind das Suchen und Erkennen von Informationen im World-Wide-Web oder in digitalen Bibliotheken. Die dort vorhandenen Datenbestände wachsen ständig. Ebenso kann, je nach Anfrage, auch das Suchergebnis eine unüberschaubare Menge an Informationen bieten. Klassisches Kommunikationsdesign hat zum Ziel, bestimmte Botschaften zu übermitteln. Designer suchen dafür eine ästhetische Darstellungsform, die die Botschaften möglichst optimal den Empfängern präsentiert. Es findet also eine Visualisierung von Daten statt, die im Kopf der Betrachter zu Information werden. Die gleiche Zielsetzung hat auch die automatisierte Darstellung großer Sammlungen von Daten. Diese ist mittlerweile ein eigenständiger, interdisziplinärer Forschungsbereich und wird im Folgenden nur Informationsvisualisierung genannt. Da die Menge der dargestellten Daten variiert, und auch meistens die Anwender die Darstellung interaktiv verändern können, ist eine statische Festlegung des Layouts nicht wünschenswert. Gerade die adäquate Dar- 3

12 KAPITEL 2. EINFÜHRUNG 4 stellung von Daten als Graph ist eine Anforderung, die immer mehr an Relevanz gewinnt. Dies liegt an der Struktur der Daten, die aktuelle Anwendungen erzeugen. Soziale Netzwerke, ortsbasierte Dienste und andere Web-basierte Anwendungen benötigen eine Visualisierung ihrer netzartigen Daten. Auch Visualisierungen von hierarchischen baumartigen Strukturen sind oft zu sehen. Wegen der Allgegenwart dieser Visualisierungs- Art könnte man von unserer Zeit als der Zeit der Graphen sprechen. Entscheidungen, die auf der Basis von Visualisierungen getroffen werden, können wichtig und folgenreich sein. Erfolg oder Misserfolg von Geschäftsmodellen oder sogar Menschenleben können von der Art der Präsentation der Daten abhängen [CMS99, S. 4]. 2.1 Die Problemstellung Viele Designer haben sich heutzutage zu Benutzern von Anwendungs- Programmen und Algorithmen degradieren lassen. Sie folgen oft nicht mehr ihrer Intuition, sondern agieren im Rahmen der Darstellungsmöglichkeiten der verfügbaren Software. Vorgefertigte Effekte bestimmen die Bildwelten oft mehr als kreative Ideen. Die Perzeption von visualisierten Daten, deren ästhetische Darstellung sowie die effektive und effiziente Interaktion zwischen Mensch und Computer sind wichtige und noch ungelöste Probleme [Joh04] im Bereich der Informationsvisualisierung. Die einzelnen Visualisierungstechniken der Informationsvisualisierung versuchen mit unterschiedlichem Erfolg, eine möglichst ästhetische Darstellung zu generieren. Die einzelnen Techniken sind meist individuelle Arbeiten, die eine bestimme Idee zur Visualisierung realisieren.

13 KAPITEL 2. EINFÜHRUNG 5 Ein Gebiet der Informationsvisualisierung beschäftigt sich mit dem Zeichnen von Graphen. Es gibt viele Layout-Techniken, die eine Darstellung von relationalen Daten als Knoten und Kanten erlauben. Entwickler von Graph-Visualisierungen können aus einer großen Zahl verschiedener Layout-Algorithmen wählen, die für keinen speziellen Anwendungsfall entwickelt worden sind. Falls sie ein spezielles individuelles Layout realisieren wollen, müssen sie einen eigenen Algorithmus entwerfen oder einen anderen, vorhandenen Algorithmus an ihre Vorstellungen anpassen. Bei der Interaktion mit den Visualisierungen, also Vorgängen, bei denen die Benutzer die Visualisierung verändern, oder bei denen sich die zugrunde liegenden Daten ändern, kann sich dabei auch das vorher festgelegte Layout verändern und nicht mehr wie gewünscht aussehen. Dabei kommt es auf die individuelle Wirkungsweise des jeweiligen Algorithmus an. Vorher festgelegte ästhetische Kriterien können dann eventuell auch nicht mehr eingehalten werden und so eignen sich manche Techniken nicht für die Interaktion mit den Nutzern. Die Entwickler müssen also die Balance zwischen dem gewünschten Layout und dynamischen Eigenschaften finden. Im Extremfall müssen sie sich zwischen einem starren Layout und einem dynamischen, sich selbst organisierenden Algorithmus entscheiden. Außerdem stehen sie vor dem Problem, einen für ihre Zwecke geeigneten vorhandenen Algorithmus zu finden und diesen anzupassen. Das hat auch Auswirkungen für die Benutzer: Sie interagieren entweder mit einer hoch interaktiven, dynamischen Visualisierung, die allerdings möglicherweise unorganisiert, unstrukturiert erscheint und deshalb oft schlecht wahrnehmbar ist und nicht den gewünschten ästhetischen Kriterien genügt. Oder aber sie haben ein gut organisiertes Layout vor sich, welches aber starr und unflexibel ist.

14 KAPITEL 2. EINFÜHRUNG 6 Zusätzlich sind die gewählten Layout-Algorithmen nicht für die jeweilige Anwendung individuell entwickelt und optimiert worden. Oft werden immer gleiche Visualisierungen für unterschiedliche Zwecke eingesetzt. Beispiele für einige der dieser häufigen, immer wieder in vielen Anwendungen verwendeten Visualisuerungstechniken sind Treemaps [CMS99, S ] und Hyperbolic Trees [CMS99, S ] zur Visualisierung von baumartigen Datenstrukturen oder Spring-Embedder-Algorithmen [Bra01a] zur Darstellung von allgemeinen Graphen-Strukturen. Diese Techniken eignen sich zwar zur Darstellung bestimmter Datenstrukturen, aber sind nicht für bestimmte Anwendungsfälle entworfen worden. In vielen Fällen kommen die Software- Bibliotheken zur Visualisierung ohne individuelle Anpassungen wie die Änderung der Farbgebung zum Einsatz. So gibt es immer mehr sich ähnelnde Informationsvisualisierungen im Web, die unterschiedliche Dinge verdeutlichen sollen. Die Entwickler beschränken sich bei ihrer Design- Entscheidung in diesen Fällen also auf eine pure Auswahl der Visualisierungstechnik. Manche hätten vielleicht ein anderes Layout im Sinn, aber da die darzustellenden Daten variabel sind, fehlt oft die Zeit oder die Fähigkeit, einen Algorithmus zur Anordnung der Daten gemäß der Layout- Idee zu implementieren. 2.2 Der Ansatz Designern soll mithilfe unseres Ansatzes wieder mehr Kompetenz und Gestaltungsfreiraum gegeben werden. Es sollte ihnen möglich sein, ein Layout zu entwerfen, das ihren Vorstellungen entspricht. Sie sollten in der Lage sein, ein spezialisiertes, expressives Layout für ihre Anwendung zu

15 KAPITEL 2. EINFÜHRUNG 7 entwerfen, ohne eines der bekannten generischen Layouts einsetzen zu müssen, die nicht für eine spezielle Aufgabe entwickelt wurden. Das Layout soll eindeutig die gewünschten Daten darstellen und zu keinen Fehlinterpretationen aufgrund ungewollter Visualisierungstechniken führen. Wegen der Schwierigkeit, dynamische Layouts zu generieren, die gleichzeitig auf ästhetische Kriterien hin optimiert sind, schlagen wir hier eine Trennung des Layouts von der Optimierung der Visualisierung vor. Das Vorgehensmodell für Entwickler sieht vor, dass zuerst das Layout beschrieben und umgesetzt wird. Gleichzeitig mit dem Layout spezifizieren sie ästhetische und semantische Kriterien, die eingehalten werden müssen, um die Integrität des Layouts zu gewährleisten. Auch Interaktions-Möglichkeiten sollen als Bestandteil des Layouts angesehen und von den Entwicklern als dessen dynamische Aspekte spezifiziert werden. Durch diese Trennung sind sie in der Lage, ihr Layout einer formativen Evaluation zu unterziehen, und es so auf eine Anwendung hin zu optimieren. Sie können freier ihre Ideen gestaltend realisieren, ohne die Einschränkungen von vorgefertigten Algorithmen. Separat vom Layout wird die Optimierung umgesetzt. Der Optimierungsalgorithmus muss dann die im Layout festgelegten Kriterien berücksichtigen. Die Anwender bekommen dann genau das Layout präsentiert, das die Entwickler spezifiziert haben, und können trotzdem frei mit der Visualisierung interagieren, ohne deren Ästhetik zu verändern. Sie können eine effektive Visualisierung betrachten, die gut an die menschliche Wahrnehmung angepasst ist. Zusätzlich sollen sie gestaltend in den Visualisierungs-Prozess eingreifen können, indem sie bestimmte, von den Entwicklern für solche Zwecke vorgesehene Layout-Eigenschaften verändern können. Ein erneuter Lauf des Optimierungs-Algorithmus muss

16 KAPITEL 2. EINFÜHRUNG 8 dann die veränderten Gegebenheiten beachten. Dies kann von großem praktischem Nutzen sein: Beim Einsatz der Graph-Visualisierungen bei Such-Prozessen im Information-Retrieval- Bereich kommt es auf eine gute Wahrnehmbarkeit der Visualisierung genauso an wie auf gute Interaktions-Möglichkeiten. 2.3 Der wissenschaftliche Beitrag In dieser Arbeit wird ein neuartiger strukturierter Ansatz zur Realisierung von Informationsvisualisierungen vorgestellt. Es wird ein Modell entworfen, in dem das Layout und die optimierte Darstellung konzeptionell getrennt werden. Dies erlaubt Entwicklern, individuell an eine Anwendung angepasste Layouts zu entwerfen. Die aus diesem Layout resultierenden Visualisierungen können separat auf ihre Ästhetik hin optimiert werden. Durch diese Flexibilität fällt es leicht, bereits während der Entwicklungsphase Anpassungen am ursprünglichen Entwurf vorzunehmen. Dadurch bekommen die Nutzer eine individuelle, der jeweiligen Anforderung adäquate Visualisierung präsentiert. Durch die hohe Flexibilität wird es zudem leichter, ein hohes Maß Interaktivität zu ermöglichen. Es soll hier, im Unterschied zu anderen Arbeiten zur Informationsvisualisierung, kein individueller neuer Layout-Algorithmus entworfen, sondern vielmehr die Möglichkeit geschaffen werden, separat von der algorithmischen Behandlung der Optimierung der Darstellung nach ästhetischen Kriterien verschiedenartige Layouts zu entwerfen.

17 KAPITEL 2. EINFÜHRUNG Gliederung der Arbeit Zu Beginn der Arbeit werden die Begriffe Ästhetik und Wahrnehmung erläutert. Danach werden aktuelle Techniken und Methoden aus der Informationsvisualisierung und speziell dem Graphenzeichnen vorgestellt. Weitere Themen wie die Optimierung und die Evaluation von Visualisierungen werden kurz angeschnitten. Ein paar verwandte Arbeiten, die Ähnlichkeiten zu unserer Implementierung aufweisen, werden aufgeführt. Es folgt dann die Vorstellung des eigenen Modells zur Graphen- Visualisierung und Optimierung sowie ein Interaktionsmodell. Um die praktische Evidenz des Verfahrens zu beweisen, wurde ein Prototyp zur Visualisierung von Suchprozessen entwickelt, der zur Suche im Web und in digitalen Bibliotheken dient. Zur Anzeige des Suchprozesses wurde anhand des entworfenen Modells ein neues Layout entwickelt. Dieser Prototyp wurde einer formativen Evaluation unterzogen und weiter verbessert. Der Prototyp und seine Entwicklung werden vorgestellt und die Systemarchitektur erläutert. Auch die Integration des Programms in vorhandene Open-Source-Softwarebibliotheken und Forschungsprojekte wird aufgezeigt. Daran anschließend folgt eine Ergebnis-Evaluation mithilfe einer durchgeführten Benutzerstudie, die die Effizienz der Software mit dem integrierten neuen Layout und damit auch des vorgestellten Modells analysiert und bewertet. Im Ausblick werden aus der Evaluierung gewonnene Erkenntnisse kritisch betrachtet und Vorschläge für eine weitere Entwicklung des Verfahrens gemacht.

18 3 Stand der Forschung In diesem Kapitel werden wichtige Begriffe eingeführt, deren Kenntnis zum Verständnis der Arbeit wichtig sind. Ein Überblick über wichtige Grundlagen und den Stand der Forschung im Bereich der Informationsvisualisierung und dem Zeichnen von Graphen folgt. Beispielhaft werden Anwendungen dieser Techniken vorgestellt. Ein Überblick über den Bereich bei der Evaluierung von Informationsvisualisierungen wird ebenfalls gegeben. 3.1 Ästhetik Zunächst soll geklärt werden, was der Begriff Ästhetik im Kontext dieser Arbeit bedeutet. Ästhetik ist als Teilbereich in verschiedenen Wissenschaften relevant. Hier werden folgende Bereiche berührt, die den Begriff Ästhetik oft unterschiedlich definieren: die philosophische Ästhetik die informationstheoretische Ästhetik die psychologische Ästhetik die Ästhetik in den Designwissenschaften 10

19 KAPITEL 3. STAND DER FORSCHUNG 11 Mensch-Maschine-Interaktion Es erscheint uns sinnvoll, einen Einblick in verschiedene Sichtweisen zu geben, um die Schwierigkeit zu verdeutlichen, den Begriff Ästhetik zu definieren. Einen Beitrag zur Begriffsbildung soll und kann diese Arbeit nicht leisten. 3.2 Philosophische Ästhetik Die Ästhetik ist die Wissenschaft der sinnlichen Erkenntnis. [Bau07, S.11] So lautet die Definition von Alexander Gottlieb Baumgarten, dem Begründer der philosophischen Ästhetik in Deutschland. Dies ist auch die heutzutage anerkannte Definition 1. Die (philosophische) Ästhetik ist also eine Wissenschaft, deren Gegenstand die sensitive Erkenntnis ist [Jäg80, S.7]. In diesem Sinne wollen wir in dieser Arbeit den Begriff Ästhetik auch verwenden: Definition 1 (Ästhetik) Ästhetik ist nach Baumgarten die Wissenschaft der sinnlichen Erkenntnis und bezeichnet in dieser Arbeit die visuelle Wahrnehmbarkeit. Es gibt noch eine Anzahl weitere, voneinander abweichende Definitionen des Begriffs Ästhetik in der Philosophie, zum Beispiel: Ästhetik ist die Theorie der ästhetischen Erfahrung, der ästhetischen Gegenstände und der ästhetischen Eigenschaften. [...] Ein ästhetischer Gegenstand ist ein Gegenstand. der (mindestens) eine ästhetische Eigenschaft hat. [Rei05, S.16,17] 1 Wie Frieder Nake in einer Diskussion zum Thema erläuterte.

20 KAPITEL 3. STAND DER FORSCHUNG 12 Hier wird die zuerst aufgeführte Definition als zu eng gefasst angesehen und deshalb wird versucht, eine allgemeinere Definition zu finden. Als Gegenbeispiel zur ersten Definition wird bei Reicher die Poesie genannt, die nicht sinnlich ist. Es sei an dieser Stelle angemerkt, dass sich diese Arbeit ausschließlich mit sinnlich wahrnehmbaren Dingen befasst und deshalb der Begriff Ästhetik im Folgenden in der zuerst genannten Weise gebraucht wird. Interessant an der zweiten Definition ist der Begriff der ästhetischen Eigenschaften. Die Frage, ob es überhaupt ästhetische Eigenschaften gibt, wird in der Philosophie von den ästhetischen Realisten bejaht [Rei05, S.67-73]. Die Frage, ob Informationsvisualisierungen ästhetische Eigenschaften haben, beantwortet die Theorie der immanenten ästhetischen Gegenstände [Rei05, S.82]. Informationsvisualisierungen selbst besitzen demnach als Gegenstände an sich keine ästhetischen Eigenschaften, allerdings deren immanente Entsprechungen im Kopf der Betrachter schon. Die physikalischen Reize werden also im Gehirn verarbeitet und interpretiert. Dies erklärt auch folgenden Umstand: Wenn man eine Informationsvisualisierung zum ersten Mal betrachtet, ist die Wahrnehmung anders, als wenn man sie bereits wiederholt betrachtet und also interpretiert hat. Analoge Theorien gibt es in der Wahrnehmungspsychologie. Auf diese wird im Folgenden noch genauer eingegangen. Auch die (später im Text behandelten) von Mackinlay verwendeten Klassifizierungen [Mac86] zur Beurteilung der Effektivität können als solche ästhetische Eigenschaften von Visualisierungen bezeichnet werden. Wenn deren Effizienz erhöht werden soll, muss man sich also mit den ästhetischen Eigenschaften beschäftigen.

21 KAPITEL 3. STAND DER FORSCHUNG 13 Viele ästhetische Eigenschaften von Informationsvisualisierungen haben direkten Einfluss auf die kognitive Effizienz. Damit sind nicht nur Eigenschaften wie geordnet gemeint, sondern auch solche wie interessant und schön. Man betrachtet schöne und interessante Darstellungen lieber, länger und mit mehr Aufmerksamkeit als langweilige oder hässliche. Berlyne erkennt bereits das Zusammenwirken von Gefallen und Aufmerksamkeit [Ber71]. Wir stellen also fest, dass noch mehr ästhetische Eigenschaften Einfluss auf die Effizienz nehmen als die Kriterien von Mackinlay. Nun sind solche ästhetischen Eigenschaften zu identifizieren, die großen Einfluss auf die Effizienz nehmen. Da sich über Geschmack bekanntlich nicht streiten lässt, müssen vor allem solche Eigenschaften gefunden werden, die sich einer objektiven Bewertung erschließen. Diese so genannten dispositionellen Eigenschaften [Rei05, S.78] sollen unter Normal-Bedingungen von verschiedenen Personen gleich wahrgenommen werden. Weiter sollten die betrachteten Eigenschaften intrinsisch [Rei05, S.70] sein, also unabhängig von äußeren Einflüssen. Zum Beispiel ist größer als keine intrinsische Eigenschaft, da sie nur relativ zu anderen Gegenständen betrachtet werden kann. Das Ziel ist eine automatisierte Verbesserung der jeweiligen Eigenschaft, deshalb muss diese als messbare Größe angegeben werden können. 3.3 Informationsästhetik Mit der Übermittlung von Nachrichten befasst sich die Kybernetik, speziell die Informationstheorie. Ihr Begründer Claude Shannon führte für diese Disziplin das Maß der Entropie [SW63, S.14] ein, das auch in anderen

22 KAPITEL 3. STAND DER FORSCHUNG 14 Wissenschaftsbereichen von Bedeutung ist. Entropie wird in der Informationstheorie definiert als ein Maß für den mittleren Informationsgehalt pro Zeichen in einem bestimmten System. Man benötigt viel Information, um Ungeordnetes zu speichern. Gleichförmige Darstellungen haben dagegen eine niedrige Entropie. Der Informationsgehalt eines einzelnen Zeichens z k in Bit wird bei Shannon mit i(z k ) = ld(p k ) bestimmt, wobei ld der Logarithmus zur Basis 2 ist und p k die Wahrscheinlichkeit des Auftretens des Zeichens k. Die mittlere erwartete Information H ist dann H = n i=1 p i ld(p i ) Ein Unterbereich der Informationstheorie, der in der Mitte des vergangenen Jahrhunderts seine Blüte hatte, ist die Informationsästhetik. Diese befasst sich mit der mathematisch exakten Formalisierung von Ästhetik. Der Begriff Informationsästhetik wurde wahrscheinlich von Max Bense 1957 eingeführt [Fra68, S.32]. Informationsästhetik soll eine Kunstkritik auf der Grundlage einer formalisierten Betrachtung der Ästhetik leisten. Es wird versucht, die Ästhetik mathematisch zu beschreiben und zu bewerten. Die wichtigsten Arbeiten entstanden in den 50er bis 70er Jahren, danach ist es sehr ruhig auf diesem Gebiet geworden. Dies mag zum Teil daran liegen, dass die Entwicklung in der Computertechnik damals noch nicht den Anforderungen genügte. Zum Beispiel hat Helmar Frank eine Arbeit geschrieben über den Versuch, eine spezielle Form des Tanztheaters (mime pure) zu formalisieren und diese dann mittels eines Elektronengehirns, z.b. IBM 704, zu analysieren, um so die Ästhetik des Tanzes zu bewerten [Fra68, S.96]. Solches könnte vermutlich erst in heutiger Zeit

23 KAPITEL 3. STAND DER FORSCHUNG 15 mittels Tracking- Systemen auf Schauspielern auch nur ansatzweise realisiert werden. Pionierarbeit auf dem Gebiet der Umsetzung von ästhetischen Regeln in Computerprogramme hat Frieder Nake in den 1960er Jahren geleistet. Er hat Computerprogramme geschaffen, die nicht, wie oft angenommen wird, den Stil von Künstlern wie Paul Klee nachahmen, sondern Grafiken im Sinne der entsprechenden Künstler generieren. 2 Diese Visualisierungen sind deshalb als eigenständige künstlerische Leistung von Nake zu sehen. Sein Vorgehen war dabei folgendes: Er analysierte Bilder des Malers und versuchte, Regeln und Stilmittel zu finden, die sich formalisieren lassen und somit programmierbar sind. Eingebaute Zufalls- Entscheidungen sorgen dafür, dass nicht immer die gleichen Bilder generiert werden [Nak74, 211]. Eine Auswahl von verwertbaren Bildern nahm dann der Künstler selbst vor und verwarf den Rest. Nake stützt sich auch auf Ergebnisse der Informationsästhetik, steht aber diesen durchaus kritisch gegenüber. Der Niedergang der Informationsästhetik ist wahrscheinlich zum Teil darauf zurückzuführen, dass ihr ein konkretes Anwendungsfeld fehlt: Angewandt auf die freie Kunst kann sie keine befriedigenden Erklärungen liefern. Diese ist als Objekt der Betrachtung zu komplex. Einschränkungen wie bei Bense, der nur Polygonzüge untersuchte, sind zu abstrakt. Zudem wurden einige grundlegende Annahmen der Informationsästhetik durch empirische Untersuchungen der Wahrnehmungspsychologie nicht bestätigt und zum Teil widerlegt. Diese Arbeit hat nicht die Kunst als Gegenstand der Untersuchung, sondern soll lediglich die Ästhetik im Sinne der kognitiven Wahrnehmung verbessern. Somit sind deren Ziele etwas an- 2 Dies hat er ausdrücklich in einem Gespräch erwähnt.

24 KAPITEL 3. STAND DER FORSCHUNG 16 ders gelagert als die der Informationsästhetik. Es soll also nicht der Wert von Visualisierungen als Kunstwerk beurteilt werden. Abbildung 3.1: Frieder Nake: Klee [Nak74, S.215] Ästhetisches Programm Vor allem die Formalisierung und die mathematische Beschreibung der Ästhetik in der Informationsästhetik ist von Interesse für diese Arbeit. Das kybernetische Kommunikationsmodell unterscheidet zwischen analytischer und synthetischer, also generativer Äs-

25 KAPITEL 3. STAND DER FORSCHUNG 17 thetik. Dies ist für diese Arbeit von besonderem Interesse, da optimierte Visualisierungen generiert werden sollen. Auf dieser Grundlage führt Nake [Nak74, S.37] die Definition des ästhetischen Programms ein: P = (Z, T, α, β, K). Dabei ist Z das zur Verfügung stehende Zeichenrepertoire, T eine Menge an Transformationen τ : Z Z, α eine Ablauffunktion: N (Z T) Z T, diese ist abhängig von den vorherigen Schritten. β ist eine Bewertungsfunktion β : (Z T) R m (1 m < ), K eine Menge an Kriterien, welche eine Untermenge von R m darstellen. Maß für Ästhetik George Birkhoff [Bir33] führt als Maß für das Gefallen eines Kunstwerks die Formel M = O/C ein, wobei M für das Gefallen, O für die Anzahl erkennbarer Ordnungsprinzipien und C für die Komplexität des Kunstwerks steht. Das Birkhoffsche Maß ist die Grundlage für die meisten Arbeiten zur Informationsästhetik. Die Erkenntnisse von Birkhoff sind allerdings umstritten, zumal die Formel experimentell nicht direkt als zutreffend nachgewiesen werden konnte. Festzuhalten ist: Es werden zwei Faktoren erwähnt: die Komplexität (Chaos) und die Ordnung, die direkten Einfluss auf die Ästhetik haben. In einer großen Anzahl von frühen sowie neueren Studien, die die Ästhetik von Visualisierungen untersuchen, werden diese beiden Größen als allgemeine Einflussfaktoren identifiziert [CM06]. Zu den neueren Arbeiten, die Konzepte aus der Informationsästhetik wieder aufgreifen, zählt die von Moere und Lau [ML07]. Hier wird ein Modell der Informationsästhetik in der Informationsvisualisierung vorgeschlagen. Dies soll durch eine interdisziplinäre Zusammenarbeit mit Künstlern und Designern erreicht werden. Dadurch soll ein neues Gebiet der informationsästhetischen Visualisierung entstehen, welches gewisse

26 KAPITEL 3. STAND DER FORSCHUNG 18 Freiräume bei einer kreativen Interpretation der Daten schaffen soll. Die Arbeit stellt eine Beziehung zwischen der bildenden Kunst und der Informationsvisualisierung her: Je weniger die Daten von den Betrachtern intuitiv interpretiert werden können oder je weniger kognitiv effizient oder intrinsisch eine Informationsvisualisierung ist, umso eher handelt es sich um Visualisierungs-Kunst als um Informationsvisualisierung. In der hier vorliegenden Arbeit soll, im Gegensatz dazu, der Fokus auf der besseren Wahrnehmung der Visualisierungen liegen. Themen der freien Kunst werden nicht berücksichtigt, auch wenn diese Einfluss auf die Wahrnehmung nehmen können. Auch bei Cawthon und Moere [CM06] wird festgestellt, dass bei analytischer Ästhetik die Ordnung und die Komplexität immer wiederkehrende Größen sind. 3.4 Psychologische Ästhetik Analog zur Theorie der immanenten ästhetischen Gegenstände gibt es im Bereich der psychologischen Ästhetik und der Wahrnehmungspsychologie Erkenntnisse, die bestätigen, dass das Gehirn nicht wie ein Fotoapparat nur ein Abbild der Wirklichkeit speichert, sondern die Wirklichkeit automatisch interpretiert. Bereits zu Beginn des vergangenen Jahrhunderts ging die Gestaltpsychologie davon aus, dass für jedes Bild eine möglichst einfache Interpretation gesucht wird [Has95, S.33] Ein anschauliches Beispiel für die Interpretationsleistungen des Gehirns ist die Abb. 3.2: Durch die Drehung der Abbildung um 90 wird aus den Klecksen eine bekannter Umriss. Bei einer erneuten Betrachtung des Bildes wird danach immer die bekannte Gestalt erkannt, es ist unmöglich, wieder nur die Kleckse zu

27 KAPITEL 3. STAND DER FORSCHUNG 19 Abbildung 3.2: Unförmige Kleckse oder Gestalt? Bitte um 90 im Uhrzeigersinn gedreht betrachten. [Has95, S.24] sehen [Has95, S.23] Wahrnehmungspsychologie Die Interpretation eines gesehenen Bildes läuft in mehreren Stufen ab: Bereits die Netzhaut ist aktiv an der Wahrnehmung beteiligt und funktioniert nicht wie eine Leinwand. Bei der so genannten Remshaw-Hemmung [Has95, S.28] beispielsweise kommt es zu einer Verstärkung und Hemmung der Sehzellen untereinander. Die Remshaw-Hemmung ist verantwortlich für verschiedene optische Täuschungen. Kreuzungen von Linien wirken beispielsweise dunkler als die Linien selbst. In der nächsten Stufe in der Sehrinde im Gehirn erfolgt dann eine weitere Interpretation des Bildes. Gut sichtbar wird diese beim blinden Fleck. Dieser Fleck ist der Bereich im Auge, wo aufgrund des Austritts des Sehnervs aus dem Auge keine Sehzellen vorhanden sind. Das Auge ist an dieser Stelle blind. Man nimmt an dieser Stelle jedoch keineswegs eine leere Stelle wahr, da das Gehirn auf Grundlage der Umgebungsinformationen eine geeignete Interpretation für diese Stelle einsetzt [Has95, S.28]. David Hubel und Torsten Wiesel erhielten 1981 den Nobel-

28 KAPITEL 3. STAND DER FORSCHUNG 20 Abbildung 3.3: Der Pop-Out-Effekt : Formen wie der Kreisbogen inmitten von rechten Winkeln springen ins Auge, die dazu benötigte Zeit hängt nicht von der Menge der umgebenden Winkeln ab.[has95, S.34] preis für ihre Entdeckungen über Informationsverarbeitung im Seh- Wahrnehmungssystem [HW77]. Sie stellten fest, dass es in der Sehrinde Spezialzellen zum Erkennen von Neigungswinkeln gibt. Solche Spezialzellen werden Merkmalsdetektoren genannt. Es gibt noch weitere zum Erkennen von Kontrasten, von regelmäßigen Abständen, von Farbverläufen und Geschwindigkeiten. Auch diese Spezialzellen können, wie die Sehzellen, ermüden. Besonders interessant für die Informationsvisualisierung ist diese Entdeckung beim sogenannten Pop-Out-Effekt [Has95, S.33]. Eine Form, die inmitten anderer Formen mit einem anderen Merkmalsdetektor erkannt wird, springt sofort ins Auge. Diese Zeit ist unabhängig von der Anzahl der umgebenden Formen. Anders verhält es sich, wenn die abweichende Form mit den gleichen Merkmalsdetektoren erkannt wird: Die zum Erkennen der Form benötigte Zeit wächst dann proportional zu der Anzahl der Formen in der Umgebung an (s. Abb. 3.3). Dreidimensionale Darstellungen Beim Einsatz von dreidimensionalen Darstellungstechniken bei der Informationsvisualisierung und vor allem in der Navigation durch dreidimensionale Darstellungen ist das Isomorphie-Problem zu beachten: Shepard et al. wiesen nach, dass die

29 KAPITEL 3. STAND DER FORSCHUNG 21 Zeit, die benötigt wird, um ein Objekt auf verschiedenen Abbildungen als identisch zu identifizieren, linear abhängig von dessen Rotationswinkel ist. [SM71]. Gestaltprinzipien In der Gestaltpsychologie wurden die so genannten Gestaltgesetze als Wahrnehmungsprinzipien formuliert. Strukturen, die nach diesen Gesetzen aufgebaut sind, sind besonders gut wahrnehmbar und werden als harmonisch empfunden. Die Gesetze sind vor allem Prinzipien, die die Anordnung von Bildelementen beschreiben. Einzelne Bildelemente bilden eine übergeordnete Form. Man spricht dann auch von einer guten Gestalt der Strukturen [Keb97, S. 150 ff.] [Gol10]. Es wurden unterschiedlich viele Gesetze formuliert, zum Teil über 100, und teilweise empirisch untersucht. Jedoch werden meist wenige (unter zehn), hinreichend unterschiedliche Gestaltfaktoren angegeben [Met67, S.699 ff.]. Exemplarisch sollen einige Gesetze erläutert werden, die im Verlauf der Arbeit immer wieder in Beispielen auftauchen: Abbildung 3.4: Gesetz der Nähe Das Gesetz der Nähe besagt, dass Bildelemente mit geringem Abstand zueinander als zusammengehörig wahrgenommen werden [Keb97, S.152]

30 KAPITEL 3. STAND DER FORSCHUNG 22 [War04, 189]. In Abb. 3.4 kann man sehen, dass auf der rechten Seite die Punkte 1-3 und 4-6 als Gruppen wahrgenommen werden. Abbildung 3.5: Gesetz der guten Fortsetzung Das Gesetz der guten Fortsetzung besagt, wenn Elemente an einer gedachten Linie angeordnet sind, wird diese Linie wahrgenommen und die Elemente als zusammengehörig angesehen. [Wir05]. Weiterhin besagt es, dass man bei einer Anzahl verbundener Knoten einfacher den Anfang und das Ende erkennen kann, wenn die Verbindungen weich und kontinuierlich verlaufen [War04, S. 191]. In Abb. 3.5 kann man auf der rechten Seite die Kantenzüge durch die Punkte 1-3 und 4-6 leichter erkennen als auf der Linken. Abbildung 3.6: Gesetz der Verbundenheit Bei Ware [War04, S. 192] wird noch erwähnt, dass das Gesetz der Verbundenheit einen besonderen Stellenwert hat: Es ist als Gruppierungs- Prinzip stärker als andere Gestalt-Gesetze, insbesondere auch stärker als das Gesetz der Nähe. In Abb. 3.6 kann man erkennen, dass die Punkte 1

31 KAPITEL 3. STAND DER FORSCHUNG 23 und 4, 2 und 5 sowie 3 und 6 als zusammengehörig empfunden werden, obwohl nach dem Gesetz der Nähe die Punkte 1-3 und 4-6 jeweils eine Gruppe bilden. Abbildung 3.7: Gesetz der Symmetrie Das Gesetz der Symmetrie ist dazu geeignet, ein visuelles Ganzes zu schaffen. In Abb. 3.7 sieht man auf der linken Seite Punkte, die an zwei parallel zueinander verlaufenden Konturen angeordnet sind. Auf der rechten Seite wurde eine Kontur entlang der Y-Achse gespiegelt. Das entstehende Bild gleicht dem Abbild eines Rotationskörpers und wird dadurch als Figur wahrgenommen (vgl. [War04, S. 193]). Auch in der Hirnforschung wurde ein Hirnzentrum für das Bewerten von Schönheit entdeckt. Als besonders schön werden dabei symmetrische Dinge empfunden. Der Grund dafür ist wohl eine angeborene Ordnungsliebe, die Sicherheit in einer komplexen Umwelt gibt [EM08]. Im relevanten Forschungsbereich Mensch-Maschine-Kommunikation wurde bereits früh durch empirische Untersuchungen nachgewiesen, dass die Suchleistung auf Bildschirmdarstellungen durch die Anwendung von Gestaltprinzipien bei deren Gestaltung um das Vierfache gesteigert werden kann [Zwe84].

32 KAPITEL 3. STAND DER FORSCHUNG Ästhetik im Design Neben der mathematisch geprägten Annäherung an die Ästhetik in der Informationstheorie sowie der philosophischen und der psychologischen Betrachtungsweise gibt es noch weitere, eher praktisch orientierte Arbeiten zum Thema Ästhetik. Diese könnte man unter dem Sammelbegriff Designwissenschaften zusammenfassen. Gemeint sind alle Anleitungen und theoretischen Arbeiten, die sich mit den Prinzipien der Gestaltung von Medien oder Produkten und mit visueller Kommunikation auseinandersetzen. Regeln der Einfachheit Aktuelle Arbeiten, die sich mit der automatisierten Gestaltung und Regeln für Gestaltung befassen, stammen von John Maeda. Der Designer und Informatiker ist einer der meistbeachteten Computer-Künstler. Neben seiner künstlerischen Tätigkeit beschäftigt er sich auch mit theoretischen Grundlagen des Gestaltens. Er vertritt die Ansicht, dass moderne Designer, die mit dem Werkzeug Computer arbeiten, auch die Grundlagen der Computergrafik verstehen sollten. Maeda [Mae06] beschreibt zehn allgemeingültige Regeln der Einfachheit. Diese können nicht nur auf das Design, sondern auch auf andere Bereiche wie Arbeitsabläufe oder Programme angewendet werden. Auch Maeda erkennt die Gegenpaare Komplexität und Einfachheit als wichtige Faktoren und bedient sich der Erkenntnisse der Gestalttheorie. Als erste Regel zum Vereinfachen nennt Maeda das Reduzieren der Funktionen eines Systems, also die Verringerung der Zeichen. Analog zur Informationsästhetik kommt als zweite Regel die Ordnung von Systemen ins Spiel: SLIP = Sort, Label, Integrate, Prioritisize. Dort schlägt Maeda eine Metho-

33 KAPITEL 3. STAND DER FORSCHUNG 25 de zum Ordnen und Sortieren vor, um Einfachheit zu erreichen. Abbildung 3.8: Beispiel für SLIP am Entwurf des Ipod-Displays: Links das ursprüngliche Display, In der Mitte sind die einzelnen Kontrollen sortiert, rechts in ein einziges Display integriert.[mae06, S.20] Wiederverwendung von Design-Wissen Bei Bailey et. al. [BJS04] wird eine Methode vorgestellt, mit der die visuellen Attribute einer Visualisierung als Vektor beschrieben werden können und dieser dann dem tatsächlichen Verwendungszweck der Darstellung zugeordnet werden kann. Mit diesen Eigenschafts-Vektoren kann also entweder eine passende Visualisierung für einen bestimmten Zweck gefunden oder die Problemstellung zu einer bestehenden Visualisierung bestimmt werden. Die einzelnen Komponenten des Eigenschafts-Vektors sollen bestimmte Ziel- Eigenschaften des Layouts beschreiben. Diese werden drei Kategorien zugeordnet: Allgemeinen Tätigkeiten (GT) Informations-Typen (IT) Visuellen Attributen (VF) Das Konzept der allgemeinen Tätigkeiten entstammt der Bereichstheorie [Sut02]. Darin werden bestimmte Aktivitäten zur Problemlösung be-

34 KAPITEL 3. STAND DER FORSCHUNG 26 schrieben. Beispiele sind: Zusammensetzung: Ein neues Objekt wird aus einzelnen anderen gebildet. Suchen: Relevante Objekte werden in ihrer Umgebung gefunden. Identifizieren: Kennzeichen werden einem Objekt zugeordnet. Die Informations-Typen entstammen zum Großteil der ISO-Norm [Int02]. Dort werden Informationen kategorisiert, wie beispielsweise: Kategorie: Kollektion von Dingen mit gemeinsamen Eigenschaften Arbeitsablauf: eine Folge einzelner Arbeitsschritte Ereignis: eine Zustandsänderung Das Aussehen des Layouts wird mithilfe der visuellen Attribute beschrieben. Diese entsprechen im Wesentlichen den Gestaltgesetzen. Beispiele: Hierarchie: Daten werden in einer Rangordnung dargestellt. Verbund: Verknüpfung von Objekten Überlappung: Verdeckung von Objekten durch andere Der Eigenschaftsvektor wird als Binär-Vektor beschrieben. Besitzt eine Visualisierung eine Eigenschaft der im Vektor vorkommenden Komponenten, hat diese den Wert 1, sonst 0. Der Vorgang, bei dem eine möglichst optimale Visualisierung ausgewählt wird, funktioniert wie folgt:

35 KAPITEL 3. STAND DER FORSCHUNG 27 Zuerst wird der Eigenschafts- Vektor anhand der zu visualisierenden Daten mit geeigneten Werten initialisiert. Im Vektor werden also die Ziele der Daten beschrieben. Überlappung: Aus einer Anzahl bekannter Visualisierungs- Methoden mit den dazugehörigen Eigenschafts-Vektoren wird diejenige mit dem ähnlichsten Vektor ausgesucht. Es soll festgehalten werden: In dieser Arbeit werden die Eigenschaften einer Visualisierung in einem Vektor gespeichert. Dessen Komponenten beschreiben sowohl semantische als auch Layout-Eigenschaften. Dieser Aspekt der Arbeit wird in unserem Ansatz weiter konkretisiert. 3.6 Ästhetik als Gegenstand der KI Expertensysteme Auch der Forschungsbereich der künstlichen Intelligenz (KI) beschäftigt sich mit der Verbesserung der Ästhetik von Visualisierungen. Dort wird versucht, Maschinen ein gewisses Verständnis von Ästhetik beizubringen. Dieses kann in Form einer Wissensbasis vorliegen. Darin sind die Regeln und Kriterien eines Layouts festgelegt. Ein entsprechender Inferenz-Algorithmus versucht dann, eine geeignete Darstellung zu generieren. Im Grafik Editor GREAT von Bolz [Bol93] wird dies in Form einer in Common-Lisp, der Sprache der KI, implementierten Wissensbasis umgesetzt; diese kann modular erweitert werden. Die von Bolz umgesetzte Software eignet sich quasi zum automatischen Verschönern von Zeichnungen für ein Zeichenprogramm. Der Problemlöser-Algorithmus beurteilt die vorhandene Zeichnung mit einer Bewertungsfunktion ( automatischer Kritik ) und versucht, als ungenügend bewertete (kritisierte) Tei-

36 KAPITEL 3. STAND DER FORSCHUNG 28 Abbildung 3.9: Verschönerung einer Skizze le der Zeichnung zu korrigieren (Abb. 3.9). Dabei werden Kriterien wie Lücken zwischen Linien oder schiefe Winkel betrachtet, auch können größere Strukturen auf die Einhaltung von Gestalt-Gesetzen überprüft werden. 3 Es ist möglich, nur die selektierten Teilbereiche einer Zeichnung zu verschönern. Konflikte zwischen einzelnen Kriterien werden mithilfe eines Dialogs mit den Anwendern aufgelöst: Diese müssen eine Entscheidung zugunsten eines Kriteriums fällen. Semantische Kriterien wurden bereits angedacht, jedoch noch nicht implementiert. Auch die Fixierung von Kriterien, also die Einflussnahme der Nutzer auf die Wissensbasis, wurde als wünschenswert erachtet. Lernfähige Systeme Bei Bolz ist wird zudem über ein lernfähiges System nachgedacht, dem man Konzepte und Regeln für grafische Objekte beibringen kann. 3 Dies entspricht ansatzweise der Definition des Layouts in dieser Arbeit. Jedoch entsteht das Layout bei einem Zeichenprogramm erst beim kreativen Akt des Zeichnens, so dass ein direkter Vergleich nicht möglich ist, da die Problemstellung eine andere ist. Auch sollen keine Daten variabler Menge dargestellt werden.

37 KAPITEL 3. STAND DER FORSCHUNG Mensch-Maschine-Interaktion Ein Bereich der Informatik beschäftigt sich mit der Interaktion zwischen Mensch und Computer oder HCI (Human Computer Interaction). Im deutschen Sprachraum ist auch der Begriff Mensch-Maschine-Interaktion gebräuchlich. Dieser Forschungsbereich ist allerdings weiter gefasst und beschränkt sich nicht nur auf die Beschäftigung mit Interaktionen des Menschen und dem Computer, sondern befasst sich allgemein mit der Bedienbarkeit von Maschinen. Usability Bei der HCI wird ein Problem besonders betrachtet: Die Benutzbarkeit (engl.: usability) von Systemen. Gerade im Web-Bereich setzt man sich intensiv mit der Frage nach der guten Benutzbarkeit von Webseiten auseinander. Einer der bekanntesten Autoren ist Jakob Nielson. Sein Buch Designing Web Usability [Nie99] gilt als Standardwerk. Auch Steve Krug beschäftigt sich in seinem viel rezipierten Buch Don t Make Me Think [Kru05] mit der Usability von Webseiten. Accessability Ein anderes Problemfeld neben der (guten) Benutzbarkeit von Webseiten ist die Barrierefreiheit von Webseiten und Softwaresystemen (engl.: accessability). In diesem Forschungsfeld wird der Frage nachgegangen, wie Benutzer mit eingeschränkten körperlichen und geistigen Fähigkeiten mit Webseiten und Computersystemen interagieren können [HY08]. Gerade für Menschen mit körperlichen oder auch geistigen Beschränkungen bieten der Computer und das Web Möglichkeiten, am gesellschaftlichen Leben teilzunehmen und mit anderen Menschen zu kommunizieren. So haben beispielsweise blinde, gehbehinderte oder auch ältere Menschen die Möglichkeit, im Web einzukaufen, anstatt persönlich

38 KAPITEL 3. STAND DER FORSCHUNG 30 Geschäfte aufsuchen zu müssen. 3.8 Informationsvisualisierung Die Informationsvisualisierung soll durch die visuelle Darstellung von abstrakten Daten deren Interpretation und Verständnis erleichtern [HJ07, S.8]. Es wird angenommen, dass die Denkleistung des Menschen durch eine Visualisierung unterstützt werden kann. Es soll dadurch leichter werden, Strukturen und Zusammenhänge zwischen den Daten zu erkennen. Die Visualisierungen sind dabei unterschiedlich effektiv im Bezug auf die Wahrnehmung. Das Ziel ist, dass die kognitiven Leistungen des Menschen möglichst unbewusst ablaufen. Es soll ein intuitives Verständnis der Visualisierungen erfolgen, die Zusammenhänge der Daten sollen sich ohne Anstrengung erschließen. Man soll also nicht erst darüber nachdenken müssen, nach welchem Schema eine Visualisierung aufgebaut ist und wie diese zu interpretieren ist. In der Informationsvisualisierung werden abstrakte Daten mit Mapping-Algorithmen in ein visuelles Layout überführt. Im Referenzmodell der Informationsvisualisierung (Abb. 3.10) soll dieser Schritt zu einer effektiven Mensch-Maschine-Kommunikation führen. Eine Visualisierung ist effektiv, wenn sie alle Möglichkeiten des Ausgabemediums und die visuellen Fähigkeiten der Betrachter optimal nutzt [Mac86]. Bei vielen Visualisierungstechniken wird deshalb versucht, die ästhetischen Eigenschaften der Darstellung zu verbessern. Dadurch soll die gute Wahrnehmbarkeit der Visualisierungen erhöht werden, wodurch deren Effektivität steigt. Es soll also einerseits eine Optimierung der Grafiken dahingehend erfolgen, dass diese möglichst gut mit den Sinnen des Menschen wahrge-

39 KAPITEL 3. STAND DER FORSCHUNG 31 nommen werden können. Andererseits sollen die Darstellungsfähigkeiten des Ausgabemediums möglichst gut genutzt werden. Ein Mapping wird als expressiv bezeichnet, wenn es alle und nur die Daten darstellt, die es soll [CMS99, S.23]. Je nach Art und Struktur der Daten stehen dazu eine Reihe an Informationsvisualisierungstechniken und Metaphern zur Verfügung: Daten können in ein-, zwei-, drei- oder sogar höherdimensionalen Räumen dargestellt werden. Pro Dimension wird dabei je ein Attribut eines Tupels an Daten dargestellt. Je höher also die Dimension der Visualisierung ist, desto mehr Spalten kann eine darzustellende Tabelle haben. Bei der Auswahl des Darstellungsraumes gibt es dabei immer Vor- und Nachteile. Beispielsweise ist bei einer 3D-Darstellung eine große Expressivität gegeben, also eine hohe Dichte an Informationen in Bezug auf die Darstellungsfläche, allerdings können dabei wegen der Perspektive auch Objekte verdeckt werden. Auch das Größenverhältnis und die Lage von Objekten zueinander ist, im Gegensatz zu einer 2D-Darstellung, nicht eindeutig. Im Gegensatz zur Expressivität, welche berechnet werden kann, muss die Effektivität der Visualisierungen den Menschen mit seinen Fähigkeiten zur Wahrnehmung berücksichtigen. Macinlay [Mac86, S.125] bezieht sich auf Erfahrungen aus empirischen Forschungen von Cleveland und McGill [CM84], die eine Klassifizierung von grafischen Ausdrucksmitteln vorgenommen haben. So sind z.b. unterschiedliche Positionen von Objekten sehr leicht erkennbar, verschiedene Helligkeitsstufen von Objekten kann der Mensch dagegen nicht so leicht unterscheiden. Diese Erkenntnisse aus der Wahrnehmungspsychologie wurden bereits erörtert. Macinlay beschreibt in seiner Arbeit Automating the Design of Gra-

40 KAPITEL 3. STAND DER FORSCHUNG 32 Abbildung 3.10: Das Referenzmodell der Informationsvisualisierung [CMS99] (Aus: [JGH05]) phical Presentations of Relational Information [CMS99, S ] ein Verfahren, welches eine automatisch generierte Visualisierung erzeugt. Ausgehend von der Art und der Menge der zugrunde liegenden Daten, die visualisiert werden sollen, werden unterschiedliche Visualisierungs- Techniken zu einem neuartigen Layout kombiniert. Der Computer übernimmt bei dieser Arbeit die Rolle des Designers, er entwirft das Aussehen der Visualisierungen ohne Unterstützung des Menschen. Ausgehend vom Modell von Card, Macinlay und Shneiderman haben sich weitere Verfeinerungen des Modells und ergänzende Arbeiten entwickelt. Jäschke [JGH05] gibt einen Überblick über diese Arbeiten und deren Beziehungen zueinander Die Einordnung der Arbeit Hier soll kurz erläutert werden, wo die vorliegende Arbeit im Bereich der Informationsvisualisierung (unter Bezugnahme auf Jäschkes Klassifikati-

41 KAPITEL 3. STAND DER FORSCHUNG 33 Abbildung 3.11: Erweiterungen [JGH05] on in Abb. 3.11) einzuordnen ist. Sie ist in der Visualization Section angesiedelt. Als Visual Representations, also Darstellungs-Metapher, werden hier Graphen-Darstellungen verwendet. Die eingesetzten Visualisation Techniques sind zweidimensionale Knoten-Kanten-Darstellungen. Die Tasks, die behandelt und später in der Implementierung umgesetzt werden, sind Filter, Details on demand und Relate. Als Interactions, werden Manipulate Objects und Change mapping angeboten. Auch eine Multiple View Coordination wird umgesetzt. Der Bereich Cognition ist ein zentraler Gegenstand der Betrachtung, da diese Arbeit sich mit der Ästhetik und der Wahrnehmung auseinandersetzt. Die Pipeline wird später in unserer Arbeit genauer betrachtet und verfeinert. Solch eine alternative Darstellung des Informationsvisualisierungs- Prozesses von Macinlay ist in der Arbeit von Hemmje [Hem99] zu fin-

42 KAPITEL 3. STAND DER FORSCHUNG 34 Abbildung 3.12: Interaktiver Informationsvisualisierungszyklus [Hem99, S. 85] den. Er entwirft ein Modell, welches einen interaktiven Charakter hat und die Benutzer des Informationsdialogs in den Mittelpunkt rückt. Der Prozess ist als Zyklus dargestellt. In diesem werden Informations-Objekte mit Funktionen in andere Objekte transformiert. In Abb ist dieser interaktive Prozess schematisch dargestellt. Der Prozess kommt durch die Anfrage eines Benutzers in Gang und kann später durch eine modifizierte Anfrage erneut durchlaufen werden Metriken für Informationsvisualisierungen Um beurteilen zu können, wie effizient eine Informationsvisualisierung in Bezug auf die Wahrnehmbarkeit ist, muss diese anhand bestimmter

43 KAPITEL 3. STAND DER FORSCHUNG 35 Kriterien bewertet werden. Es ist wünschenswert, dass diese Bewertung nicht durch eine subjektive Beurteilung durch den Menschen erfolgt, da in dieser Arbeit mit Hilfe solcher Bewertungen eine automatisierte Optimierung der Ästhetik durchgeführt werden soll. Deshalb sollen an dieser Stelle vorhandene Arbeiten vorgestellt werden, die solche Metriken zur Quantifizierung der Wirksamkeit von Informationsvisualisierungen definieren. Metriken für die Navigation Fitts Gesetz ist eine Maßzahl, die Auskunft darüber gibt, wie schnell auf ein bestimmtes Objekt gezeigt werden kann [Fit54]. Das Gesetz ist allgemeiner Natur, es gilt für das Zeigen mit der Hand genauso wie für die Navigation mit der Maus zu einem Objekt. Es wird dabei von einer eindimensionalen Struktur ausgegangen, beispielsweise eine listenartige Darstellung. D (Distance) bezeichnet die Entfernung der Maus zum anzuwählenden Objekt, W (Width) die Breite desselben (s. Abb. 3.13). Die Schwierigkeit (ID für Index), einen Gegenstand anzuwählen, ergibt sich dann aus folgender Formel: ID = log 2 ( D W + 1) Abbildung 3.13: Fitts Gesetz Einfach ausgedrückt: Je kürzer der Abstand der Maus zum Objekt und je größer das Objekt, desto einfacher ist es, dieses auszuwählen. Auf Grundlage dieses Gesetzes wurde die Norm ISO für Eingabe-

44 KAPITEL 3. STAND DER FORSCHUNG 36 geräte außer Tastaturen entworfen. Das Gesetz ist für einfachskalare Anwendungen formuliert, das bedeutet, dass alle Daten gleichzeitig auf dem Bildschirm zu sehen sind. Bei modernen Anwendungen sind jedoch nicht immer alle Daten gleichzeitig visualisiert, man kann die Visualisierung zoomen oder scrollen. Solche Darstellungen nennt man multiskalar. Dass das Gesetz auch auf solche Visualisierungen anwendbar ist, wurde bei Guiard et. al. [GBLD + 06] belegt Die Evaluierung von Informationsvisualisierungen Bei der Evaluierung von Informationsvisualisierungen sollen objektive Kriterien zur Bewertung herangezogen werden. Deshalb ist es wichtig, auch für die Bewertung der Qualität von Visualisierungen geeignete Metriken zu finden. Es gibt leider keine methodische Vorgehensweise für die Evaluierung von Informationsvisualisierungen [ED06]. Dies liegt an der Komplexität und Verschiedenartigkeit der Visualisierungen. Eine Vergleichbarkeit der Visualisierungstechniken ist oft nicht ohne weiteres möglich. Eine Herausforderung ist die Systematisierung der Ansätze und die Schaffung eines Rahmenwerks, welches das methodische Vorgehen bei Evaluationen unterstützt. Dazu müssen die Evaluationsmethoden, also empirische Studien und heuristische Verfahren, besser strukturiert werden. Dieses Rahmenwerk sollte auch die während des Design-Prozesses stattfindende Evaluierung berücksichtigen. Eine solche Arbeit wurde zeitgleich mit der vorliegenden Arbeit am Lehrgebiet begonnen. Die beiden Arbeiten sind eng verzahnt. Der Autor, André Triebel, hat die im Rahmen seiner eigenen Forschung anfallenden Evaluierungen in Kooperation mit dem Autor dieser Arbeit durchgeführt.

45 KAPITEL 3. STAND DER FORSCHUNG 37 Die später beschriebenen Evaluierungen aus Kapitel 6 sind auch Teil der Arbeit von Triebel. Seine Kenntnis der Materie war sehr hilfreich bei der Durchführung der Evaluierungen und halfen, diese korrekt durchzuführen und auszuwerten. Einordnung der Evaluierungsverfahren Zunächst sollen grundlegende Begriffe und die grundsätzliche Herangehensweise bei Evaluierungen von Informationsvisualisierungen und ähnlichen Softwaresystemen erklärt werden. Wir versuchen hier, unabhängig von Triebel, die einzelnen Begriffe, wie sie im Kontext dieser Arbeit zu verstehen sind, zu ordnen und zu kategorisieren. Abbildung 3.14: Kategorisierung der Evaluierungsmethoden Meist wird bei Evaluierungen zwischen formativen und summativen Evaluierungen unterschieden (s. [And06], [ED06]). Formative Evaluierungen finden während des Entwicklungsprozesses statt und dienen dazu, Fehlimplementierungen bereits während der Realisierung zu vermeiden. Diese finden oft in einem iterativen Zyklus statt, der also mehrfach durchlaufen werden kann [Yan09]. So kann man die Wünsche und Vorstellungen der Benutzer unmittelbar berücksichtigen. Diese sind schließlich meist die Domänenspezialisten und nicht die Entwickler. Dieses Evaluierungsverfahren spielt heutzutage eine große Rolle bei der modernen Softwareentwicklung und ist Bestandteil von sogenannten agilen Software-

46 KAPITEL 3. STAND DER FORSCHUNG 38 entwicklungsprozessen. Diese stehen in Kontrast zu den klassischen Softwareentwicklungsmodellen wie dem Wasserfallmodell [HHI07, S. 171]. Die Vorgehensweise ist dort folgende: Nachdem in der Analysephase die Nutzerwünsche in einem Lastenheft niedergeschrieben wurden, erfolgen der Entwurf und die Implementierung, die sich an einem vorher definierten Pflichthenheft orientieren. So kann es passieren, dass die entstandene Software nicht das darstellt, was sich die Nutzer oder Kunden wünschen. Dies versucht man bei den moderneren Ansätzen wie der agilen Softwareenwicklung durch häufiges Feedback durch die Benutzer zu vermeiden. Solche Akzeptanztests [HHI07, S. 177] sind formative Evaluierungen, da sie das Produkt bei dessen Entstehung mit formen. Im Gegensatz dazu entspricht die summative Evaluierung einer abschließenden Qualitätskontrolle und soll folgende Frage klären: Haben wir das richtige System gebaut? [HHI07, S. 199] Beide, die formative sowie die summative Evaluierung, können qualitativ oder quantitativ evaluiert werden. Die Abschlussevaluierung wird am besten als formales Experiment durchgeführt, will man, wie in dieser Arbeit geplant, komparativ evaluieren und zwei Visualisierungstechniken vergleichen. Dazu kann man zwei Gruppen von Testnutzern bilden, die jeweils eine Visualisierungstechnik testen. Besser ist es allerdings, nur eine Gruppe jeweils abwechselnd beide Techniken testen zu lassen, da man meist nicht so viele Testbenutzer zur Verfügung hat 4 und weil individuelle Unterschiede zwischen den Nutzern dadurch eliminiert werden [And06]. Oft werden solche Experimente in als qualitative und quantitative Evaluierungen in Kombination durchgeführt. Die quantitative Evaluierung liefert messbare Ergebnisse. Man kann prüfen, ob mit dem zu testenden 4 Die Anzahl der Teilnehmer bei Nutzertests ist auch meist ein Kostenfaktor.

47 KAPITEL 3. STAND DER FORSCHUNG 39 System gewisse Aufgaben von den Nutzern korrekt in einer bestimmten Zeit bewältigt werden können (so genannte Time and Error Studien) 5. Bei Informationsvisualisierungen kann deren Expressivität geprüft werden, also ob diese die dargestellten Daten als Information an die Benutzer vermitteln können. Auch die Effektivität und die Effizienz der Visualisierungen kann geprüft werden: Dabei stellt sich die Frage, ob die Visualisierungen alle Daten repräsentieren, die dargestellt werden sollen (Effektivität) und die Frage, ob nur diese und keine überflüssigen Dinge dargestellt werden [CMS99, S.23]. Eine qualitative Evaluierung wird durchgeführt, indem die Testbenutzer eine qualitative, also nicht in Zahlen ausdrückbare Einschätzung darüber abgeben, ob bestimmte Ziele erreicht worden sind oder nicht. Es gibt hierfür verschiedene Techniken der Befragung. Bei der Nutzung der zu testenden Software kann der Nutzer beobachtet werden: Eye-Tracking- Systeme, Video-Aufzeichnungen des Arbeitsplatzes oder Bildschirmaufzeichungen können eingesetzt werden. Eine günstige Alternative für diese sehr aufwändigen Techniken ist das soganannte Thinking Aloud : Die Nutzer kommentieren alle Tätigkeiten und Gedankengänge durch lautes Sprechen [EA93]. Werden Spezialisten herangezogen, spricht man von einem Expert Review. Dieses wird bei Torry und Möller [TM05] zur Durchführung von formativen Evaluierungen vorgeschlagen. Wir werden dies bei der Umsetzung ebenfalls tun. Dies hat mehrere Vorteile: Formale Experimente erfordern viel Zeit und Aufwand, die bei der laufenden Entwicklung von Software meist nicht verfügbar ist, und sind deshalb nicht praktikabel. Zu- 5 Man kann quantitative Evaluierungen allerdings auch automatisiert ablaufen lassen und prüfen, wie sich das System verhält. Dies kann soweit gehen, dass man bestimmte Test-Umgebungen benutzt, bei denen extra Test-Fälle programmiert werden, sogenannte Unit-Tests [HHI07, S. 144].

48 KAPITEL 3. STAND DER FORSCHUNG 40 dem eignen sich Expertenstudien wegen des hohen Grades an Freiheiten gut zur Identifizierung von Problemen. Der Vollständigkeit halber sollen noch multidimensionale Langzeitstudien erwähnt werden [SP06]: Die Nutzung von Software mit unterstützenden Visualisierungstechniken soll im Rahmen einer solchen Studie über einen längeren Zeitraum dokumentiert werden. Am Ende könnte man eine Aussage darüber treffen, ob die Visualisierungstechnik einen Vorteil bei der täglichen Arbeit (beispielsweise beim Suchen von Informationen) bringt oder nicht. Eine solche Studie würde den Rahmen dieser Arbeit schon zeitlich sprengen, kann aber als zukünftiger Forschungsgegenstand in Erwägung gezogen werden Information-Retrieval Die Arbeit von Landwich [Lan08] beschäftigt sich mit einem neuen Ansatz für den Entwurf von interaktiven Benutzeroberflächen für Information- Retrieval-Systeme von digitalen Bibliotheken. Der Dialog mit dem System soll verbessert werden, um das Informations-Bedürfnis der Benutzer besser befriedigen zu können. Abb beschreibt einen Suchvorgang und die beteiligten Informations-Mengen: Zu drei Zeiten t 1, t 2 und t 3 wurden Suchanfragen gestartet. Gesucht wurde auf der Inhalts-Menge C. In dieser Menge ist nur die Teilmenge R für den Suchenden relevant. Die Such- Ergebnisse sind die Mengen r 1, r 2 und r 3. Davon hat der Nutzer allerdings nur die Teilmengen k e,1, k e,2 und k e,3 betrachtet. Die gespeicherten oder gemerkten Ergebnisse sind schließlich die Mengen k s,1, k s,2 und k s,3. Die Gesamtmenge der Ergebnisse k s,1 k s,2 k s,3 = k s,total soll so groß wie möglich sein.

49 KAPITEL 3. STAND DER FORSCHUNG 41 Abbildung 3.15: Anfragesequenzen [Lan08] Daffodil Am Lehrgebiet Multimedia und Internetanwendungen der FernUniversität in Hagen wird an der Daffodil-Software geforscht und gearbeitet, einem ursprünglich an der Universität Duisburg entwickelten, flexiblen und erweiterbaren Framework [GFK00]. Die Software erlaubt die Meta-Suche auf Beständen verschiedener digitaler Bibliotheken. Weitere Bibliotheken können mit Hilfe von Wrappern [Kla07, S. 53] dynamisch in das System integriert werden. Zusätzlich bietet das System eine Benutzeroberfläche an, die ebenfalls dynamisch erweitert werden kann und eine strategische Suche unterstützt [FKSM02]. Das System ist als verteilte, serviceorientierte Architektur angelegt worden, was die einfache Integration neuer Dienste ermöglicht. Abb zeigt einen Screenshot der zu Daffodil gehörenden Benutzeroberfläche mit integrierten Diensten, die in einzelnen Unterfenstern ge-

50 KAPITEL 3. STAND DER FORSCHUNG 42 öffnet sind. In seiner Dissertation hat Claus-Peter Klas [Kla07] das System weiterentwickelt und koordiniert die laufenden Arbeiten daran. Die im Verlauf dieser Arbeit entwickelte Visualisierungsanwendung soll die Suche auf Beständen der von Daffodil verknüpften Bibliotheken visuell unterstützen.

51 KAPITEL 3. STAND DER FORSCHUNG 43 Abbildung 3.16: Die Benutzeroberfläche von Daffodil

52 KAPITEL 3. STAND DER FORSCHUNG Graphen zeichnen Eine Visualisierungstechnik der Informationsvisualisierung ist die Darstellung der Information als Graphen. Ein Graph ist ein mathematisches Gebilde, bestehend aus Knoten und Kanten. Verschiedene Zusammenhänge können als Graph beschrieben werden. Einige Beispiele für solche Zusammenhänge sind: Soziale Netzwerke, also Beziehungen zwischen einzelnen Personen, ebenso die Verlinkung von Internetseiten untereinander, auch Städte mit ihren Verkehrsverbindungen kann man mit Graphen modellieren. Graphen-Darstellungen begegnen dem Menschen in vielen Bereichen der Technik, der Informatik und des täglichen Lebens: Als Beispiele seien hier die Daten-Modellierung für Datenbanken mit Entity- Relationship-Diagrammen und der Fahrplan einer U-Bahn genannt. Ein Graph als abstraktes Gebilde hat keine festgelegte visuelle Repräsentation. Graphen häufig in eine solche überführt, um damit die Zusammenhänge für den Menschen sichtbar zu machen. Die Beschäftigung mit der Problematik, eine geeignete Visualisierung von Graphen zu finden, ist heutzutage nicht mehr nur eine rein akademische Angelegenheit, sondern hat bereits große praktische Relevanz. Immer mehr Anwendungen verfügen mittlerweile über eine visuell ansprechende Darstellung der von ihnen verarbeiteten Informationen. Hier soll zunächst der Begriff des Graphen kurz eingeführt werden. Die Graphentheorie kann sowohl als Zweig der Mathematik als auch der Informatik angesehen werden. Es gibt zahlreiche Einführungen zum Thema, beispielsweise von Brandstädt [Bra94]. Ein Graph ist ein rein mathematisches Konstrukt, mit dem sich Zusammenhänge zwischen verschiedenen Gegenständen modellieren lassen. Auch Hierarchien lassen sich da-

53 KAPITEL 3. STAND DER FORSCHUNG 45 mit beschreiben. Ein ungerichteter Graph G ist als ein Paar G = (V, E) definiert, wobei V eine Menge an Knoten und E V V eine Menge an Kanten darstellt, wobei e E ein ungeordnetes Paar ist. Bei einem gerichteten Graphen ist e ein geordnetes Paar. Zwei Knoten v1 und v2 werden adjazent genannt, wenn (v1, v2) E. Eine Kante e ist inzident zu einem Knoten v, wenn diese mit demselben verbunden ist. Der Grad eines Knoten ist definiert durch die Anzahl der mit ihm inzidenten Kanten. Ein besonderer Graph ist der Baum. Mit Bäumen können hierarchische Beziehungen im Sinne von ist-vater-von oder ist-kind-von zwischen zwei Knoten gebildet werden. Ein Baum ist ein Spezialfall eines Graphen. Dieser hat die Eigenschaft, dass er in zwei Teilbäume zerfällt, wenn nur eine Kante entfernt wird. Ein Graph wird vollständig genannt, wenn alle Knoten paarweise miteinander verbunden sind. Ein weiterer wichtiger Begriff ist der des planaren Graphen. Ein Graph ist planar, wenn es eine Möglichkeit gibt, diesen ohne Kantenkreuzungen planar, also beispielsweise auf einem Blatt, zu zeichnen. Wichtig ist zu beachten, dass die mathematische Beschreibung von Graphen nichts über die Darstellung der Graphen aussagt. Die mathematische Definition ist rein abstrakt und enthält keinerlei Information darüber, wie ein Graph gezeichnet wird. Abbildung 3.17: Zwei Visualisierungen des selben Graphen

54 KAPITEL 3. STAND DER FORSCHUNG 46 Ein intuitiv verständliches Beispiel: In Abb wird ein und derselbe Graph auf unterschiedliche Art dargestellt. Die linke Zeichnung kann sofort kognitiv erfasst und aus dem Gedächtnis heraus wiedergegeben werden, dieser Graph wird auch das Haus von Nikolaus genannt. Die rechte Zeichnung dagegen kann man sich schwerer merken. Die Zeichnung eines Graphen wird in der Regel wie bei Tamassia und Tollis [TT95, S. 418] definiert: Definition 2 (Zeichnung eines Graphen) Eine Zeichnung eines Graphen G = (V, E) ist ein Mapping des Graphen in eine endliche planare Fläche: d : G R 2. Jeder Knoten wird so auf der Fläche abgebildet. Die Kanten verbinden diese Knoten. Eine weitere Möglichkeit, Graphen zu beschreiben, sind formale Grammatiken. Pavlidis [Pav72] hat diese Möglichkeit bereits 1972 vorgestellt. Er nutzte die formalen Grammatiken, um die topologische Struktur von Graphen formal zu beschreiben. Ein Beispiel: In der Grammatik 3.1 wird die Struktur von allgemeinen Bäumen beschrieben. Das Nicht-Terminal N steht für einen Teilbaum, das Terminal b für eine Kantenstruktur, das Terminal n für einen einzelnen Knoten. Das initiale Symbol ist N, die Produktionsregel P. G = {N, b, n, P, N}, P = N NbN n. (3.1) Das Layout und die Regeln für dessen Aufbau Der Begriff Layout bedeutet soviel wie Plan oder Entwurf. Es soll Richtlinien für eine bestimmte Ausführung vorgeben. Das Wort Layout kommt aus dem Grafik-Design-Bereich. Designer erstellen für eine Drucksache

55 KAPITEL 3. STAND DER FORSCHUNG 47 zunächst einen Entwurf. Der Entwurf, das Layout, hat zunächst keinen konkreten Inhalt, er wird meist mit Blindtext gefüllt und dient dazu, die Optik und den Look des Werkes festzulegen. Das Layout soll eine Struktur bilden, die sich die Betrachter möglichst gut einprägen kann, eine mental map [FN02] und eine bestimmte Gestalt besitzen [Met67]. Erst später wird das Layout mit Inhalt gefüllt. Das Layout im Kontext des Graph-Zeichnens beschreibt die Regeln, nach denen der Graph gezeichnet wird. Es ist ein Raum von möglichen Darstellungen. Mit dem Layout werden Regeln formuliert, die die Anordnung der Knoten im Raum und die Darstellung der Kanten festlegen. Oft wird der Begriff des Layouts synonym für die konkrete Visualisierung eines bestimmten Graphen, also dessen visueller Repräsentation verwendet, was unserer Ansicht nach nicht präzise genug ist. Das Layout legt die Richtlinien für die Darstellung fest, eine Darstellung ist nach einem bestimmten Layout aufgebaut und ist dessen Realisierung. Der Raum der möglichen Darstellungen wird durch die im Layout definierten Regeln für die Visualisierung von Knoten und Kanten bestimmt Layout-Algorithmen Bei wenigen Knoten im Graphen könnte man die Komposition manuell darstellen, aber da die Menge der Knoten und Kanten nicht festgelegt und der Graph meistens das Ergebnis einer dynamischen Abfrage ist, versucht man, die Regeln der gewünschten Komposition zu verstehen und mit Hilfe von Algorithmen nachzubilden. Mit diesen und deren konkreten Realisierungen in bestimmten Programmiersprachen werden Visualisierungen dynamischer Datenmengen automatisiert generiert. Die Formulierung möglichst guter Algorithmen ist mittlerweile ein eigenständiger

56 KAPITEL 3. STAND DER FORSCHUNG 48 Forschungszweig. In regelmäßigen Abständen findet seit den 90er Jahren [TT95] die Graph-Drawing -Konferenz statt, dort werden bis heute [HNQ08] immer neue Algorithmen zum Graph-Zeichnen präsentiert. Die Formalisierung von ästhetischen Kriterien bei der Darstellung von Graphen wurde dort als Problem identifiziert [RH01]. Zudem wurde auf den Einfluss der Semantik der darzustellenden Daten auf die Wahrnehmbarkeit hingewiesen. Eine gute Einführung zum Thema ist ein Forschungsbericht des MPI-Informatik. Dort werden Details zu den einzelnen Algorithmen erklärt und weitere Quellen angegeben [BJM97]. Layout-Algorithmen arbeiten nach bestimmten Algorithmen und versuchen dabei, einzelne Kriterien zu optimieren. Ziel ist es, Darstellungsformen für bestimmte Graphen zu finden, die für die Betrachter gut wahrnehmbar und somit ästhetisch sind. Oft wird ein Algorithmus verwendet, der versucht, aufgrund einer Heuristik ein möglichst optimales Ergebnis für bestimmte Kriterien zu erzeugen. Die Vorgehensweise ist dabei meist, eine Visualisierung für ein bestimmtes Layout zu erzeugen und zugleich die Position und andere visuelle Eigenschaften der darzustellenden Knoten so zu verändern, dass ein möglichst gutes Ergebnis in Bezug auf einzelne Kriterien erzeugt wird. So können Kriterien wie die Anzahl der Kantenkreuzungen, die Weglänge zwischen den Knoten, die allgemeine Richtung der Kanten oder die Winkelgröße zwischen den Kanten optimiert werden. Layout-Algorithmen können grob in statische und dynamische Algorithmen eingeteilt werden [Bra01b]. Statische Algorithmen erzeugen eine einzige Visualisierung aus dem gegebenen Graphen. Wenn sich die zu visualisierenden Daten ändern, muss man die Visualisierung von Grund auf neu erzeugen. Dynamische Algorithmen hingegen können auf Be-

57 KAPITEL 3. STAND DER FORSCHUNG 49 nutzeraktionen und Änderungen im Graphen reagieren und die Visualisierung ohne einen grundlegenden Neuaufbau anpassen. Dies geschieht meist durch eine wiederholte Neuzeichnung und schrittweise Anpassung der visuellen Struktur. Für interaktive Graph-Visualisierungen, die Bestandteil einer Mensch-Computer-Schnittstelle sind, eignen sich deshalb dynamische Algorithmen. Für diesen Zweck sollten diese auch ein gutes Laufzeitverhalten aufweisen. Statische Algorithmen eignen sich mehr für den Print-Bereich. Sie haben eine gewisse Ähnlichkeit zu den Entflechtungs-Algorithmen für Platinen-Layouts oder für das VLSI-Chip- Design [EFK01]. Dort spielt allerdings die Wahrnehmung durch den Betrachter und die Ästhetik so gut wie keine Rolle, auch wenn die Kriterien sich manchmal gleichen. Auch dort wird beispielsweise versucht, eine möglichst geringe Anzahl an Kantenkreuzungen oder eine geringe Pfadlänge zu berechnen. Da bei dieser Gruppe von Layout-Algorithmen keine primär ästhetischen Kriterien behandelt werden, betrachten wir sie in dieser Arbeit nicht näher Ästhetische Kriterien bei Graph-Visualisierungen In vielen Arbeiten aus den Bereich des Graph-Zeichnens wird von der Ästhetik der Graph-Visualisierungen gesprochen. Gemeint ist damit, ebenso wie in der vorliegenden Arbeit, deren gute Wahrnehmbarkeit. Die Wahrnehmungspsychologie hat bestimmte Kriterien identifiziert, die die Wahrnehmung einer Darstellung beeinflussen. Diese wurden empirisch getestet und verifiziert. Beispiele für Kriterien sind: die Anzahl der Knicke der Kanten, die Anzahl der Kantenkreuzungen in einer Darstellung, die Symmetrie und die Regelmäßigkeit der Knotenanordnung. Es gibt Parallelen zu den Gestaltgesetzen aus der Gestaltpsychologie, wie beispiels-

58 KAPITEL 3. STAND DER FORSCHUNG 50 weise zum Gesetz der guten Fortsetzung. Bei bei Purchase et. al. [PCJ97] werden diese als aesthetics bezeichneten Kriterien auf ihren Einfluss bei der Wahrnehmbarkeit von Graph-Visualisierungen untersucht. Eine Auflistung der unterschiedlichen Kriterien beim Graph-Zeichnen ist bei Purchase [Pur98] zu finden. Bei Huang et. al. [HE05] und im Folgenden wird angenommen, dass das Betrachten eines Graph-Layouts ziel-orientiert ist. Die Betrachter möchten also Informationen aus der Grafik herauslesen, sie lassen ihre Augen nicht zufällig über die Grafik wandern, sondern zielgerichtet. Es wurde deshalb der Einfluss der Anzahl der Kantenkreuzungen auf die Lesbarkeit von Graphen untersucht, und festgestellt, dass diese eine Auswirkung auf die Lesbarkeit der Graphen haben. Je mehr Kantenkreuzungen vorhanden sind, desto schlechter kann der Mensch den Pfad von einem Knoten zum anderen verfolgen. Als weitere ästhetische Kriterien werden die Symmetrie des Layouts und die Anzahl der Biegungen von Kanten genannt. Auch die Anzahl der Kanten auf einem Pfad wird als Kriterium erwähnt. Es wurde die Zeit untersucht, die Betrachter benötigen, um mit dem Auge einen Pfad vom Startknoten zum Zielknoten zu verfolgen. Die benötigten Zeiten wurden kleiner, je weniger Kanten den Pfad kreuzten, wobei das Verhalten besser war, je steiler die Kanten den Pfad kreuzten (90 Grad). Auch wurden die Zeiten kleiner, je weniger Kanten mit Knoten auf dem Pfad adjazent waren. Als proportional zu den Antwortzeiten erwiesen sich auch die Anzahl der Kanten-Knicke und die Menge von Kanten, die parallel oder entlang des betrachteten Pfades laufen. Ein radiales Layout erwies sich als gut. Auch die Verteilung der Knoten wurde untersucht: Die Bildung von Knoten-Clustern hatte einen negativen Einfluss.

59 KAPITEL 3. STAND DER FORSCHUNG 51 Besonders zu beachten ist, dass die Semantik oft die Struktur des Layouts bestimmt [RH01], wie beispielsweise beim Fahrplan der U-Bahn, wo die Positionen semantisch bedeutsam sind. Deshalb ist ein manuell erzeugtes Layout wohl immer besser als ein generiertes, da dessen Autor in der Regel seine Bedeutung genau kennt. Friedrich und Nesbitt [FN02] versuchten in ihrer Arbeit, den Wiedererkennungswert von Netz-Visualisierungen nach einer Veränderung der Topologie zu verbessern. Dies geschah, indem sie die Einhaltung bestimmter Gestalt-Gesetze während der Animation von einem Zustand zum anderen gewährleisteten. Das sollte dazu dienen, das innere Bild, das die Betrachter sich vom Netzwerk gemacht hatten, aufrecht zu erhalten. Für diesen verwendeten sie den Begriff mental map. Es sollten die Fähigkeiten des Gehirns zur Mustererkennung ausgenutzt werden. Eine Auflistung von unterschiedlichen Kriterien beim Graph-Zeichnen ist bei [Pur98] zu sehen. Abbildung 3.18: [Pur98]: Graph-Layout-Kriterien In Abb sind fünf Kriterien illustriert. Die oberen Graphen haben jeweils eine starke, die unteren eine schwache Präsenz des jeweiligen Kriteriums. Die mit b, c, m, o und s bezeichneten Kriterien sind: Knickminimierung, Kreuzungsminimierung, Winkelmaximierung, Orthogonalität und Symmetrie. Auch hier wurde in Tests bestätigt, dass die Optimierung

60 KAPITEL 3. STAND DER FORSCHUNG 52 dieser Kriterien die Lesbarkeit von Graphen verbessern kann Metriken für die Kriterien Um die Qualität einer Visualisierung bezüglich eines bestimmten Kriteriums zu bewerten, muss für das entsprechende Kriterium eine Bewertungs-Funktion β : L R zur Verfügung stehen, die es erlaubt, Darstellungen auf den Grad der Einhaltung des Kriteriums hin zu bewerten. Beispielsweise ließe sich eine Funktion realisieren, die die Menge der Kantenkreuzungen in der Darstellung zählt und diese ins Verhältnis zu der Anzahl von minimal nötigen Kreuzungen setzt. Metriken werden meist normalisiert als reelle Zahlen im Intervall [0, 1] angegeben, um eine Vergleichbarkeit der Darstellungen zu gewährleisten [PCA02] Algorithmen zum Messen der ästhetischen Kriterien Viele Algorithmen zur Optimierung der ästhetischen Kriterien von Graph- Visualisierungen, die im folgenden Kapitel besprochen werden, benötigen Verfahren zum Test der Qualität der einzelnen Kriterien. Um einen Graph kreuzungsfrei zu zeichnen, muss man vorher feststellen, ob dies überhaupt möglich ist. Dazu muss ein Planaritätstest [Wei01] feststellen, ob der Graph planar ist. Falls dies nicht der Fall ist, möchte man wenigstens ein Layout mit einer minimalen Anzahl von Kantenkreuzungen haben und muss diese Zahl kennen. Zudem muss man einen Test zur Verfügung haben, der die aktuelle Anzahl der Kreuzungen liefern kann [BM01, S. 102]. Dann kann man entscheiden, ob man weiter optimieren soll oder nicht. Ähnliches gilt auch für weitere ästhetische Kriterien, die optimiert werden sollen, wie die Anzahl der Kantenknicke und die Anordnung der Knoten nach bestimmten Gesetzen. Daher kann man zu den jeweiligen

61 KAPITEL 3. STAND DER FORSCHUNG 53 Optimierungsalgorithmen für ein bestimmtes ästhetisches Kriterium auch entsprechende Test-Algorithmen finden. Als Beispiel soll das Vorgehen zum Messen der Kantenkreuzungen bei Purchase [Pur02] aufgeführt werden. Da das Kriterium als Intervall [0, 1] angegeben werden soll, wobei 1 den besten Fall, also keine Kantenkreuzungen, ausdrücken soll und 0 den schlechtesten, also wenn alle m Kanten bei n Knoten sich kreuzen, muss man zuerst die Anzahl der möglichen Schnittpunkte berechnen: c all = m i=1 (i 1) Davon müssen dann die nicht möglichen Schnittpunkte abgezogen werden: c max = c all 1 2 n degree(k j )(degree(k j ) 1) j=1 Danach muss man die Anzahl der tatsächlichen Kantenkreuzungen c berechnen. Dies kann man mithilfe der Lösung von linearen Gleichungssystemen tun, bei der jeweils eine Kante einer Gleichung entspricht. Es ergibt sich dann folgendes Maß für das Kriterium der Kantenkreuzungen: M = 1 c c max wenn c max > 0 0 sonst Algorithmen zur Optimierung von ästhetischen Kriterien Zu den vorgestellten Kriterien wurden bereits einige Algorithmen herausgearbeitet, die jeweils eine Optimierung eines oder mehrerer bestimmter

62 KAPITEL 3. STAND DER FORSCHUNG 54 Kriterien vornehmen. Abbildung 3.19: [Pur98]: Algorithmen zur Optimierung von Graph- Layout-Kriterien In Abb sieht man acht unterschiedliche Graph-Layouts, die mit einem der im Folgenden kurz erklärten Algorithmen in ein bestimmtes Layout gebracht wurden. FD-FR (force directed algorithm by Fruchtermann and Reingold); Kriterium: Symmetrie, Kantenkreuzungen minimieren FD-K (force directed algorithm by Kamada and Kawai): wie FD-FR POGB (planar orthogonal grid drawing); Kriterium: Orthogonalität PG (planar grid); Kriterium: Kantenkreuzungen minimieren PGS (planar grid drawing with straight line edges); Kriterium: Kantenkreuzungen minimieren SEIS (Seisenberger); Kriterium: Kantenkreuzungen minimieren TU (Tunkelang); Kriterium: Kantenkreuzungen minimieren, gleichmäßige Verteilung

63 KAPITEL 3. STAND DER FORSCHUNG Dynamische Layouts mit physikalischer Simulation Beispielhaft für einen dynamischen Layout-Algorithmus stellen wir hier ein Verfahren vor, das sich an physikalischen Modellen orientiert. Das Federmodell von Eades [Ead84] [Bra01a] ( Spring Embedder )geht von zwei Annahmen aus: Knoten stoßen sich gegenseitig ab. Kanten ziehen sich gegenseitig an. Die Vektoren für die Positionen zweiter Knoten u und v werden hier mit p u und p v bezeichnet. p v p u bezeichnet die Länge der Differenz von p u p v, p u p v den Einheits-Vektor, welcher von p u nach p v zeigt. c ϱ ist eine Abstoßungs-Konstante, c σ ist ein Parameter, der die Stärke der Feder kontrolliert. l bezeichnet die natürliche Länge der Feder. Die Formel (3.2) berechnet die Stärke der Abstoßung zweier nicht adjazenter Knoten u und v. Die Abstoßungs-Kräfte nehmen quadratisch zum Abstand ab. Die Formel (3.3) berechnet die Stärke der Anziehung der Knoten, wenn eine Kante vorhanden ist. Die Anziehung wächst logarithmisch mit der Spannung der Feder. f rep (p u, p v ) = c ϱ p v p u 2 p u p v (3.2) f spring (p u, p v ) = c σ log p v p u 2 l p v p u (3.3) Die endgültige Visualisierung ergibt sich dann nach einer gewissen Zeit, wenn ein Gleichgewicht der Kräfte im Graphen eintritt. Der Algorithmus arbeitet wie folgt:

64 KAPITEL 3. STAND DER FORSCHUNG 56 Algorithm: Kraftminimierung while auf alle Knoten wirkenden Kräfte ungleich null do end for alle Knoten do Addiere alle Kräfte, die auf Knoten wirken; end Verschiebe Knoten in Richtung resultierender Kraft; Das daraus entstehende Bild entwickelt sich ohne Einfluss eines Entwicklers (s. Abb. 3.20). Dieser kann nur durch die Auswahl und Anpassung des geeigneten Algorithmus und durch die Wahl der geeigneten Parameter Einfluss auf das sich formende Bild nehmen. Eine genaue Erläuterung des Verfahrens kann bei Brandes [Bra01a] nachgelesen werden. Abbildung 3.20: Illustration der physikalischen Simulation [Bra01a, S. 73]

65 KAPITEL 3. STAND DER FORSCHUNG Constraints Constraints sind Nebenbedingungen, die ein Algorithmus einhalten muss, um die Korrektheit eines Sachverhaltes zu gewährleisten. Bei Rayll [RMS97] werden diese zur Formulierung von Regeln für Graphen- Layouts eingesetzt. Diese sind in der Editier-Software GLIDE (Graph Layout Interactive Diagram Editor) implementiert. In Abb sind die verwendeten Constraints (Regeln) aufgelistet. Es wird zwischen syntaktischen und semantischen Constraints unterschieden. Ein Beispiel für eine syntaktische Regel ist die Forderung, dass sich Knoten nicht überlappen dürfen. Eine syntaktische Regel wäre beispielsweise die Forderung, bestimmte Knoten entlang einer Achse anzuorden. Mit dem Editor (Abb. 3.22) kann man Graphen zeichnen und auf Teilbereiche bestimmte Constraints anwenden. Wenn der Graph verändert wird, also Positionen verschoben werden oder Teile ergänzt oder gelöscht werden, versucht das Programm, diese Constraints einzuhalten. Technisch wird dies als physikalische Simulation (Abschnitt 3.9.7) realisiert, die durch Constraints eingeschränkt wird Visuelle Graphen-Grammatiken Anstatt Graphen mit Hilfe von formalen zeichenbasierten Grammatiken zu beschreiben, können auch visuelle Graph-Grammatiken eingesetzt werden, die den Vorteil haben, dass die Struktur der Graphen mathematisch präzise direkt mit visuellen Mitteln beschrieben werden kann (s. auch [Nak74, S. 159]). Im Folgenden werden zwei erweiterte Ansätze vorgestellt, mit denen zusätzlich noch das Layout eines Graphen formal beschrieben werden kann. Im Gegensatz zu dieser Arbeit wird allerdings

66 KAPITEL 3. STAND DER FORSCHUNG 58 Abbildung 3.21: Constraints [RMS97] nur das Layout formal beschrieben, aber die Optimierung der Darstellung wird nicht behandelt Layered Graph Grammars Bei Rekers [RS96] wird zwischen der Visualisierung, dem Layout und der Semantik eines Graphen unterschieden. Es wird eine Dreiteilung der Definition vorgeschlagen: Die konkrete Darstellung wird von der Struktur getrennt, als Koppelung dient eine weitere Datenstruktur, der Spatial Relations Graph (SRG). Dieser beschreibt die visuelle und räumliche Beziehung zwischen den Elementen. Alle visuellen Elemente werden in diesem Graphen als eigene Konoten notiert. In Abb (c) ist beispielsweise zu sehen, dass auch eine gerichtete Kante, also ein Pfeil, als eigenständiger Knoten notiert wird. Ebenso werden die Texte in den Knoten als Kind- Knoten der Text-Boxen (Rect) definiert. Die beschrifteten Kanten im SRG

67 KAPITEL 3. STAND DER FORSCHUNG 59 Abbildung 3.22: GLIDE [RMS97] sind als Relationen aufzufassen, die die Anordnung festlegen. Beispiele hierfür sind start_at oder above. Die Struktur wird im Abstract Syntax Graph (ASG) (Abb (b)) analog zu einer formalen Grammatik festgelegt. Ein Problem bei der Implementierung eines Parsers ist das worstcase-laufzeitverhalten: exponentielle Komplexität Spacial Graph Grammars Bei Kong [KZZ06] wird nicht zwischen der visuellen und strukturellen Definition der Grammatik unterschieden. Beides wird innerhalb der formalen Grammatik vorgenommen. Dies verbessert das Laufzeitverhalten erheblich: polynominale Komplexität. In Abb (b) ist eine Produktions- Regel einer solchen Grammatik zu sehen. Jeder Knoten wird in ein 3x3- Gitter aufgeteilt. Die Ecken der Kanten werden gemäß ihrer gewünschten

68 KAPITEL 3. STAND DER FORSCHUNG 60 Abbildung 3.23: Beispiel für Layered Graph Grammars [RS96] Ausrichtung entlang der acht Himmelsrichtungen innerhalb dieses Gitters dargestellt. Das Aussehen der Darstellungen wird durch eine Spacial signature in den Knoten definiert. In Abb werden einige dieser Signaturen aufgelistet. Es gibt folgende Kategorien: Richtung, Distanz, Topologie, Ausrichtung und Größe. Außerdem können noch relative Größenänderungen angegeben werden Allgemeine Optimierungsverfahren Will man dagegen mehrere Kriterien optimieren, deren Art und Anzahl nicht von vornherein festgelegt ist, so sind die vorher in Abschnitt genannten, speziell für bestimmte Kriterien geschaffenen Algorithmen ungeeignet. Also muss man andere Wege gehen und sich die allgemeinen Optimierungsverfahren genauer ansehen. Ausgangspunkt unserer Über-

69 KAPITEL 3. STAND DER FORSCHUNG 61 Abbildung 3.24: Beispiel für Spacial Graph Grammars [KZZ06] Abbildung 3.25: Die visuellen Notationen der Spacial Graph Grammars [KZZ06] legungen ist die Idee, aus einer Reihe von zufällig erzeugten Graphen- Visualisierungen jene auszuwählen, die anhand einer Menge an Kriterien

70 KAPITEL 3. STAND DER FORSCHUNG 62 als am besten bewertet wurde. Optimierungsverfahren, die mit einer zufälligen Anfangs- Konfiguration beginnen und bei denen der Zufall auch die Folgeschritte beeinflusst, nennt man probabilistische Algorithmen. Diese Verfahren unterscheiden sich in der Strategie zur Berechnung der Folgeschritte. Ein mögliches Verfahren wurde als Hill-Climbing-Algorithmus in [RT05] beschrieben. Eine Optimierung verschiedener Kriterien ist ein klassisches Optimierungsproblem, bei dem eine möglichst optimale Lösung in vertretbarer Zeit gesucht wird. Da solche Verfahren meist sehr komplex sind, wird oft nicht versucht, die optimale Lösung zu finden, sondern eine möglichst gute, mit vertretbarem Aufwand gefundene. Dazu werden so genannte heuristische Verfahren eingesetzt. Diese lösen das Optimierungsproblem zwar nur näherungsweise, dafür aber effizient. Es gibt verschiedene Arten von solchen Verfahren, einfache Verfahren sind die Greedy-Strategien [Ern00, S. 437] (greedy=gierig). Bei diesen gierigen Verfahren werden Entscheidungen, die den Fortschritt des Verfahrens näher an die Lösung bringen, nicht mehr revidiert. Weitere mögliche Verfahren wären: Treshold Accepting, der Sintflut-Algorithmus, die Ameisenkolonieoptimierung und andere (s. Gredes et. al. [GKK04]). Eine genaue Betrachtung dieser Verfahren würde hier zu weit führen. Davidson und Harel [DH96] verwendeten Simulated Annealing als Optimierungs-Algorithmus für Graphen- Visualisierungen. Sie entwickelten ein Verfahren, mit dem sich verschiedene ästhetische Kriterien optimieren lassen. Sie stellten fest, dass ihr Algorithmus gute Resultate lieferte, auch im Vergleich zu physikalischen Simulationen.

71 KAPITEL 3. STAND DER FORSCHUNG 63 Genetische Algorithmen Ein guter Ansatz, Optimierungsprobleme anzugehen, ist die Verwendung von genetischen Algorithmen [Ern00]. Diese haben ein gutes Laufzeitverhalten, auch können mehrere Kriterien optimiert werden. Das Vorbild dieser Algorithmen ist die Auslese in der Natur, die Evolution. Man kann diese Vorgänge als eine Optimierung ansehen und formal beschreiben. Charles Darwin [Dar60] hat diese Prozesse erstmals beschrieben. Übertragen auf die Informatik kann das Vorgehen der Natur kopiert und auf beliebige Probleme angewendet werden. Ein Vorteil dieser Algorithmen ist, dass man beliebig viele Kritereien optimieren kann. Sie sind einfach zu implementieren und anzupassen. Um die Performance von genetischen Algorithmen weiter zu verbessern, könnte man diese parallelisieren. Dies ist gut möglich, da man mehrere Individuen einer Population gleichzeitig erzeugen und bewerten könnte. Der Einsatz von genetischen Algorithmen zur Erzeugung von Graph- Visualisierungen wurde auch bereits bei Vrajitoru und DeBoni [VD05] oder Eloranta et al. s TimGA Algorithmus [ME96] oder Eades et al. [EUBS98] untersucht Verwandte Arbeiten Den Bereichen der Mensch-Maschine-Interaktion und der guten Gestaltung von Benutzer-Oberflächen kommen immer mehr Bedeutung zu. Die User-Experience in Rich Media Applications wird immer wichtiger, für die Anwender sowie kommerziell, da sich solche Software besser verkaufen lässt. Auch die immer größer werdende Menge an Informationen motiviert zur geeigneten, ansprechenden Darstellung derselben. Viele

72 KAPITEL 3. STAND DER FORSCHUNG 64 Software-Anwendungen setzen mittlerweile Techniken der Informationsvisualisierung zur Darstellung von Informationen ein. Im Hinblick auf unsere Umsetzung, einer Suchmaschinen-Oberfläche, werden wir deswegen ähnliche Software-Projekte vorstellen. Da die Zahl der Anwendungen mit visueller Unterstützung zur Exploration von Such-Vorgängen sehr groß ist, werden im Folgenden beispielhaft zwei ausgewählte Anwendungen vorgestellt, die in manchen Aspekten Ähnlichkeiten zu unserer Implementierung aufweisen Lyberworld Der interaktive Visualisierungs-Prozess wird bei Hemmje prototypisch in der Anwendung Lyberworld umgesetzt, einer Anwendung, die Information-Retrieval Prozesse in Volltext-Datenbanken unterstützt. Diese wird durch zwei kontext-abhängige Visualisierungen unterstützt: Die Kontextbaumvisualisierung (Abb. 3.26) und die Relevanzkugelvisualisierung (Abb. 3.27). Die Kontextbaumvisualisierung stellt hierarchisch gefundene Dokumente dar. Ausgewählte Dokumente können in der Relevanzkugelvisualisierung dargestellt werden, diese dient der Visualisierung von Zusammenhängen. Auch diese Arbeit hat zum Ziel, die kognitive Effizienz von Visualisierungen zu verbessern. Analog zu unserer Vorgehensweise wird zuerst ein Modell entworfen, das dann in einem Prototyp umgesetzt wird Web-Visualisierungen Die Informationsvisualisierung ist keine akademische Angelegenheit. Bei Turetken et. al. wird eine sehr große Zahl von Web-basierten Tools zur Visualisierung von Web-Such-Ergebnissen vorgestellt. [TS07]. Jedoch ist fest-

73 KAPITEL 3. STAND DER FORSCHUNG 65 Abbildung 3.26: Kontextbaumvisualisierung [Hem99] zustellen, dass obwohl die Publikation des Artikels nur drei Jahre von der Niederschrift unserer Arbeit trennen viele der Webseiten nicht mehr verfügbar waren. Ein wesentlicher Aspekt des World-Wide-Webs ist eben der ständige Wandel, wenige Jahre sind dort ein Zeitraum, in dem sich vieles ändern kann. So sind viele Web-Tools nach dem Erscheinen der entsprechenden Publikation schon veraltet. Auch die neuesten Entwicklungen im Web werden erst oft Jahre später in Publikationen erwähnt. Turetken et. al. klassifizieren eine Menge an der zur Zeit ihrer Untersuchung verfügbaren grafischen Web-Such-Oberflächen. Eine Kategorie ist die verwendete zugrunde liegende Daten-Struktur und das Visualisierungs-Paradigma, mit dem die Daten visualisiert werden. Die Datenstrukturen werden in allgemeine Graphen, Bäume und Netzwerke eingeteilt. Unter Netzwerken werden Graphen mit gewichteten Kanten verstanden. Als Visualisierungs-Paradigmen werden eine Real-Life Metapher, Karten, Bäume und Netzwerke aufgeführt. Die meisten der aufgelisteten Tools verwenden eine Graphen-Visualisierung, also entweder Bäume oder (gewichtete) Graphen. Einige dieser Graphen-Layouts visualisieren die Such-Historie oder sonstige Browsing-Patterns, andere die

74 KAPITEL 3. STAND DER FORSCHUNG 66 Abbildung 3.27: Relevanzkugelvisualisierung [Hem99] Verlinkung zwischen den Web-Seiten oder sematische Beziehungen. Ein erwähntes Tool, welches zum Zeitpunkt der Niederschrift dieser Arbeit noch verfügbar war, ist TouchGraph. Die Oberfläche von TouchGraph (Abb. 3.28) hat viele Ähnlichkeiten mit unserer Implementierung, und das nicht nur, weil dieses Tool ebenfalls in JAVA programmiert wurde. Im Unterschied zu unserer Implementierung werden aber dort Webseiten mit ähnlichem Inhalt als Graph visualisiert. Interessant ist die Visualisierungs-Technik: Es wird eine physikalische Simulation verwendet. Auch in unserer Implementierung wird als Vergleichs-Visualisierung zusätzlich eine solche angeboten.

75 KAPITEL 3. STAND DER FORSCHUNG 67 Abbildung 3.28: Screenshot von TouchGraph [Tou]

76 KAPITEL 3. STAND DER FORSCHUNG Zusammenfassung Der Begriff der Ästhetik wird in vielen Bereichen der Wissenschaft verwendet. Auch wird die Wahrnehmbarkeit in einer unüberschaubaren Zahl an Veröffentlichungen aus unterschiedlichen Bereichen behandelt. Ein ebenso weites Feld ist die Optimierung. In der vorangegangenen Darstellung wurde eine Auswahl an Beiträgen zum Thema aufgelistet und diejenigen mit der größten Nähe zur vorliegenden Arbeit erwähnt. Weiter wurden die verwendeten Begriffe eingeführt und präzisiert. Verwandte Themen wurden behandelt und Unterschiede zur vorliegenden Arbeit herausgearbeitet. Dabei wurde bereits auf dort auftretende Probleme und Handlungsbedarf aufmerksam gemacht. Es wurden grundlegende Erkenntnisse erwähnt, auf denen diese Arbeit aufbaut. Auch ähnliche praktische Umsetzungen wurden vorgestellt. In dieser Arbeit wurde evaluiert, deshalb durfte ein Überblick über die Thematik der Evaluierung von Informationsvisualisierung nicht fehlen. Diese knappe Abhandlung kann keinen Anspruch auf Vollständigkeit erheben, jedoch hoffen wir, einen möglichst präzisen Überblick über die Themen Ästhetik und Wahrnehmung, den Bereich der Informationsvisualisierung, speziell des Graphen-Zeichnens, sowie der Optimierung der Darstellungen gegeben zu haben.

77 4 Das Modell Dieses Kapitel behandelt den Entwurf eines alternativen Modells zur Visualisierung von Graphen, das helfen soll, bestimmte Probleme zu vermeiden. Nach einer Identifizierung dieser Probleme wird das Modell formal spezifiziert und dessen Funktionsweise dargelegt. 4.1 Eine Klärung der Begriffe In den einzelnen erwähnten Forschungsfeldern werden oft uneinheitliche Terminologien verwendet. Die in dieser Arbeit verwendeten Begriffe lehnen sich stark an jene aus der Domäne des Graph-Zeichnens an. Es werden im Folgenden die Begriffe klar definiert. Zunächst soll der Begriff der visuellen Variablen erklärt werden: Wir verwenden ihn wie bei Bertin [Ber99]. Demnach beziehen sich visuelle Variablen auf unterschiedliche ästhetische Eigenschaften eines Layouts. Diese können ohne kognitive Prozesse direkt in der Retina, der Netzhaut im Auge, unterschieden werden. Bertin beschreibt folgende visuelle Variablen Ω = {p, f, d, c, t, b, s}: Position (p) Form ( f ) 69

78 KAPITEL 4. DAS MODELL 70 Richtung (d) Farbe (c) Struktur (t) Helligkeit (b) Größe (s) Im Bereich der Informationsvisualisierung spricht man von der Expressivität einer Visualisierung: der kognitiven Effizienz. In der Domäne des Graphen-Zeichnens wird dagegen synonym der Begriff der Ästhetik von Visualisierungen gebraucht [PCM96]. Dieser Begriff entspricht der sinnlichen Wahrnehmung von Baumgarten. Der Begriff Ästhetik, wie er auch in dieser Arbeit verwendet wird, wurde bereits definiert (s. Abschnitt 3.2). Er steht für die gute visuelle Wahrnehmbarkeit von (Graph-)Visualisierungen und somit für deren kognitive Effizienz. Definition 3 (Layout) Der hier verwendete Begriff des Layouts beschreibt die Regeln, nach denen ein ein Graph gezeichnet wird. Er entspricht im Prinzip dem Begriff des visuellen Mappings in der Informationsvisualisierung [CMS99]. Ein stabiles Graph-Layout ist ein Layout, welches nur eine einzige Visualisierung beschreibt. Ein Layout besitzt eine strukturelle Stabilität, wenn es bestimmte geforderte Bedingungen einhält. Auch der Begriff der Darstellung [Hem99, S. 86] wird verwendet. Definition 4 (Darstellung) Der Begriff der Darstellung bezeichnet eine Funktion. Die in dieser Funktion enthaltenen Transformations-Regeln verkörpern das Layout. Hier wird dieses also im wesentlichen als Regelwerk der Darstellung

79 KAPITEL 4. DAS MODELL 71 aufgefasst. Die Regeln legen die Einhaltung bestimmter Bedingungen fest, denen einzelne Kriterien 1 gehorchen müssen. In anderen Arbeiten ist der Begriff der Constraints statt Bedingung üblich. Der Begriff des Layouts wird im Folgenden als synonym zum Vorgang der Darstellung aufgefasst. Das Ergebnis des Darstellungsprozesses wird Visualisierung genannt und entspricht dem, was den Anwendern präsentiert wird. Definition 5 (Optimierung) Der Begriff der Optimierung, wie er im Kontext dieser Arbeit verwendet wird, soll keine Suche nach dem Optimum bezeichnen, sondern ist als Synonym zum Begriff Verbesserung zu verstehen. Eine Optimierung im Sinne dieser Arbeit ist ein Prozess, der eine Verbesserung bewirkt. 4.2 Die Problematik: Optimierung unter Berücksichtigung des Layouts Das Referenzmodell der Informationsvisualisierung [CMS99] nach Shneiderman beschreibt den Vorgang der Transformation der darzustellenden Daten in eine Visualisierung. Wie erwähnt, gibt Jäschke [JGH05] einen Überblick und eine Einordnung von weiteren Modellen der Informationsvisualisierung. Analog zu Jäschke wollen wir auch in dieser Arbeit keinen Neu-Entwurf von bestehenden Modellen wagen, sondern unseren Ansatz später mit anderen Modellen zusammenführen. Ziel ist ein konsolidiertes Modell der Informationsvisualisierung. Abb. 4.1 zeigt eine alternative Darstellung des Modells, die sich an der Notation von Petri-Netzen orientiert. Demnach ist das Modell als 1 Ein Kriterium ist also ein Merkmal, welches bei einer Entscheidung relevant ist.

80 KAPITEL 4. DAS MODELL 72 Graph (P, T, E) mit den Stellen P = {1, 2, 3, 4}, den Transformationen T = {D, M, V} und den Kanten E = {(1, D), (D, 2), (2, D), (2, M), (M, 3), (3, M), (3, V), (V, 4), (4, V), (4, D), (4, M)} aufzufassen. Die User und die Stelle 4 sind identisch, da die User auf der View-Ebene operieren. In der Grafik wurde dieser jedoch der Anschaulichkeit wegen separat dargestellt. Abbildung 4.1: Alternative Darstellung des Referenzmodells der Informationsvisualisierung vgl. Abb Das Layout beschreibt einen Raum der möglichen Visualisierungen, die Optimierung entspricht der Suche nach einer den ästhetischen Kriterien genügenden Visualisierung. Bisher werden das Layout und die Optimierung bei der Darstellung nicht klar getrennt. Meist wird das Layout durch die Art der Optimierung vorgegeben, nicht durch eine gestalterische Idee. Bei statischen Layouts wie beispielsweise den ebenenbasierten Sugiyama-Layouts [BM01] findet die Generierung des Layouts zusammen mit der Optimierung der Wahrnehmungskriterien nur einmal beim visu-

81 KAPITEL 4. DAS MODELL 73 ellen Mapping (M) statt. Bei einer Änderung der darzustellenden Datenmenge (D) wird dann die gesamte Visualisierung erneut generiert und somit die alte Visualisierung zerstört. Alternativ können auch Knoten und Kanten zur vorhandenen Visualisierung hinzugefügt oder aus dieser gelöscht werden. Dieses Vorgehen kann das vorhandene Layout erhalten, aber dafür die Qualität der Visualisierung bezüglich der Wahrnehmungskriterien verschlechtern. Bei dynamischen Layouts wie den physikalischen Simulationen [Bra01a] findet die Generierung des Layouts erst durch wiederholtes Neuzeichnen (V) der Visualisierung statt, eine vorherige Festlegung eines gewünschten Layouts ist erst gar nicht möglich. Auch die Veränderung der Knotenmenge beeinflusst das Gesamt-Layout. Das Problem ist also, ein entworfenes Layout nach einer Modifikation der darzustellenden Daten zu erhalten, bei gleichzeitiger Berücksichtigung der Wahrnehmungskriterien. Offen ist auch, inwieweit die Benutzer in der Lage sind, die Visualisierung selbst zu verändern. Bei starren Layouts ist dies meist von vornherein unmöglich, bei dynamischen Layouts, wie den physikalischen Simulationen, werden Einflüsse des Benutzers oft nicht genügend berücksichtigt und durch die Wirkungsweise des Verfahrens wieder rückgängig gemacht. 4.3 Die Trennung des Layouts von der Optimierung der Darstellung Graphical excellence is that which gives to the viewer the greatest number of ideas in the shortest time with the least ink in the smallest space sagt Edward R. Tufte [Tuf83, S. 51]. Entwickler stehen also vor dem Pro-

82 KAPITEL 4. DAS MODELL 74 blem, ein möglichst effizientes visuelles Mapping entwerfen zu müssen. Eine klare Trennung von Layout und Optimierung bei der Darstellung könnte helfen, die genannten Probleme zu lösen (Abb. 4.2). Das Modell kann jetzt als Graph (P, T, E) mit den Stellen P = {1, 2, 3, 4, T, C, R, User}, den Transformationen U = {D, M, F, I, S, P} und den Kanten E = {(1, D), (D, 2), (2, D), (2, M), (M, 3), (3, M), (3, I), (R, M), (I, T), (T, S), (S, 4), (4, I), (F, C), (C, S), (4, P), (P, User)} beschrieben werden. Mit dem Layout kann man die gewünschte gestalterische Idee festlegen. Man bestimmt dort, in welcher Form die Daten abgebildet werden sollen (M), und legt auch die ästhetischen und semantischen Kriterien fest (C), denen das Layout folgen soll. Zusätzlich werden noch weitere visuelle Variablen, die das visuelle Erscheinungsbild bestimmen, definiert (R). Die Optimierung der Ansicht erfolgt nach Bedarf getrennt unter Berücksichtigung der festgelegten Kriterien.

83 KAPITEL 4. DAS MODELL 75 Abbildung 4.2: Die Trennung von Layout und Optimierung

84 KAPITEL 4. DAS MODELL Struktur und Stil des Layouts In einer anderen Anwendungs-Domäne, dem Web, wird das Layout für die Webseiten ebenfalls separat festgelegt. Die meisten Websysteme folgen dem Model-View-Controller-Pattern [GHJV95]. Die View-Schicht entspricht dem Layout der Seiten. Ähnlich wie bei der hier betrachteten Domäne, dem Graph-Zeichnen, werden auch dort variable Datenmengen dargestellt. Man spricht von dynamischen Webseiten. Dort wird das Layout, hier meist Template genannt, mit variablen Mengen an Inhalt gefüllt. Mittlerweile ist es im Web-Design üblich, das Layout in zwei getrennte Bereiche aufzuteilen: Mithilfe von HTML (Hypertext Markup Language) wird die Struktur des Layouts festgelegt. Mit CSS (Cascading Style Sheets) wird die Darstellung der einzelnen in der Struktur enthaltenen Elemente beschrieben [MH05]. Diese Stil- Spezifikationen können auch Regeln beinhalten, die ein dynamisches Verhalten erlauben. Beispielsweise wird mit der CSS-Regel f loat : le f t festgelegt, dass das angegebene HTML-Element immer von links auf vorherige Elemente anschließen soll. Bei einer Änderung der Menge der dargestellten Elemente oder durch eine Veränderung der Größe der Darstellungsfläche im Browser wird das Layout nach den spezifizierten Regeln dynamisch angepasst. Dieses Vorgehen erscheint auch für das Graphen-Zeichnen sinnvoll: Es sollen ebenso variable Datenmengen dargestellt werden, und der dargestellte Graph soll meist eine gewünschte Struktur aufweisen. 2 Deshalb werden wir das Layout weiter aufteilen, in dessen Struktur und den Darstellungs-Stil. Die Struktur beschreibt die Topologie des Graphen. Dort wird der Zu- 2 Ein Beispiel für eine solche Struktur wird später in unserer Umsetzung gegeben.

85 KAPITEL 4. DAS MODELL 77 sammenhang der einzelnen Elemente, der Knoten und Kanten, beschrieben. Auch welche Daten dargestellt werden, ist dort festgelegt. Im Referenzmodell der Informationsvisualisierung entspricht dies den Visual Structures (3 im Modell, Abb. 4.2). Der Stil legt die Darstellung der einzelnen Elemente der Struktur fest. Dieser Stil enthält zum einen reine, unveränderliche Informationen für das Zeichnen, das Rendern (R) der Elemente, also die Festlegung visueller Variablen, der Farben und Formen. Zum anderen werden Regeln (C) definiert, die die Positionen und andere dynamische Eigenschaften bestimmen. Auch kann eine Position relativ zu einem hierarchisch darüberliegenden Element angegeben werden, analog zum Vorgehen bei Web- Seiten. Das variable Verhalten der Eigenschaften kann durch einschränkende Kriterien (oder Constraints) weiter geregelt werden. Diese bestimmen das dynamische Verhalten der Visualisierung. Dort können Gesetze zur Darstellung beispielsweise Gestaltgesetze oder semantische Kriterien angegeben werden. Durch die Festlegung der Struktur ist also die strukturelle Stabilität gewährleistet. Jedoch werden bei unserer Vorgehensweise keine stabilen Graphen-Layouts beschrieben. Hier ist nochmals eine Übersicht über die Einteilung des Layouts: Struktur Visual Structures (3) Stil Element-Darstellung (R) Layout-Kriterien(C)

86 KAPITEL 4. DAS MODELL Die Spezifizierung des Layouts Nun wird der strukturelle Aufbau von Layouts genauer beschrieben: Die Daten im Raum der möglichen visuellen Strukturen sind die Data Tables (2). Diese wurden aus den Raw Data extrahiert und können als relationale Daten-Tabellen, also als Graph G vorliegen. Es sei nochmals erwähnt, dass die generierten Visualisierungen dynamischer Natur sind: Die Anzahl und Struktur der Objekte (also Knoten und Kanten) einer Darstellung ist abhängig von der Mächtigkeit und Struktur der darzustellenden Datenmenge, die nicht im vornherein festgelegt ist, sondern durch vorherige Prozesse wie beispielsweise Suchanfragen entstehen. Das Layout enthält eine Menge an visuellen Objekten O j oder Entitäten, die in hierarchischer Abhängigkeit zusammen eine als Graph G beschreibbare Struktur aus dem Raum der möglichen visuellen Strukturen G, (O j G, G G) bilden. 3 Dieser Graph G ist allerdings nicht mit der Ansicht (4 in Abb. 4.1) gleichzusetzen, sondern entspricht den Visual Structures (3) im Referenzmodell nach Shneiderman. Definition 6 (Visual mapping) Das visual mapping eines abstrakten Graphen ohne konkrete Darstellungs-Attribute ist eine Transformation in einen Graphen, der aus visuellen Objekten O j besteht: M : G G, O j G, j N Bei diesem Schritt sollen gleichzeitig die Attribute der visuellen Datenstruktur, wie beispielsweise die Farbe und die Form der Knoten und Kanten sowie die Schriftgröße und -farbe, festgelegt werden. Die visuellen Objekte können sichtbare Entsprechungen der Knoten und Kanten sein, aber auch weitere visuelle Entitäten, wie die Beschriftung der Knoten und Kanten oder die Pfeile der Kanten. 3 Das Hochkomma soll andeuten, dass es sich nicht um einen abstrakten Graphen, sondern um einen Graphen mit visuellen Eigenschaften handelt.

87 KAPITEL 4. DAS MODELL 79 Definition 7 (Visuelle Objekte) Alle visuellen Objekte sind als Menge mit den einzelnen visuellen Variablen als Elemente aufzufassen O j Ω, j N. Die in Tabelle 4.2 verwendeten visuellen Variablen könnten dann als Komponenten einer Menge O j geschrieben werden: O j = {p j, c j, s j }. (Hier die Position p, die Farbe c und die Größe s) Die einzelnen Komponenten können dabei die konkreten Werte ausdrücken und deshalb, je nach Typ der visuellen Variablen, beliebige Werte annehmen. Wenn beispielsweise nur die Positionen relevant wären, dann könnte ein bestimmtes Objekt wie folgt angegeben werden: O 3 = {(100, 100)}. Der zentrale Punkt im Referenzmodell nach Shneiderman, mit dem sich diese Arbeit auseinandersetzt, ist die View Transformation (Abb. 4.1 V). Dieser Schritt wurde weiter aufgegliedert. Das Rendern der Ansicht (Abb. 4.2 R) kann als Menge an n Transformationen r i R, 1 i n der einzelnen visuellen Variablen aufgefasst werden: r i : Ω Ω. Diese Transformationen können dabei die Hierarchie der entsprechenden Objekte O j berücksichtigen und so beispielsweise einen Knoten in Abhängigkeit von seinen Eltern-Knoten plazieren. Im Layout sollen noch zusätzlich eine Menge an Regeln, Anforderungen oder Bedingungen (Abb. 4.2 C) beschrieben werden, denen die Darstellungs-Kriterien der möglichen Visualisierungen genügen sollen. Solche Kriterien sollen entweder ästhetischer oder semantischer Natur sein können. Ein Beispiel für eine ästhetische Regel: Man könnte festlegen, dass die Knoten symmetrisch angeordnet werden sollen, also demnach einem Gestaltgesetz gehorchen. Man könnte auch die Einhaltung von Wahrnehmungs-Bedingungen fordern, beispielsweise eine geringe Anzahl von Kantenkreuzungen, das Kriterium ist deren Anzahl. Als Beispiel für eine semantische Regel kann man sich auch eine Regel denken,

88 KAPITEL 4. DAS MODELL 80 die festlegt, dass alle gerichteten Kanten nur von oben nach unten verlaufen dürfen, das Kriterium wäre dann die Richtung der Kanten. Wie die Regeln konkret implementiert werden, ist abhängig von der verwendeten Technologie aus Teilbereichen der Informatik. Vorstellbar wäre ein wissensbasierter Ansatz der KI wie bei Bolz [Bol93] oder Constraints wie bei Böhringer und Paulisch [BP90]. Eine genauere Betrachtung der Kriterien folgt in Abschnitt Auch könnten die Regeln mitsamt der visuellen Struktur mittels einer visuellen Graph-Grammatik, wie in Abschnitt beschrieben, spezifiziert werden. Denkbar ist auch die direkte Realisierung des Layouts nebst der Regeln in Code. Wichtig ist lediglich, dass die Trennung von Layout und Optimierung eingehalten wird und dass es Entwicklern möglich ist, beides getrennt voneinander zu behandeln. In Abschnitt 5.5 werden wir exemplarisch mathematisch eine formale Spezifikation unseres für die Umsetzung entworfenen Layouts vorlegen. Es ist plausibel und sinnvoll, die Layout-Regeln sowie die spätere darauf aufbauende Optimierung nur auf den sichtbaren Bereich, den View, anzuwenden (Abb.??), da schließlich nur der visuell wahrnehmbare Bereich auf gute Wahrnehmung optimiert werden kann. Analog zur Beschreibung der Informations-Mengen von Landwich [Lan08] (Abschnitt 3.8.4) gibt es eine fokussierte, betrachtete und eine nicht dargestellte Menge bei den visuellen Objekten. Definition 8 (Ansicht) Der View (Abb. 4.2: 4) oder die Ansicht am Darstellungsmedium (Screen) ist als Ausschnitt oder Teilmenge der visuellen Objekte definiert: G G Wenn man einen größeren Bereich optimieren würde, also einen Bereich, der später mittels Transformationen - also Verschiebung (Panning)

89 KAPITEL 4. DAS MODELL 81 oder über Rollbalken oder auch durch Vergrößerung oder Verkleinerung (Zooming) der Zeichenfläche- ins Sichtfeld verschoben werden kann, könnte es passieren, dass die spezifizierten Anforderungen nur für den ganzen Bereich zutreffen, jedoch nicht für den sichtbaren (Abb.??). Zum Beispiel könnte ein kleiner Ausschnitt einer kreisförmigen Darstellung nicht kreisförmig wirken. Die Knoten im View können jedoch mit anderen, außerhalb liegenden Knoten über Kanten verbunden sein. Damit diese nach außen führenden Kanten bei der Optimierung nicht mit verändert werden, wäre es vorstellbar, im Schnittpunkt der betreffenden Kante mit dem Rand des Views einen Hilfsknoten einzufügen (s. Abb.??). Diese Hilfsknoten könnten bei einer Veränderung des Bildausschnitts durch Zoom oder Pan wieder gelöscht und durch neue ersetzt werden. Die Beschränkung der Optimierung auf den View ermöglicht es uns, den Raum der möglichen Darstellungen nach unten abzuschätzen. 4 Um ein Gefühl für die Größenordnung einer solchen Menge zu bekommen, machen wir folgende Annahmen: Aktuelle Bildschirme haben eine Auflösung von weniger als 1440 x 1024 Pixel. Um eine Schrift lesbar darzustellen, benötigen wir eine Schrifthöhe von mindestens 8 Pixel und eine Breite von 5 Pixel. Weiter gehen wir davon aus, dass jeder Knoten mindestens mit einem Zeichen beschriftet ist. Um sichtbare Kanten zwischen den Knoten zeichnen zu können, sollte man außerdem mindestens einen Abstand von 3 Pixel in horizontaler sowie vertikaler Richtung einrechnen. Somit lassen sich maximal Knoten auf der Fläche gleichzeitig darstellen, wenn man voraussetzt, dass diese in einem Raster mit der Knotenbreite und -dicke als Rasterweite angeordnet werden und weiter an- 4 Wir gehen dabei vor wie Nake [Nak74, S.96-97].

90 KAPITEL 4. DAS MODELL 82 nimmt, dass sich an einer möglichen Position entweder ein Knoten oder keiner befinden kann. Für die Kanten wird angenommen, dass diese gerade von einem Knoten zum anderen, also ohne Knicke und Kurven, verlaufen. So ergeben sich mögliche Darstellungen bei der Annahme, dass sich an einer Stelle im Raster entweder ein Knoten befinden kann oder nicht. Dies ist eine Zahl mit 6936 Stellen nach dem Komma. Es lässt sich also feststellen, dass die Anzahl der darstellbaren Knoten im Bild-Raum relativ klein ist. Im Vergleich dazu sind die möglichen Anordnungen, also Visualisierungen, eines Graphen sehr groß. Durch die Beschränkung der Optimierung auf den View muss also nur eine beschränkte Anzahl an Bildobjekten vom Algorithmus verarbeitet werden. Dadurch werden beliebig große Mengen an visuellen Objekten handhabbar. Eine Zusammenfassung mehrerer Knoten zu Überknoten (Clustering) wäre ebenfalls denkbar, diese Idee wird allerdings hier nicht weiter verfolgt, da sich daraus nur wieder Knoten ergeben, die analog zu normalen Knoten behandelt werden können Die Kriterien Der Gestalter des Verfahrens sollte den eigentlichen Zweck und die Semantik des beabsichtigten Layouts kennen und anhand dieser geeignete Layout-Kriterien (im Hinblick auf deren Optimierung) festlegen. Die Bestimmung von zentralen Layout-Kriterien kann oft wesentlich für das Verständnis und die Interpretation der Grafiken sein [Tuf97, S.45]. Die Kriterien eines Layouts können semantischer oder gestalterischer Natur sein. 5 5 Wie bereits bei Ryall [RMS97] beschrieben.

91 KAPITEL 4. DAS MODELL 83 Abbildung 4.3: Optimierung im sichtbaren Bereich Abbildung 4.4: Optimierung der gesamten Zeichenfläche Zu den semantischen Kriterien: Essentiell für die richtige Interpretation von Grafiken kann es sein, inwieweit die Darstellung den Sehgewohnheiten der Betrachter entspricht. So ist es im westeuropäischen Kultur-

92 KAPITEL 4. DAS MODELL 84 Abbildung 4.5: Einfügung von Hilfsknoten raum üblich, entsprechend den Lesegewohnheiten eine Darstellung von links nach rechts, dann von oben nach unten zu betrachten (s. F-Schema von Nielsen [Nie10]). Links und oben angebrachte Elemente werden deshalb oft als wichtiger als andere erachtet. Auch andere Seh-Gewohnheiten können wichtig sein: U-Bahn-Fahrpläne sind meist als solche erkennbar, da sie bestimmten Konventionen folgen. Kriterien können aber auch rein der Gestaltung oder der guten Wahrnehmbarkeit der Grafik (der Ästhetik) dienen: Die Kantenkreuzungen einer Graph-Visualisierung zu minimieren bedeutet auch meist eine Verbesserung der Lesbarkeit, wie bereits erwähnt. Definition 9 (Kriterium) Ein Kriterium c ist eine Funktion, die einen visuellen Graphen G G bewertet und einen normalisierten Wert zwischen 0 und 1 liefert. Diese ist dabei so zu gestalten, dass 1 für eine optimalen und 0 für den

93 KAPITEL 4. DAS MODELL 85 ART GESETZ KRITERIUM ästhetisch Gute Fortsetzung wenig Kantenästhetisch Kreuzungen Nähe räumliche Nähe von Knoten semantisch Ortstreue Position unveränderlich Tabelle 4.1: Gesetze und Kriterien schlechtesten Zustand steht. c i : G [0, 1] Durch die Festlegung, was als gut oder oder schlecht bewertet wird, kann man mit dem Kriterium im Hinblick auf eine spätere Optimierung gleich die Forderung festlegen, ob dieses maximiert oder minimiert werden soll. Definition 10 (Gestaltungsziel) Das Gestaltungsziel C ist aus der Menge an n Kriterien oder Gesetzen, denen das Layout folgt, zusammengesetzt. Eine Gewichtung der einzelnen Kriterien gibt an, wie stark die Präsenz dieses Kriteriums ist. C = 1 n n i=1 (c i (G ) w i ), i N, 0 <= c i <= 1, w i R, 0 <= w i <= 1 In der Tabelle 4.1 ist der Zusammenhang zwischen dem Kriterium und dessen Art, also ob es ästhetischer oder semantischer Natur ist, nochmals verdeutlicht. In der Tabelle 4.1 werden noch die Abhängigkeiten der visuellen Varia-

94 KAPITEL 4. DAS MODELL 86 blen von den einzelnen Kriterien aufgezeigt. Die Kriterien kollidieren also oft: Will man eine gute Fortsetzung als Gestaltungsmerkmal, so kann das im Widerspruch zu anderen Zielen oder Kriterien stehen, beispielsweise zur Ortstreue oder dem Gesetz der Nähe, da dort die Position ausschlaggebend für die Einhaltung der Kriterien ist. GESETZ VISUELLE VARIABLEN POSITION FARBE GRÖSSE Gute Fortsetzung x Nähe x Prägnanz x x Ortstreue x Tabelle 4.2: Layouteigenschaften 4.4 Die Optimierung der Darstellung mit genetischen Algorithmen Wie bereits in Abschnitt 3.10 erwähnt, eignen sich genetische Algorithmen gut für die Optimierung von mehreren Kriterien. Ein genetischer Algorithmus zur Optimierung bei der Darstellung könnte wie folgt ablaufen (vgl. [Poh00, S.7], [GKK04, S.41]):

95 KAPITEL 4. DAS MODELL 87 Algorithm: Optimierung Erschaffe eine Population T von Visualisierungen; Bewerte Visualisierungen in T; while Beste Bewertung nicht adäquat do Schaffe neue Visualisierungen T durch Rekombination; end Bewerte diese und füge sie in den Pool T ein; Entferne die schlechtesten (S); //Dadurch wird die Größe der Population konstant gehalten Mutiere einige Visualisierungen T T; Die einzelnen Visualisierungen werden dabei nicht als Objekte im Sinne der objektorientierten Programmierung, sondern durch Chromosomen repräsentiert. Ein Chromosom ist die Codierung einzelner visueller Variablen (aus Ω) der Visualisierung, den Genen (s. [GKK04, S. 37]). Die Chromosomen können als Zeichenketten oder (Dual-)Zahlen kodiert werden. Dies erleichtert die Schaffung geeigneter Algorithmen zur Mutation und Rekombination der Chromosomen. Die Bewertung der jeweiligen Visualisierungen T erfolgt über eine Menge an Bewertungsfunktionen, die jeweils die einzelnen zu berücksichtigenden Kriterien bewerten, wie in Abschnitt beschrieben. Alle Ergebnisse der einzelnen Bewertungsfunktionen aus dieser Menge fließen in die Gesamtbewertung ein und bilden die Gesamt-Zielfunktion C. Über die Gewichtung w i kann die Wichtigkeit der einzelnen Kriterien angegeben werden. Bei der Selektion kann die Verwendung von Strafwerten helfen, inkorrekte Layouts zu vermeiden [GKK04, S. 77]. Man beachte die Ähnlichkeit der Bewertungs-Funktion zu Birkhoffs Formel (Abschnitt 3.3). Die Ordnung O könnte man als das Maß für die

96 KAPITEL 4. DAS MODELL 88 Einhaltung einzelner Kriterien interpretieren. Die Komplexität (C bei Birkhoff) wäre im Kontext des Graph-Zeichnens als die Mächtigkeit des Graphen zu deuten. Im Gegensatz zum Einsatz von genetischen Algorithmen zur Erzeugung von Graph-Visualisierungen bei Vrajitoru [VD05], Eloranta [ME96] oder Eades et al. [EUBS98] wird bei unserem Ansatz ein bestehendes festes Layout zugrundegelegt und dessen Erhalt durch die Einhaltung von Layout-Kriterien gewährleistet. Der Optimierungs-Algorithmus erzeugt dann eine geeignete verbesserte Darstellung des Layouts. In den erwähnten Arbeiten hingegen, in denen auch bereits genetische Algorithmen zur Graph-Visualisierung zum Einsatz kommen, werden Techniken vorgestellt, die ausschließlich die Wahrnehmungs-Kriterien verbessern. So entstandene Layouts sind immer verschieden. Nach unserer Meinung ist es wünschenswert, ein bestimmtes Visualisierungs-Ziel mit einem vorher festgelegten Layout zu verfolgen. In den meisten Fällen möchte man kein automatisch vorgeschlagenes Layout erhalten. 4.5 Das Interaktionsmodell Im Folgenden stellen wir ein Interaktionsmodell vor, das die Beziehung zwischen Entwickler und Nutzer verdeutlicht. In Abb. 4.6 ist dieses Modell zu sehen, es soll eine Verbindung unseres Modells 6 mit dem von Hemmje (Abb. 3.12) schaffen. Es könnte ein erster Ansatz für ein konsolidiertes Informationsvisualisierungsmodell sein. Bei der formativen Evaluierung (s. Abschnitt 3.8.3) findet ein Zusam- 6 Unser Modell erweitert jenes von Macinlay et. al.

97 KAPITEL 4. DAS MODELL 89 menspiel zwischen den Entwicklern und Nutzern, die auch als Testbenutzer fungieren, statt. Die Zyklen der Entwicklung mit integrierten Nutzertests können mit dem Modell nachvollzogen werden. Ein möglicher Zyklus wäre: (Z, P, 2, M, 3, F, C, U, 2, M, 3, O, V, P, Z, U, Z ). Entwickler haben eine gewisse Vorstellung vom Visualisierungsziel und dem zu entwerfenden Layout (Z ), interpretieren dieses (P ), um aus den zu visualisierenden Daten (2 ) bestimmte auszuwählen und ein Mapping zu entwerfen (M ), das daraus visuelle Strukturen (3) erzeugt. Danach formulieren sie (F ) ästhetische Kriterien (C) für das Layout. Für eine formative Evaluierung können sodann Nutzer herangezogen werden, die die Tauglichkeit des Layouts durch Ausprobieren überprüfen: Aus den Daten (2) werden, wie schon im Referenzmodell verdeutlicht, durch das Mapping (M) visuelle Strukturen gebildet (3). Danach kann eine Optimierung (O), der Ästhetik der Visualisierung erfolgen. 7 Die entstandene Visualisierung (V) wird durch die Nutzer wahrgenommen und interpretiert (P) und führt zu einem Informationsstatus bei den Nutzern (Z). Nun könnte der Interaktionszyklus von Neuem beginnen. Nach dem Test könnten die Nutzer hier auch mit den Entwicklern kommunizieren und diesen ihre durch die Benutzung gewonnenen Erkenntnisse mitteilen (Z, U, Z ). Ausgehend davon könnte der Entwicklungszyklus erneut beginnen. Mit dem Modell wird außerdem sowohl die reine Interaktion der Benutzer abgebildet (U, 2, M, 3, O, V, P, Z, U) als auch eine Entwicklung des Layouts ohne Testphasen (Z, P, 2, M, 3, F, C, U, Z ). 7 Diese Optimierung O ist eine Zusammenfassung des Zyklus (I, T, S, 4, I) in unserem Modell in Abb. 4.2.

98 KAPITEL 4. DAS MODELL 90 Abbildung 4.6: Das Interaktionsmodell 4.6 Zusammenfassung Nachdem wichtige Begriffe definiert wurden und nochmals auf die Problematik bei der Umsetzung und der Interaktion bei Graphenvisualisierungen eingegangen wurde, ist ein konzeptionelles Modell zur ästhetischen Visualisierung von Graphen vorgeschlagen worden, bei dem eine

99 KAPITEL 4. DAS MODELL 91 Vermischung der Konzepte Optimierung und Layout vermeidet und statt dessen strikt getrennt werden. Das Layout selbst wurde nochmals in Struktur und Stil unterteilt und formal spezifiziert. Auch die Kriterien, die bei der Optimierung Berücksichtigung finden, sind nochmals formal spezifiziert worden. Danach wurde die Vorgehensweise bei der Optimierung mit Hilfe von genetischen Algorithmen erläutert. Abschließend wurde noch ein Interaktionsmodell vorgestellt, das die Beziehungen der Entwickler und der Nutzer zueinander sowie deren Interaktionsmöglichkeiten darstellt.

100 5 Die Umsetzung Im folgenden Abschnitt wird das Vorgehen bei der praktischen Umsetzung unseres entwickelten Modells erläutert. Die einzelnen Schritte der Implementierung werden chronologisch wiedergegeben. Auf die detaillierte Beschreibung des kompletten Codes wird verzichtet. Vielmehr wird versucht, die konzeptionelle Vorgehensweise darzulegen. Nur wenn es dem Verständnis dient, werden Ausschnitte des Codes aufgeführt. 5.1 Grundsätzliche Überlegungen Die Anwendung soll als Visualisierungs-Modul in die Infrastruktur der am Lehrgebiet stattfindenden Forschungsarbeiten eingegliedert werden. Ein Schwerpunkt dieser Forschungen ist das Information Retrieval, also die Suche von Informationen in digitalen Bibliotheken und im Web. Joseph Weizenbaum hat über das Web gesagt: Es ist ein Misthaufen. 90 Prozent sind Schrott, es finden sich aber auch ein paar Perlen und Goldgruben [Wei]. Infomationsvisualisuerungstechniken könnten helfen, diese Perlen zu finden. Mit diesem Ziel wurde mit der Umsetzung begonnen. Zuerst wurde die Programmiersprache gewählt, die bei der Umsetzung zum Einsatz kommen sollte. Bei einer rein praxisorientierten Umsetzung wäre die Wahl auf diejenige Sprache gefallen, die auf der Zielplatt- 92

101 KAPITEL 5. DIE UMSETZUNG 93 form der Anwender verfügbar ist. Da geplant ist, für die Eingliederung der Visualisierung in die vorhandenen Projekte am Lehrgebiet eine Visualisierung von Suchergebnissen als web-basierte Anwendung zu realisieren, wäre so die Wahl vermutlich auf Adobe Flash [Wes09], eine proprietäre Technologie, gefallen. Diese bietet die Multimedia-Fähigkeiten, die es erlauben, interaktive Graph-Visualisierungen darzustellen. Auch eine Grafik-Bibliothek zur Darstellung von Informations-Visualisierungen und Graphen existiert für Actionscript 3, der Programmiersprache von Flash [Fla]. Da es sich aber primär um eine akademische Arbeit handelt, entscheiden wir uns für eine Umsetzung mit Java. Diese Sprache ist in der akademischen Welt weit verbreitet, Quellcode in Java wird sich vermutlich auch längerfristig noch lesen lassen, so dass eine Portierung in andere Sprachen, falls gewünscht, möglich sein wird. Eine weitere Motivation war die Verknüpfung der eigenen Arbeit mit anderen Softwarepaketen (wie Daffodil, s. Abschnitt 3.8.5), die im Rahmen von Forschungsarbeiten am Lehrgebiet ebenfalls mit Java implementiert wurden. 5.2 Eine erste experimentelle Umsetzung Zuerst wurden einige grundlegende Versuche gemacht, um die Richtigkeit des Konzepts zu überprüfen und um es zu verfeinern. Um die Konzepte in Reinform zu testen, wurde zuerst darauf verzichtet, auf eine vorhandene Programmbibliothek für das Zeichnen von Graphen aufzubauen. Es wurde eine eigene Programmbibliothek für das Zeichnen von Graphen von Grund auf neu entwickelt, um das Modell nachzubilden. Das Konzept des Layouts wurde von dem des Optimierungsalgorithmus getrennt. Auch der Optimierungsalgorithmus in Form eines geneti-

102 KAPITEL 5. DIE UMSETZUNG 94 Abbildung 5.1: Diagramm der Referenz-Implementierung schen Algorithmus wurde von Grund auf neu implementiert, um ein tieferes Verständnis der Arbeitsweise eines solchen Verfahrens zu erlangen. Realisiert wurden eine Menge an Typen, die unser Konzept wiedergeben (Abb. 5.1): ein Typ VisualGraph, dieser repräsentiert das Konzept des darstellbaren Graphen, ein Typ Layout mit Methoden zur Anordnung von Knoten, ein Typ Criteria, der die Qualität der Visualisierung auf eine Reihe von Kriterien hin testen kann. Schließlich eine Klasse GeneticOptimizer, die eine optimierte Visualisierung auf Basis eines vorgegebenen Layouts generiert und dazu den Typ Criteria als Bewertungsfunktion benutzt. Für diese ersten Experimente wurde ein möglichst einfaches Layout gewählt. In Abb. 5.2 ist das zugrundeliegende Layout abgebildet: ein Kreislayout. Die Menge an möglichen Visualisierungen ist in diesem einfachen Beispiel diskret, da nur bestimmte feste Positionen für die einzelnen Knoten

103 KAPITEL 5. DIE UMSETZUNG 95 vorgesehen sind. Bei komplexeren Layouts muss dies nicht zwangsläufig der Fall sein. Als einzelne Bewertungskriterien wurden die Anzahl der Kantenkreuzungen sowie die durchschnittliche Größe der Winkel betrachtet. Die Anzahl der Kantenkreuzungen soll minimiert, die durchschnittliche Größe der Winkel maximiert werden. Abbildung 5.2: Das Graph-Layout Abb. 5.3 ist eine nicht optimierte Visualisierung eines Graphen, dessen Layout ist das oben abgebildete Kreis-Layout. 5.3 Die Klasse GeneticOptimizer Zum besseren Verständnis für den Ablauf der Optimierung einer Visualisierung folgt eine detaillierte Erläuterung der Klasse GeneticOptimizer (Listing 5.1). Diese ist, wie in Abb. 5.1 zu erkennen, die Implementierung des Optimierungs-Vorgangs. In der Variable numiterations (Zeile 3) wird die Anzahl der Generationen festgelegt. Die Variable size (Zeile 4) regelt die Größe der Population. Diese wird in der Liste population (Zei-

104 KAPITEL 5. DIE UMSETZUNG 96 Abbildung 5.3: Die Ausgangs-Graph-Visualisierung Abbildung 5.4: Die optimierte Graph-Visualisierung le 8) gespeichert; die Liste wird später mit einzelnen Objekten vom Typ VisualGraph, also visuellen Repräsentationen von Graphen (im Folgenden nur Graph genannt), gefüllt. Beim Aufruf des Konstruktors (Zeile 12) wird eine Population aus randomisierten Graphen aufgebaut (Zeilen 16-17). Ein dem Konstruktor über-

105 KAPITEL 5. DIE UMSETZUNG 97 gebener Graph (in der Variable li) dient dabei als Vorlage. Durch Aufruf der Methode optimize() (Zeile 19) wird der Optimierungs-Vorgang gestartet. Es werden dann numiterations neue Generationen erzeugt (Zeilen 20-21). Anschließend wird der Graph mit der besten Bewertung (im Folgenden der fitteste genannt) zurückgegeben (Zeile 24). Die Erzeugung einer neuen Generation wird in der Methode newgeneration() (Zeile 26) umgesetzt. Dazu werden zuerst die fittesten Graphen aus der bestehenden Population in die neue übernommen (Zeile 31), jedoch nur so viele, dass nach der anschließenden Erzeugung einer Anzahl von Kindern die Größe der Population wieder gleich ist. (Im Prinzip werden die schlechtesten Graphen also entfernt.) Dann werden eine Anzahl Kinder (Anzahl: children) des jeweils fittesten Graphen und eines beliebigen Graphen erzeugt (Zeilen 35-37). Abschließend wird ein beliebiger Graph mutiert (Zeile 40). Die Bewertung der einzelnen Graphen wird in der Methode f itness() (Zeile 48) vorgenommen. Hierzu werden eine Reihe von Tests aus einer Liste mit Kriterien an die Graphen angewendet (Zeile 50-54). Die Methode getfittest() verwendet diese Methode dann, um aus der Population den fittesten Graphen herauszufinden. Sie berücksichtigt dabei die Pareto- Optimalität [GKK04]: Es wird dabei Sorge getragen, dass kein Graph als fittester ausgewählt wird, bei dem sich ein Einzel-Kriterium verschlechtert, auch wenn die Gesamt-Bewertung besser ausfällt. Die Mutation findet in der Methode mutate() statt. Dort wird ein einzelner Graph einfach mit einer zufälligen Position versehen. Die Methode getchild(...) erzeugt ein Kind, indem es einen neuen Graphen mit Eigenschaften aus dem Mutter- und dem Vater-Graph erzeugt (so genanntes Crossover). Eigenschaften meint hier die Positionen der einzelnen Kno-

106 KAPITEL 5. DIE UMSETZUNG 98 ten. Listing 5.1: GeneticOptimizer.java 1 public final class GeneticOptimizer { 2 3 private int numiterations; 4 private int size=70; 5 private int children=5; 6 private GenerationListener listener; 7 8 ArrayList<VisualGraph> population; 9 Context context; 10 VisualisationTarget tests; public GeneticOptimizer(VisualGraph li,...){ //Population aufbauen, Zufall 15 population = new ArrayList<VisualGraph>(); 16 for (int x=0;x<this.size;x++) 17 population.add(randomize(li.clone())); 18 } 19 public VisualGraph optimize(){ 20 for (int x=0;x<numiterations;x++){ 21 newgeneration(); } 24 return getfittest(); 25 } 26 private void newgeneration(){

107 KAPITEL 5. DIE UMSETZUNG // Kinder durch Rekombination des besten mit einem beliebigen 28 ArrayList<VisualGraph> npop= 29 new ArrayList<VisualGraph>(); 30 for (int t=0;t<size-children;t++){ 31 npop.add(getfittest().clone()); 32 } 33 //Kinder 34 population=npop; 35 for (int t=0;t<children;t++){ 36 VisualGraph one=getany(); 37 population.add(getchild(getfittest(), one)); 38 } 39 // Eine Mutation 40 mutate(getany()); 41 } 42 //Randomisiert ein Layout 43 private VisualGraph randomize(visualgraph li){ return li; 46 } 47 //Bewertungsfunktion 48 private double[] fitness(visualgraph li){ 49 double[] fit=new double[tests.size()]; 50 for (int i=0;i< tests.size();i++){ 51 fit[i]=tests.get(i).gettest() 52.applyTest(li, context) 53.getAverageValue()*tests.get(i) 54.getStrength();

108 KAPITEL 5. DIE UMSETZUNG } 56 return fit; 57 } 58 // Wählt das beste Layout; Pareto-Optimalität 59 private VisualGraph getfittest() { return fittest; 62 } 63 // Mutation 64 private void mutate(visualgraph mutant){ 65 VisualNode mutnode=mutant.getlist() 66.get(getRandomPos(mutant)); } // Wählt zufälliges Layout 71 private VisualGraph getany() { 72 return (VisualGraph)getAny(population); 73 } 74 private Object getany(arraylist<?> what) { 75 return what.get((int)math.floor(math.random() 76 *what.size())); 77 } 78 // Gibt ein Kind zurück 79 private VisualGraph getchild(visualgraph mom, VisualGraph dad) { 80 //Crossover 81 VisualGraph child=mom.clone(); 82...

109 KAPITEL 5. DIE UMSETZUNG return child; 84 } 85 } Ein genetischer Optimierungs-Algorithmus liefert zwar nicht immer eine gleiche, optimale Visualisierung, jedoch hat sich gezeigt, dass die Anzahl der Kanten-Kreuzungen meistens deutlich geringer ist als in der Ausgangsvisualisierung. Unter Verwendung des genetischen Algorithmus wurden 100 Graphen-Visualisierungen mit der oben genannten Konfiguration generiert (s. Abb. A.1). Das Kriterium der Kantenkreuzungen hat sich durchschnittlich um 59,21 Prozent verbessert, das der Winkelgröße um 2,081 Prozent. Es hat sich gezeigt, dass das Kriterium der Kantenkreuzungen einen größeren Einfluss auf das Resultat hat, da die Schwankungsbreite von dessen Bewertungsfunktion größer ist, also oft ein größerer Sprung bei der Verbesserung der Kantenkreuzungen erzielt werden konnte, während die Winkelgrößen weitgehend gleich bleiben. Dies könnte dazu führen, dass eine Visualisierung insgesamt als besser bewertet wird als eine andere, obwohl diese eine schlechtere Bewertung bei den Winkelgrößen bekommen hat, aber eine wesentlich bessere bei den Kantenkreuzungen. Um dies zu vermeiden, wurde eine Bewertungsfunktion einsetzt, die auf Pareto-Optimalität hin optimiert, bei der also nur diejenigen Visualisierungen besser als andere bewertet werden, bei denen mindestens ein Kriterium besser ist. Man kann also nicht von einem stabilen Layout sprechen, jedoch ist die strukturelle Stabilität durch unveränderliche Regeln im Layout, hier dem Kreis-Layout, gegeben.

110 KAPITEL 5. DIE UMSETZUNG Ein Prototyp zur Visualisierung von Suchanfragen Um das vorgestellte Modell zu stützen, wurde eine praxisnahe experimentelle Implementierung realisiert. Die Anwendung soll die visuelle Suche auf Beständen der Daffodil-Metasuchmaschine (s. Abschnitt 3.8.5) unterstützen, die am Lehrgebiet intensiv weiterentwickelt wird. Die meisten Suchmaschinen unterstützen keine visuelle Suche. Oft werden die Suchergebnisse nur als Liste dargestellt. Ziel war die Entwicklung einer flexiblen Suchmaschinen-Oberfläche, die auch in unterschiedliche Anwendungen integriert werden kann, um die Such-Aktivitäten der Anwender zu unterstützen. Angelehnt an die Beschreibung der Suche in Informationssystemen von Landwich [Lan08] (Abschnitt 3.8.4) soll eine solche Sequenz von Suchanfragen durch eine Visualisierung besser unterstützt werden. Die grundlegende Layout-Idee ist die Darstellung des Suchprozesses als Graph. Die Such-Historie wird in diesem Graphen als Pfad dargestellt. Jeder Knoten dieses Pfades steht für eine einzelne Anfrage. Knoten, die einzelne Such-Ergebnisse repräsentieren, sind als Kind-Knoten an diese Such-Knoten geknüpft (s. Abb. 5.5). Anwender sind in unserer Implementierung in der Lage, einzelne Ergebnisse in einen speziellen Bereich am Rand zu verschieben, um sie damit in eine Merkliste aufzunehmen. Die Anwender behalten somit immer den Überblick über die Such-Aktivität, da sie ihre vorherigen Suchanfragen und Ergebnisse vor sich haben. Sie brauchen sich nicht zu fragen, ob sie den Suchbegriff bereits eingegeben haben. Zudem sehen sie, ob sie ein Ergebnis bereits vorher gefunden haben, da dieses auch mit den älteren Suchbegriffen verknüpft wird.

111 KAPITEL 5. DIE UMSETZUNG 103 Abbildung 5.5: Die grundlegende Layout-Idee 5.5 Das Such-Layout In Abb. 5.6 ist beispielhaft eine mögliche Visualisierung abgebildet. Die Knoten S1, S2, und S3 visualisieren einzelne Suchanfragen in zeitlicher Abfolge. Die Layout-Idee ist es, die einzelnen Ergebnisse E kreisförmig um die Suchanfragen anzuordnen. Dies gelingt nur zum Teil, da die Ergebnismengen nicht disjunkt sind, also bestimmte Ergebnisse mehreren Anfragen zugeordnet werden. Deshalb können mehrere Knoten für Suchanfragen auf gleiche Ergebnis-Knoten verweisen. Daraus ergibt sich keine Baum-, sondern eine Graph-Struktur, die nicht immer planar ist. Welches Ergebnis zuerst von welcher Suchanfrage gefunden wurde, soll aus der räumlichen Zuordnung ersichtlich sein, da der entsprechende Ergebnis-Knoten in der Umlaufbahn des Anfrage-Knotens liegt. Dieses Layout ist komplexer als das einführende Beispiel des Kreislayouts, da die Positionen der Knoten für die Suchanfragen nicht festgelegt sein sollen. Das Layout folgt lediglich der Regel, dass die Knoten für die

112 KAPITEL 5. DIE UMSETZUNG 104 Ergebnisse kreisförmig in einem festen Abstand und regelmäßig um die Knoten der Suchanfragen angeordnet werden sollen. Es wird also für dieses Layout eine frei wählbare Position für alle s sowie für alle e eine feste Position relativ zu ihren Eltern s gefordert. Grammatik 5.1 beschreibt das Layout als formale Grammatik G, wobei H, S, E die Nicht-Terminale sind. Das initiale Symbol, das die Such- Historie beschreibt, ist H. Das Terminal s steht für eine Suchanfrage, e für ein Suchergebnis. Abbildung 5.6: Mehrere Suchanfragen mit Ergebnissen G = {H, S, E, s, n, P, H}, P = H SH S se E ee (5.1) Die Beschreibung des Layouts Da durch die Beschreibung der formalen Grammatik lediglich die

113 KAPITEL 5. DIE UMSETZUNG 105 Struktur des Graphen beschrieben wird, nicht aber das Aussehen, wollen wir nun eine Beschreibung in der Art der Graph-Grammatiken aus Abschnitt wagen. Wir werden dabei weder die Layered Graph Grammars noch die Spacial Graph Grammars verwenden können. Die Spacial Graph Grammars eignen sich unserer Meinung nach nur bedingt zur Beschreibung der räumlichen Anordnung, da diese nur die Anordnung der Elemente in acht Richtungen zueinander erlauben, und sich so für unsere entworfene Darstellung einer Anordnung einzelner Ergebnis-Knoten im Kreis um einen Such-Knoten nicht eignet. Mit den Layered Graph Grammars kann man die Render-Eigenschaften (R) formal spezifizieren, aber auch sie scheiden aus, da sich mit diesen überhaupt keine hierarchische visuelle Struktur modellieren lässt. Es bleibt uns also vorerst nur die Möglichkeit einer Beschreibung in Prosa und der algorithmische Ansatz. Die formale Spezifikation eines Layouts würde den Rahmen dieser Arbeit sprengen und sollte Gegenstand weiterer Forschung sein. R = s i.x = Mouse.x f alls Mouse Drag s i.y = Mouse.y f alls Mouse Drag e i,j.x = s i.x + sin( 360 j n ) RADIUS f alls e i,j / Merkliste e i,j.y = s i.y + cos( 360 j n ) RADIUS f alls e i,j / Merkliste e i,j.color = BLUE s i.color = ORANGE (s i Suchknoten, e i,j Ergebnisknoten) Die Beschreibung der Darstellung (Abb. 4.2 R) (5.2) In Formel 5.2 sind eine Reihe von Darstellungs-Regeln (Abb. 4.2 R) aufgelistet. Zuerst wird festgelegt, dass die Position eines Suchknotens auf

114 KAPITEL 5. DIE UMSETZUNG 106 die Maus-Position gesetzt wird, falls dieser bei gedrückter Maustaste bewegt (engl. Mouse Drag) wird. Danach wird die Position der Ergebnis- Knoten relativ zum jeweiligen Eltern-Such-Knoten festgelegt. Sie werden kreisförmig im Abstand RADIUS um diese angeordnet; jedoch nur, wenn sie sich nicht in der Merkliste befinden. 1 Weiter wird die Farbe der einzelnen Knoten-Typen festgelegt: blau für Ergebnis-Knoten, orange für Such- Knoten. s i.x s i+1.x maximal s i.y s i+1.y maximal (s i, s i + 1 Suchknoten, i < Suchknoten ) C = Kantenkreuzungen minimal a Suchp f ad b Suchp f ad,a =b Innenwinkel(a, b) maximal (5.3) Die Beschreibung der visuellen Kriterien (Abb. 4.2 C) In Formel 5.3 werden die einzelnen Layout-Kriterien festgelegt. Zu Beginn wird ein Kriterium spezifiziert, nach dem die Abstände der Such- Knoten zueinander möglichst groß sein sollen. Weiter wird festgelegt, dass die Kantenkreuzungen minimal sein sollen. Schließlich sollen die Winkel im Such-Pfad möglichst groß sein. Wie in Abschnitt erwähnt, sind die Kriterien als Funktionen aufzufassen, die Werte im Intervall [0, 1] liefern. Wenn ein Kriterium maximiert werden soll, so ist der höchstmögliche Wert 1, der niedrigste 0. Soll das Kriterium minimiert werden, so ist der niedrigste Wert 1 und der höchstmögliche 0. Ein wichtiges Kriterium ist das der Kantenkreuzungen. Es soll deshalb 1 Später in der Implementierung wird es die Möglichkeit geben, einzelne Ergebnisse mit der Maus in eine Merkliste zu ziehen. Dort sollen diese ihre Position nicht mehr verändern.

115 KAPITEL 5. DIE UMSETZUNG 107 genauer erklärt werden. Wir verwenden die Formel aus Abschnitt 3.9.5: Kantenkreuzungen = 1 c c max wenn c max > 0 0 sonst (5.4) Nun muss noch der Wert c für die Anzahl der Kantenkreuzungen berechnet werden. Es wird für alle Kanten geprüft, ob sich diese schneiden. Dazu wird zuerst der Schnittpunkt zweier Geraden ausgerechnet, die durch die Steigungen von jeweils zwei Kanten definiert sind. Anschließend wird geprüft, ob dieser Punkt innerhalb der Kanten liegt (Abb. 5.7): c = 1 2 a Kanten,b Kanten,a =b intersects(a, b) intersects(a, b) = b 1 := b 2 := a.to.y a. f rom.y a.to.x a. f rom.x ; b.to.y b. f rom.y b.to.x b. f rom.x ; a 1 := a. f rom.y b 1 a. f rom.x; a 2 := b. f rom.y b 2 b. f rom.x; x i := a 1 a 2 b 1 b 2 ; y i := a 1 + b 1 x i ; o f alls (a. f rom.x x i ) (x i a.to.x) 0 1 sonst (b. f rom.x x i ) (x i b.to.x) 0 (a. f rom.y y i ) (y i a.to.y) 0 (b. f rom.y y i ) (y i b.to.y) 0 (5.5)

116 KAPITEL 5. DIE UMSETZUNG 108 Abbildung 5.7: Die Kreuzung zweier Kanten 5.6 Die Implementierung des Modells Der Prototyp wurde als Java-basierte Software-Komponente implementiert, die über Schnittstellen mit verschiedenen Suchdiensten kommunizieren kann. Zum Einsatz kamen verschiedene Open-Source-Bibliotheken. Die Prefuse-Bibliothek wurde zur Graphen-Visualisierung [HCL05] benutzt. Für diese Bibliothek kann man eigene Layouts entwerfen. Für die Optimierung ist JGAP [JGA] zum Einsatz gekommen, eine Software-Bibliothek zur Verwendung von genetischen Algorithmen. Die Benutzeroberfläche wurde mit SUNs Swing-Bibliothek gebaut. Unsere Beispiel-Anwendung PLEXO ermöglicht die visuelle Suche im Web mithilfe eines Web-Services von Yahoo, Google und Amazon. Die Software ist auf Erweiterbarkeit ausgelegt und kann, im Sinne einer serviceorientierten Architektur, leicht in weitere Software-Umgebungen integriert werden.

117 KAPITEL 5. DIE UMSETZUNG Logging-Funktionen Im Hinblick auf die Evaluierung und zur Verdeutlichung der Arbeitsweise des Verfahrens wurde während der Umsetzung eine Reihe von Logging-Funktionalitäten implementiert, die für jede Session die Benutzer-Aktivitäten sowie den Verlauf der Optimierung des Layouts protokollieren: Wenn man im Home-Verzeichnis von Benutzern einen Ordner plexo anlegt, dann wird eine Datei logging<zeit-stempel>.txt generiert. Dort werden alle Benutzer-Interaktionen protokolliert. Alle Interaktionen mit GUI-Elementen werden aufgezeichnet, also jeder Klick auf Buttons, Checkboxen oder Reiter. Auch die Interaktion mit dem Graphen wird in die Log-Datei geschrieben: wenn ein Graph verschoben wurde, geklickt, die Position fixiert oder auch nur mit der Maus über den Graph gefahren wurde. Zusätzlich wird im Verzeichnis eine GNU-Plot-Datei angelegt, die für jede Optimierung den Verlauf der Fitness-Funktion des eingesetzten genetischen Algorithmus als Grafik ausdruckt (mit GNU-Plot). Visualisiert wird die Konvergenz der Population. Der Fitness-Wert des besten Individuums pro Population wird über mehrere Generationen dargestellt. Eine solche Visualisierung der Optimierung mit genetischen Algorithmen wird bei Pohlheim [Poh00, S. 119] vorgeschlagen. Weiter werden noch zwei Bilder der Zeichen-Fläche gespeichert, die jeweils den Zustand vor und nach der Optimierung festhalten.

118 KAPITEL 5. DIE UMSETZUNG Die Software-Architektur In Abb. 5.8 ist das Klassendiagramm der Plexo-Software mit den wesentlichen Teilen zu sehen. Die externen Bibliotheken von Prefuse, JGAP und Swing sind links und oben zu sehen. Die grafische Oberfläche wurde aus dem zentralen Paket genommen, da sie nicht konzeptionell zum Modell gehört (Paket gui). Auch die Wrapper für die Suche auf Datenbeständen von Google, Yahoo und Amazon wurde in ein eigenes Paket (Paket search) gelegt. Die zentrale Paketstruktur (Paket plexo) soll die Trennung von Layout und Optimierung wiederspiegeln. Alle Funktionalität, die das Layout betrifft, wurde im Paket layout abgelegt. Die Optimierung wurde im Paket genetic implementiert. Die Umsetzung des Layouts Zuerst zum Inhalt vom Paket layout: Das Modell sieht eine weitere Teilung des Layouts in Struktur und Stil vor. Also wurden zwei Pakete structure und style angelegt. Im Paket structure ist eine Klasse PlexoGraphFactory enthalten, die einen Graphen im Sinne der Visual Structures (Abb ) unseres Modells erzeugt. Dieser wird mit Inhalten gefüllt, indem ein NodeParser das Visual Mapping (Abb. 4.2 M) durchführt. Konkrete Parser können diejenigen Parser aus dem Paket search sein: GoogleNodeParser für die Suche mit Google, YahooNodeParser für die Suche mit Yahoo oder AmazonNodeParser für die Suche in Amazon-Buch-Beständen. Wenn im User-Interface ControlPanel die Suche durch Klick auf den Such- Button ausgelöst wird, wird der aktive Parser genommen, um die Suche- Ergebnisse auszuwerten. Diese wurden zuvor von einer konkreten Klasse vom Typ AbstractSearch zurückgeliefert. Der Graph wird dann in ein

119 KAPITEL 5. DIE UMSETZUNG 111 Abbildung 5.8: Plexo-Klassendiagramm SearchgraphLayout-Objekt eingefügt. Dieses erbt die Darstellungsfunktionalitäten vom Layout der Prefuse-Bibliothek. Dieses konkrete Layout legt die Positionierung der einzelnen Elemente des Such-Graphen fest. Es werden alle Knoten des Graphen durchlaufen. Abhängig vom Typ des Knoten wird dessen Position festgelegt. Ergebnis- Knoten als Kind-Knoten der Such-Knoten werden relativ zu diesen an-

120 KAPITEL 5. DIE UMSETZUNG 112 geordnet. Damit die spätere Optimierung erfolgen kann, müssen gewisse Layout-Eigenschaften variabel angelegt werden. Dies sind in diesem speziellen Layout die Positionen der Such-Knoten, also der Eltern-Knoten der Ergebnisse. Das SearchgraphLayout ist dazu als randomisierter Algorithmus implementiert. Das bedeutet, dass die Position der Such-Knoten zufällig gewählt wird. Aus einer Menge an solchen zufällig erzeugten Layouts kann dann mit einem geeigneten Verfahren eines, das festgelegten Kriterien genügt, ausgewählt werden. Falls ein neues Layout implementiert wird, genügt es, diejenigen visuellen Variablen zu randomisieren, die später optimiert werden sollen. In unserer Implementierung wurde darauf verzichtet, das Layout als domänenspezifische Sprache zu beschreiben. Überlegungen in dieser Richtung wurden verworfen, da es sich dabei im Prinzip nur um syntaktischen Zucker handelt. Java als Implementierungs-Sprache wurde als expressiv genug erachtet. Es wurde Wert auf eine Realisierung der Konzepte als Typen gelegt. Da die Layouts mit variablen Mengen an Daten und mit bedingten Eigenschaften einzelner Elemente umgehen können müssen, ist eine komplexe algorithmische oder deklarative Beschreibung unabdingbar. In Listing 5.2 ist ein Ausschnitt der Klasse AbstractSearchGraphLayout zu sehen. Diese Klasse realisiert einen Parser für die in Grammatik 5.1 angegebene formale Grammatik. Die Schleife in Zeile 7 iteriert über alle Elemente der Visualisierung. Falls es sich bei dem jeweiligen Element um einen Such-Knoten (s in Grammatik 5.1) handelt (Zeile 11: type = Search), wird die abstrakte Methode placechildren(nodeitemitem,...) aufgerufen. Dieser wird der jeweilige Such-Knoten als Referenz mitgegeben, so dass in der Realisierung dieser Methode die Kinder des Knotens extrahiert und

121 KAPITEL 5. DIE UMSETZUNG 113 relativ zu diesem angeordnet werden können. Die konkrete Realisierung des Layouts ist die Subklasse SearchGraphLayout. Dort werden dann auch die Positionen der Ergebnis-Knoten (e in Grammatik 5.1) festgelegt. Listing 5.2: AbstractSearchGraphLayout.java 1 public abstract class AbstractSearchGraphLayout 2 extends Layout { public void updateallnodes() { 5 6 Iterator it = this.getvisualization().items(); 7 while (it.hasnext()) { 8 VisualItem item = (VisualItem) it.next(); String nd = item.getstring("type"); 11 if (nd.equals("search")) { 12 placechildren((nodeitem) item, false); 13 } 14 } 15 } 16 this.getvisualization().repaint(); 17 } 18 } Die bei der Optimierung zu berücksichtigenden Kriterien werden als Teil des Layouts angesehen, da sie bestimmte Anforderungen an eine Visualisierung stellen. In Objekten vom Typ AbstractSearchLayoutCriteria werden diese angegeben. Dort kann man über eine Methode addtest(...) Objekte vom Typ Test hinzufügen. Diese prüfen die Visualisierung auf die Einhaltung bestimmter Kriterien. Zusätzlich kann eine Gewichtung ange-

122 KAPITEL 5. DIE UMSETZUNG 114 geben werden: So kann man festlegen, welches Kriterium wichtiger als ein anderes ist. In unserer Implementierung ist beispielsweise das Kriterium Test_Overlap das mit der höchsten Gewichtung, da sich die Such-Knoten möglichst nicht überlappen sollen. Dies wird als wichtigste Regel für das Layout angesehen. In Listing 5.3, Zeile 6-9 werden in unserer Implementierung vier Kriterien zur Überprüfung hinzugefügt. Neben dem Kriterium der Überlappung werden noch folgende Kriterien überprüft: Die Distanz zwischen den einzelnen Such-Knoten soll möglichst groß sein. Möglichst wenige Kanten sollen sich kreuzen. Die Richtung der Kanten des Such-Pfades soll von oben nach unten verlaufen. Listing 5.3: SearchGraphLayoutCriteria.java 1 public class SearchGraphLayoutCriteria 2 extends AbstractLayoutCriteria { public void addtests() { 6 addtest(new Test_DirectionOfSearchNodes(), nodes, 1); 7 addtest(new Test_IntersectionOfEdges(), edges, 2); 8 addtest(new Test_DistanceOfSearchNodes(), nodes, 3); 9 addtest(new Test_Overlap(), nodes, 4); 10 } 11 } Die Farb- und Formgebung der Knoten und Kanten sowie die Beschriftung der Knoten wird durch die Klassen PlexoLabelRenderer und PlexoEdgeRenderer im Paket style festgelegt. Diese erben von den Klassen LabelRenderer und EdgeRenderer der Prefuse-Bibliothek.

123 KAPITEL 5. DIE UMSETZUNG 115 Die Umsetzung der Optimierung Die Optimierung einer Visualisierung wird durch Aufruf der Methode optimize(graph graph, Visualisation visualisation) eines Objektes vom Typ ILayoutOptimizer durchgeführt. Implementiert wird dieses Interface in unserem Programm mit einem genetischen Algorithmus unter Zuhilfenahme der Jgap-Bibliothek [JGA]. Der SearchGraphChromosomeHandler erzeugt eine genetische Repräsentation einer Visualisierung. Er erzeugt ein Chromosom, welches wiederum aus einzelnen Genen zusammengesetzt ist. Jedes Gen repräsentiert dabei die Position eines Such-Knotens. Da diese Position ein zweiwertiger Vektor mit einer X- und einer Y- Komponente ist, wird ein PointSuperGene erzeugt. Es kann aus zwei unabhängigen Integer-Werten bestehen. Zu Beginn der Optimierung wird zuerst eine Population (Genotype), bestehend aus mehreren Individuen, erzeugt. Ein solches Individuum besteht aus einem gerade beschriebenen Chromosom. Als guter Wert hat sich eine Größe von 25 Individuen herausgestellt. Bei einer solchen Größe hat man ein gutes Laufzeitverhalten sowie eine gute Wirkungsweise des Algorithmus. Als Fitnessfunktion für den Algorithmus wird das im Layout spezifizierte SearchGraphLayoutCriteria angegeben. Damit wird geregelt, dass immer diejenige Visualisierung (oder die entsprechende genetische Repräsentation), die am ehesten den im Layout festgelegten Kriterien genügt, als beste bewertet wird. Gemäß dem Motto Survival of the Fittest von Darvin vererben die besten Visualisierungen ihre guten Eigenschaften an die nächste Generation weiter, die schlechten sterben aus. Das Verfahren wird über 30 Generationen iteriert. Auch dieser Wert hat sich in Experimenten als gut herausgestellt: Wie in Abb. A.11 erkennbar ist, nähert sich

124 KAPITEL 5. DIE UMSETZUNG 116 die Fitness bereits nach wenigen Generationen einem stabilen Wert. Am Ende der Evolution wird das bis dahin beste Gen auf die Visualisierung übertragen. In unserer Umsetzung wird die Optimierung automatisch nach zwei Such-Anfragen gestartet. Man kann aber auch durch einen Klick auf den Button Re-Arrange die Optimierung erneut starten. In unserem Modell sollen die Anwender die Möglichkeit haben, die Kriterien der Optimierung durch Interaktion mit der Visualisierung zu beeinflussen (Abb. 4.2 F). Sie können dies tun, indem sie die Position einzelner Knoten fixieren und diese Invarianten als Kriterien zum Layout hinzufügen. In der Umsetzung werden Knoten, die verschoben werden, automatisch fixiert, da angenommen wird, dass die Knoten gewollt an eine bestimmte Position verschoben werden und dort verbleiben sollen. Diese Fixierung kann auch wieder aufgehoben werden. Weitere Funktionalitäten der Implementierung Eine spezieller Bereich für die Knoten ist die Merkliste. Visuell befindet diese sich als Rahmen um die Visualisierungsfläche. Wenn Ergebnis- Konten dort per Drag and Drop platziert werden, werden diese dadurch in die Merk-Liste aufgenommen. Auch deren Position ist dadurch fixiert. Als alternative Visualisierungen wurden im Hinblick auf die Evaluierung noch zwei weitere, nicht unserem Modell folgende, herkömmliche Visualisierungen des Such-Graphen mit implementiert: Eine Listenansicht (ListPanel) stellt alle Such-Ergebnisse als sequenzielle Liste dar. Zusätzlich wurde eine physikalische Simulation (MyForceDirectedLayout) eingefügt. Das ist das vorgefertigte Standard- Physics-Layout der Prefuse-Bibliothek. Damit die Layouts direkt ver-

125 KAPITEL 5. DIE UMSETZUNG 117 gleichbar sind, wurde die Farb- und Formgebung ebenfalls mit den Klassen PlexoLabelRenderer und PlexoEdgeRenderer geregelt. So ist gewährleistet, dass nur die variablen visuellen Eigenschaften, die durch die jeweiligen Layout-Algorithmen bestimmt werden, zum Vergleich herangezogen werden. 5.7 Die Anwendung Plexo Die PLEXO getaufte Software hat mehrere Entwicklungsschritte und Versionen durchlaufen. Ausgehend von der ersten funktionsfähigen Fassung wurden mehrere Änderungen und Verbesserungen vorgenommen. Die Abb.en 5.9 bis 5.11 zeigen die erste Fassung. Das Programm kann sowohl als Applet von einer Web-Seite aus gestartet werden, als auch als Stand-Alone -Anwendung als ausführbare JAR-Datei benutzt werden. Alle benötigten Bibliotheken sind bereits eingebunden, lediglich eine installierte Java SE-Version größer 1.3 wird vorausgesetzt. Dann läuft das Programm auf beliebigen Plattformen, die diese Java-Versionen unterstützen, also auch unter Windows, Linux oder Mac OS. Entwickelt wurde die Anwendung unter MAC OSX 10.6 mit Hilfe der Eclipse-IDE (Galileo). Die Bedienung soll kurz erklärt werden: Die Oberfläche ist ein einziger Screen, aufgeteilt in zwei Bereiche: links der Textbereich (Abb (A-F)), rechts die Visualisierung (Abb G). In das Feld links oben (Abb A) kann man Suchbegriffe eintragen. Danach kann man die Suche durch Drücken der ENTER-Taste oder durch Klick auf den Search! -Button auslösen (Abb C). Die Treffer werden automatisch im Anzeigebereich als Graph (Abb G) dargestellt. Jeder Suchbegriff wird dann als orange-

126 KAPITEL 5. DIE UMSETZUNG 118 farbener Knoten visualisiert. Nachfolgende Suchbegriffe werden mit diesem Knoten durch eine gerichtete Kante mit Pfeilrichtung auf die vorherige Suche verbunden. So kann man einen Suchverlauf visualisieren. Alle Treffer eines Suchbegriffs werden in der ersten Fassung des Layouts kreisförmig als Kind-Knoten um diesen angeordnet und blau dargestellt. Die APIs von den verwendeten Suchmaschinen erlauben nur eine begrenzte Anzahl von Ergebnissen zu bekommen; so wurde die Anzahl der Ergebnisse pro Treffer auf maximal acht vereinheitlicht. Als Text wird auf den Such-Knoten der Text der Anfrage, bei den Ergebnissen der Titel-Text dargestellt (die Ergebnisse sind Repräsentationen von Web-Seiten). Der Text wurde in der Länge auf einheitlich 25 Zeichen beschränkt. Bei Überrollen eines Knotens erscheint ein Tooltip mit dem gesamten Text. Wenn auf einen Knoten geklickt wird, erscheinen Detail- Informationen und die Web-Adresse zum Knoten im Anzeigebereich links. Man kann diese Adressen im Standardbrowser durch Klick auf den Button Go! öffnen. Dies funktioniert in der Ausführung als Applet sowie auch in der Stand-Alone -Anwendung. Alle Ergebnisse können in eine Merkliste, hier mit dem englischen Begriff Filing-Basket bezeichnet, aufgenommen werden (Abb I). Dazu verschiebt man die jeweiligen Knoten auf den gepunkteten Rahmen der Darstellungsfläche. Im Sinne einer engen Kopplung der Visualisierung mit der Bedien-Oberfläche erscheinen die Detailinformationen ebenso, wenn man auf die Einträge der Merkliste klickt. Die Optimierung der Visualisierung (in der Fassung der Abb.en 5.9 bis 5.11) wird bei Klick auf den Button Optimize view vorgenommen. Den Fortschritt des Laufs des genetischen Algorithmus kann man dann in der

127 KAPITEL 5. DIE UMSETZUNG 119 blauen Fortschritts-Anzeige verfolgen. Man kann jederzeit durch Klick des Re-arrange! -Buttons (Abb K) die derzeit vom laufenden Algorithmus als beste berechnete Visualisierung sofort anzeigen lassen. Der Algorithmus sucht dann eine bessere Position der Knoten, entsprechend der Arbeitsweise des Optimierungs- Algorithmus. Knoten in der Merkliste behalten dabei immer ihre Position. Dies entspricht dem geforderten Konzept der Einflussnahme der Benutzer auf die Layout-Kriterien.

128 KAPITEL 5. DIE UMSETZUNG 120 Abbildung 5.9: Plexo mit mehreren Suchanfragen

129 KAPITEL 5. DIE UMSETZUNG 121 Abbildung 5.10: Die optimierte Visualisierung

130 KAPITEL 5. DIE UMSETZUNG 122 Abbildung 5.11: Plexo mit Einträgen in der Merkliste

131 KAPITEL 5. DIE UMSETZUNG 123 Abb. 5.9 zeigt die Anwendung, nachdem mehrere Suchanfragen gestellt wurden. In Abb sieht man das Ergebnis der Optimierung der Visualisierung mit Hilfe des genetischen Algorithmus. Es wurden folgende Kriterien optimiert: die Anzahl der Kantenkreuzungen; sie wurde minimiert die Winkel zwischen den Kanten des Suchpfades; sie wurden maximiert die Kantenlängen des Suchpfades; sie wurden angeglichen Überlappungen von Kanten und Knoten; solche wurden vermieden In Abb wurden mehrere Ergebnisse in die Merkliste aufgenommen. Eine erneute Optimierung lieferte das vorliegende Ergebnis Formative Evaluierungen Bei einer formativen Evaluierung wird bereits bei der Entwicklung eines Tools ein Feedback eingeholt. Dieses wird analysiert und danach können gegebenenfalls sinnvolle Verbesserungen am Produkt vorgenommen werden. Ein solcher Zyklus kann mehrmals durchgeführt werden [Yan09]. Dieses Verfahren haben wir auch bei unserer Entwicklung angewendet. 2 In unserem Interaktionsmodell ist dieser Prozess formal spezifiziert (Abschnitt 4.5). Es wurde ein Benutzertest mit einem Domänenexperten und ein darauffolgendes strukturiertes Interview durchgeführt. Die Motivation dahinter war der Einsatz des Such-Tools in der Forschungsgruppe für 2 s. auch Abschnitt 3.8.3

132 KAPITEL 5. DIE UMSETZUNG 124 Informationsvisualisierung am Lehrgebiet Multimedia und Internetanwendungen an der FernUniversität. Eine Umsetzung des Modells von Landwich (Abschnitt 3.8.4) soll die Suche beim Einsatz im Information- Retrieval verbessern. Selbstverständlich wurde auch Landwich selbst in den Entwicklungsprozess als Diskutant involviert. Bei den regelmäßig stattfindenden Doktorandenseminaren wurde über ein mögliches Design einer Benutzerschnittstelle nachgedacht und bei weiteren Unterredungen konkretisiert. Claus-Peter Clas wurde als Domänenexperte ausgewählt, da die Suche in die digitale Plattform Daffodil integriert werden soll, an deren Entwicklung er maßgeblich beteiligt war [Kla07]. Er wurde am 22. Oktober interviewt und regte folgende Verbesserungen an: Ein Ranking sollte die Wichtigkeit der Suchergebnisse anzeigen. Bei der besprochenen Version sollten sich die Suchknoten im oder gegen den Uhrzeigersinn nach Relevanz um den Ergebnis-Knoten anordnen. Auch die Größe oder die Farbe könnte dabei noch verändert werden. Oder die Nähe zum Suchknoten: je näher, desto relevanter. Man sollte bei den Such-Knoten die nächsten oder vorherigen acht Ergebnisse einblenden können, damit man mehr als acht Ergebnisse angezeigt bekommen kann. Mehr Informationen über den Knoten sollten als Tooltip angezeigt werden oder allgemein mehr Informationen pro Knoten angezeigt werden. Ein Mülleimer wurde als sinnvoll erachtet, dort kann man nicht relevante Knoten wegwerfen, sonst wird die Anzeige schnell zu voll.

133 KAPITEL 5. DIE UMSETZUNG 125 Für die spätere Ergebnis-Evaluierung sollte eine Daffodil-Suche über eine REST-Schnittstelle ermöglicht werden. Zu einer weiteren Evaluierung am 3. November wurde André Triebel hinzugezogen. Er hat sich neben dem Thema Evaluierung intensiv mit Informationsvisualisierungen beim Information-Retrieval beschäftigt und ist ebenfalls an der Umsetzung der Arbeit von Landwich als Diskutant beteiligt. Er hat Folgendes angemerkt: Die Textlabel sind zu kurz. Es ist fast immer notwendig, auf ein Label zu klicken, um es links zu lesen. Kann man es breiter machen? Daraus ergab sich noch folgende Frage: Gibt es einen speziellen Grund dafür, dass die acht Ergebnisse im Kreis um den Suchbegriff angeordnet sind? Besser wäre eine kleine Liste am Suchbegriff. Dann können die Label auch länger sein, und dennoch bleibt alles übersichtlich. Welche Kriterien überprüft der genetische Algorithmus? Schließt eines der Kriterien die Kreisdarstellung ein? Quantitativ könnte man sich die acht Pfeile sparen, was zusätzlich die visuelle Komplexität sinken lässt und gegebenenfalls eine bessere Raumnutzung zulässt. Möglich wäre die Nutzung weiterer ästhetischer Attribute: Farben für die Elemente, die in mehreren Anfragen erscheinen, zusätzliche Formen etc.

134 KAPITEL 5. DIE UMSETZUNG Die finale Fassung Die Abb.en zeigen die finale Fassung von Plexo in der Version 1.2. Sie zeigen die Situation, nachdem eine Folge von Such-Anfragen gestellt wurden: obama, the white house, obama facebook, michelle obama, first lady. Abb zeigt die optimierte Darstellung nach unserem Verfahren. Als Kontroll-Visualisierung wurde ein Layout mit einer physikalischen Simulation implementiert (Abb. 5.14). Zusätzlich wurde eine reine Listenansicht eingefügt, zu sehen in Abb Die drei Visualisierungen sind über Reiter am oberen Rand (Abb J) umschaltbar. Die Vorschläge der Experten wurden analysiert und danach folgende Punkte überarbeitet: Die Tooltip-Anzeige wurde verbessert. Ein Mülleimer wurde realisiert: Dieser kann allerdings nur Suchknoten aufnehmen, eine Erweiterung auf alle Knoten wäre zu aufwändig und ist nicht notwendig für diese Arbeit. Eine Schnittstelle für die Suche wurde im Hinblick auf die Anbindung von Daffodil ausprogrammiert und exemplarisch die Suche auf Google und Amazon-Beständen implementiert. Zum Zeitpunkt der Entstehung der Arbeit wurde noch an der Bereitstellung einer REST-Schnittstelle in Daffodil gearbeitet, so war es nicht möglich, Daffodil als Suchdienst zu nutzen. Allerdings kann später eine solche Kommunikation problemlos umgesetzt werden. Die Textlabel wurden verlängert. Die Ergebnisknoten wurden statt im Kreis um den Suchbegriff nun untereinander unter dem Suchbegriff angeordnet. Dadurch ergibt

135 KAPITEL 5. DIE UMSETZUNG 127 sich auch automatisch eine Reihenfolge. Die von der Suchmaschine als wichtiger erachteten Knoten stehen über den anderen. Durch diese Anordnung werden auch weniger Kanten angezeigt, da die Ergebnis-Knoten direkt linear untereinander platziert werden. Die visuelle Komplexität sinkt dadurch, wie gefordert. Knoten, die in mehreren Anfragen auftauchen, werden nun anders gefärbt dargestellt, ebenso die Kanten auf früher gefundene Ergebnisse. Zusätzlich wurden noch weitere Verbesserungen vorgenommen. So wurde als visuelle Rückmeldung beim Warten auf die Ergebnisse ein leuchtender Kreis, der wie ein Lämpchen anmuten soll, in das Interface integriert. Bei aktiver Suche blinkt er rot. Ist das Interface bereit für eine neue Sucheingabe, ist er grün (Abb D). Die Interaktion wurde ebenfalls noch vereinfacht: Man kann einen Knoten an seiner Position fixieren, indem man ihn einfach an eine andere Position verschiebt, da man davon ausgehen kann, dass die Nutzer einen Knoten an eine gewünschte Position verschieben und wollen, dass er dort verbleibt. Diese Fixierung kann allerdings wieder aufgehoben werden, wenn man den Haken aus der Check-Box Fixed entfernt (Abb E). Den Optimierungsvorgang muss man nicht mehr selbst starten. Er startet automatisch, nachdem neue Knoten eingefügt werden, ab dem zweiten Suchvorgang. Man kann allerdings bei Nichtgefallen des Ergebnisses die Optimierung erneut starten, durch Klick auf den Button Rearrange! (Abb K).

136 KAPITEL 5. DIE UMSETZUNG 128 Abbildung 5.12: Das Layout des User-Interfaces

137 KAPITEL 5. DIE UMSETZUNG 129 Abbildung 5.13: Das genetische Layout mit mehreren Suchanfragen

138 KAPITEL 5. DIE UMSETZUNG 130 Abbildung 5.14: Die physikalische Simulation mit mehreren Suchanfragen

139 KAPITEL 5. DIE UMSETZUNG 131 Abbildung 5.15: Die Listenansicht mit mehreren Suchanfragen

1.2.1 Gestaltpsychologie

1.2.1 Gestaltpsychologie 1.2 Gestaltgesetze 1.2.1 Gestaltpsychologie... 40 1.2.2 Gesetz von der einfachen Gestalt... 41 1.2.3 Gesetz der Nähe... 42 1.2.4 Gesetz der Gleichheit... 43 1.2.5 Gesetz der Geschlossenheit... 44 1.2.6

Mehr

Wahrnehmung und wahrnehmungsgerechte Gestaltung

Wahrnehmung und wahrnehmungsgerechte Gestaltung Wahrnehmung und wahrnehmungsgerechte Gestaltung 37 Gestalt in der Wahrnehmungspsychologie (1) Kants Idee des Vorwissens beeinflusste u.a. die Entwicklung der Gestaltpsychologie, der zufolge einige Aspekte

Mehr

Befragung und empirische Einschätzung der Praxisrelevanz

Befragung und empirische Einschätzung der Praxisrelevanz Befragung und empirische Einschätzung der Praxisrelevanz eines Vorgehensmodells zur Auswahl von CRM-Systemen D I P L O M A R B E I T zur Erlangung des Grades eines Diplom-Ökonomen der Wirtschaftswissenschaftlichen

Mehr

6 Architektur-Mittel (WOMIT)

6 Architektur-Mittel (WOMIT) 6 Architektur-Mittel (WOMIT) Abb. 6-1: Positionierung des Kapitels im Ordnungsrahmen. Dieses Kapitel befasst sich mit der WOMIT-Dimension des architektonischen Ordnungsrahmens, indem es grundlegende Konzepte

Mehr

Einleitung. Was ist das Wesen von Scrum? Die Ursprünge dieses Buches

Einleitung. Was ist das Wesen von Scrum? Die Ursprünge dieses Buches Dieses Buch beschreibt das Wesen von Scrum die Dinge, die Sie wissen müssen, wenn Sie Scrum erfolgreich einsetzen wollen, um innovative Produkte und Dienstleistungen bereitzustellen. Was ist das Wesen

Mehr

GESTALT-THEORIE HERKUNFT GRUNDGEDANKE GESTALTQUALITÄTEN

GESTALT-THEORIE HERKUNFT GRUNDGEDANKE GESTALTQUALITÄTEN - Juliane Bragulla - GESTALT-THEORIE - unter der Bezeichnung Gestaltpsychologie bekannt - ist überdisziplinäre Theorie, die die menschliche Organisation der Wahrnehmung zum Gegenstand hat - versucht zu

Mehr

Frieder Nake: Information und Daten

Frieder Nake: Information und Daten Frieder Nake: Information und Daten Mit Grundlagen der Zeichentheorie nach Morris Seminar 31120: Information Philosophische und informationswissenschaftliche Perspektiven, SS 2004 Frieder Nake: Information

Mehr

Gestengesteuerte Visualisierung digitaler Bestandsdaten

Gestengesteuerte Visualisierung digitaler Bestandsdaten Verteidigung der Masterarbeit Gestengesteuerte Visualisierung digitaler Bestandsdaten Mo, 11 NOV 2013 (SLUB Dresden, R0.46) In Kooperation mit der Sächsischen Landes- und Universitätsbibliothek (SLUB)

Mehr

Projekt AGB-10 Fremdprojektanalyse

Projekt AGB-10 Fremdprojektanalyse Projekt AGB-10 Fremdprojektanalyse 17. Mai 2010 1 Inhaltsverzeichnis 1 Allgemeines 3 2 Produktübersicht 3 3 Grundsätzliche Struktur und Entwurfsprinzipien für das Gesamtsystem 3 3.1 Die Prefuse Library...............................

Mehr

IT-basierte Erstellung von Nachhaltigkeitsberichten. Diplomarbeit

IT-basierte Erstellung von Nachhaltigkeitsberichten. Diplomarbeit IT-basierte Erstellung von Nachhaltigkeitsberichten Diplomarbeit zur Erlangung des Grades eines Diplom-Ökonomen der Wirtschaftswissenschaftlichen Fakultät der Leibniz Universität Hannover vorgelegt von

Mehr

Messdaten auswerten und visualisieren 5 Tipps, die passende Darstellungstechnik für ein Messsystem zu finden

Messdaten auswerten und visualisieren 5 Tipps, die passende Darstellungstechnik für ein Messsystem zu finden Messdaten auswerten und visualisieren 5 Tipps, die passende Darstellungstechnik für ein Messsystem zu finden 27.05.13 Autor / Redakteur: Nach Unterlagen von National Instruments / Hendrik Härter Messdaten

Mehr

Zeichnen von Graphen. graph drawing

Zeichnen von Graphen. graph drawing Zeichnen von Graphen graph drawing WS 2006 / 2007 Gruppe: D_rot_Ala0607 Christian Becker 11042315 Eugen Plischke 11042351 Vadim Filippov 11042026 Gegeben sei ein Graph G = (V; E) Problemstellung V E =

Mehr

Formulierungshilfen für das wissenschaftliche Schreiben

Formulierungshilfen für das wissenschaftliche Schreiben Formulierungshilfen für das wissenschaftliche Schreiben 1. Einleitendes Kapitel 1.1.1 Einen Text einleiten und zum Thema hinführen In der vorliegenden Arbeit geht es um... Schwerpunkt dieser Arbeit ist...

Mehr

1 Einleitung. 1.1 Unser Ziel

1 Einleitung. 1.1 Unser Ziel 1 Dieses Buch wendet sich an alle, die sich für agile Softwareentwicklung interessieren. Einleitend möchten wir unser mit diesem Buch verbundenes Ziel, unseren Erfahrungshintergrund, das dem Buch zugrunde

Mehr

Qualität. Referenzbericht Privatmolkerei Bauer. statt Durchschnitt. Webdevelopment Responsive Design Webdesign

Qualität. Referenzbericht Privatmolkerei Bauer. statt Durchschnitt. Webdevelopment Responsive Design Webdesign Qualität statt Durchschnitt Referenzbericht Privatmolkerei Bauer Webdevelopment Responsive Design Webdesign Redakteur: Herr Fischer, Sie kamen mit dem Wunsch einer neuen Internetpräsenz zu uns. An welchen

Mehr

id_bewerbungsfibel In der Bewerbung sollten daher die im Folgenden beschriebenen Dinge klar kommuniziert werden:

id_bewerbungsfibel In der Bewerbung sollten daher die im Folgenden beschriebenen Dinge klar kommuniziert werden: id_bewerbungsfibel id_bewerbungsfibel Bewerbung für den Studiengang Industrial Design an der Universität Wuppertal Eine Bewerbung zum Studium Industrial Design folgt grundsätzlich den gleichen Kriterien,

Mehr

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12 Grundlagen: Folge 19 - Bäume 19.1 Binärbäume - Allgemeines Unter Bäumen versteht man in der Informatik Datenstrukturen, bei denen jedes Element mindestens zwei Nachfolger hat. Bereits in der Folge 17 haben

Mehr

7.4 Analyse anhand der SQL-Trace. 7.3.5 Vorabanalyse mit dem Code Inspector

7.4 Analyse anhand der SQL-Trace. 7.3.5 Vorabanalyse mit dem Code Inspector 7.4 Analyse anhand der SQL-Trace 337 7.3.5 Vorabanalyse mit dem Code Inspector Der Code Inspector (SCI) wurde in den vorangegangenen Kapiteln immer wieder erwähnt. Er stellt ein paar nützliche Prüfungen

Mehr

Basistraining Vektorgrafik

Basistraining Vektorgrafik Basistraining Vektorgrafik Der kreative Pfad zu besseren Grafiken Bearbeitet von Von Glitschka 1. Auflage 2014. Taschenbuch. XVI, 234 S. Paperback ISBN 978 3 86490 182 9 Format (B x L): 18,5 x 24,5 cm

Mehr

Parallele und funktionale Programmierung Wintersemester 2013/14. 8. Übung Abgabe bis 20.12.2013, 16:00 Uhr

Parallele und funktionale Programmierung Wintersemester 2013/14. 8. Übung Abgabe bis 20.12.2013, 16:00 Uhr 8. Übung Abgabe bis 20.12.2013, 16:00 Uhr Aufgabe 8.1: Zeigerverdopplung Ermitteln Sie an folgendem Beispiel den Rang für jedes Listenelement sequentiell und mit dem in der Vorlesung vorgestellten parallelen

Mehr

Kompetenzmodell für Informatik

Kompetenzmodell für Informatik Kompetenzmodell für Informatik als Grundlage des Lehrplans für den Pflichtgegenstand Informatik in der 5. Klasse und für den Wahlpflichtgegenstand Informatik in der 6. bis 8. Klasse Das Kompetenzmodell

Mehr

The integration of business intelligence and knowledge management

The integration of business intelligence and knowledge management The integration of business intelligence and knowledge management Seminar: Business Intelligence Ketevan Karbelashvili Master IE, 3. Semester Universität Konstanz Inhalt Knowledge Management Business intelligence

Mehr

ZUR BEDEUTUNG VON TRENDS IM INNOVATIONSMANAGEMENT

ZUR BEDEUTUNG VON TRENDS IM INNOVATIONSMANAGEMENT April 2013 ZUR BEDEUTUNG VON TRENDS IM INNOVATIONSMANAGEMENT von Maren Weiß & Prof. Dr. Michael Durst Welche Rolle spielen Trends in den Frühen Phasen im Innovationsmanagement? Wie setzen Unternehmen Trends

Mehr

Individuelles Bachelorstudium. Software Engineering for Physics

Individuelles Bachelorstudium. Software Engineering for Physics Individuelles Bachelorstudium Software Engineering for Physics 1 Qualifikationsprofil Das individuelle Bachelorstudium Software Engineering for Physics vermittelt eine breite, praktische und theoretische

Mehr

Visual Business Intelligence Eine Forschungsperspektive

Visual Business Intelligence Eine Forschungsperspektive Visual Business Intelligence Eine Forschungsperspektive Dr. Jörn Kohlhammer Fraunhofer-Institut für Graphische Datenverarbeitung IGD Fraunhoferstraße 5 64283 Darmstadt Tel.: +49 6151 155 646 Fax.: +49

Mehr

6. ÜBERBLICK ÜBER DIE ÜBERSETZUNGSWISSENSCHAFT

6. ÜBERBLICK ÜBER DIE ÜBERSETZUNGSWISSENSCHAFT 26 6. ÜBERBLICK ÜBER DIE ÜBERSETZUNGSWISSENSCHAFT 6.1. GESCHICHTE DER ÜBERSETZUNGSWISSENSCHAFT Die Übersetzungswissenschaft ist eine sehr junge akademische Disziplin und wurde erst Anfang der 60er Jahre

Mehr

1. Einleitung. 1.1. Ausgangssituation

1. Einleitung. 1.1. Ausgangssituation 1. Einleitung In der vorliegenden Arbeit wird untersucht, welche Faktoren den erfolgreichen Ausgang eines Supply-Chain-Projektes zwischen zwei Projektpartnern beeinflussen. Dazu werden zum einen mögliche

Mehr

Der Entwicklungsprozess. Oder wie entwickle ich ein eingebettetes System?

Der Entwicklungsprozess. Oder wie entwickle ich ein eingebettetes System? Der Entwicklungsprozess Oder wie entwickle ich ein eingebettetes System? Einleitung Problemstellung erläutern, Eine Entwicklungsprozess ist ein Prozess, der beschreibt, wie man eine Entwicklung anzugehen

Mehr

1 Einleitung. 1.1 Caching von Webanwendungen. 1.1.1 Clientseites Caching

1 Einleitung. 1.1 Caching von Webanwendungen. 1.1.1 Clientseites Caching 1.1 Caching von Webanwendungen In den vergangenen Jahren hat sich das Webumfeld sehr verändert. Nicht nur eine zunehmend größere Zahl an Benutzern sondern auch die Anforderungen in Bezug auf dynamischere

Mehr

Use-Cases. Bruno Blumenthal und Roger Meyer. 17. Juli 2003. Zusammenfassung

Use-Cases. Bruno Blumenthal und Roger Meyer. 17. Juli 2003. Zusammenfassung Use-Cases Bruno Blumenthal und Roger Meyer 17. Juli 2003 Zusammenfassung Dieses Dokument beschreibt Netzwerk-Szenarios für den Einsatz von NetWACS. Es soll als Grundlage bei der Definition des NetWACS

Mehr

#openillustration. open source technical illustration

#openillustration. open source technical illustration #openillustration open source technical illustration Mac Krebernik / Einreichung zum tekom intro / Juli 2014 www.openillustration.net facebook.com/openillu twitter.com/openillu instagram.com/openillu #openillu

Mehr

Agile Programmierung - Theorie II SCRUM

Agile Programmierung - Theorie II SCRUM Agile Programmierung - Theorie II SCRUM Arne Brenneisen Universität Hamburg Fakultät für Mathematik, Informatik und Naturwissenschaften Seminar Softwareentwicklung in der Wissenschaft Betreuer: Christian

Mehr

Kunst. Ästhetische Werte (im Wandel der Zeit) verstehen. (Bildnerische) Lösungen und Antworten zu Aufgaben und Herausforderungen finden

Kunst. Ästhetische Werte (im Wandel der Zeit) verstehen. (Bildnerische) Lösungen und Antworten zu Aufgaben und Herausforderungen finden Kunst (Evaluierte Version und komprimiert Schuljahr 2012/13) 3. Kl. MS 1./2. Kl. MS 4./5. Kl. GS 2./3. Kl. GS 1. Kl. GS Sich in einer eigenen (bildnerischen) Sprache ausdrücken Beobachtungen, Phantasien,

Mehr

Der Huffman Algorithmus

Der Huffman Algorithmus Der Huffman Algorithmus Für das Folgende setzen wir voraus, dass die Quellensymbole q ν einem Alphabet {q μ } = {A, B, C,...} mit dem Symbolumfang M entstammen und statistisch voneinander unabhängig seien.

Mehr

Vorwort. Zu dieser Reihe. Autoren. Vorwort

Vorwort. Zu dieser Reihe. Autoren. Vorwort Vorwort 9 10 Vorwort Vorwort Herzlich Willkommen zu einem Fachbuch von Comelio Medien, ein Bereich der Comelio GmbH. Dieses Buch aus unserer Reihe zur.net-entwicklung ist das Ergebnis einer Forschungsarbeit,

Mehr

Perzentile mit Hadoop ermitteln

Perzentile mit Hadoop ermitteln Perzentile mit Hadoop ermitteln Ausgangspunkt Ziel dieses Projektes war, einen Hadoop Job zu entwickeln, der mit Hilfe gegebener Parameter Simulationen durchführt und aus den Ergebnissen die Perzentile

Mehr

Grob- und Detailplanung bei der Implementierung nutzen

Grob- und Detailplanung bei der Implementierung nutzen Softwarearchitektur Grob- und Detailplanung bei der Implementierung nutzen Bereich Realisierung Aktivität Softwareinkrement realisieren Ziele Vermitteln einer Orientierungshilfe für alle Entwickler Etablierung

Mehr

Visuelle Simulation eines Radiosity Algorithmus und ihre Anwendung in Lernprozessen

Visuelle Simulation eines Radiosity Algorithmus und ihre Anwendung in Lernprozessen Visuelle Simulation eines Radiosity Algorithmus und ihre Anwendung in Lernprozessen Abschlussvortrag zur Diplomarbeit von Jörg Karpf Graphische Datenverarbeitung, Institut für Informatik 3. September 2009

Mehr

3.2 Spiegelungen an zwei Spiegeln

3.2 Spiegelungen an zwei Spiegeln 3 Die Theorie des Spiegelbuches 45 sehen, wenn die Person uns direkt gegenüber steht. Denn dann hat sie eine Drehung um die senkrechte Achse gemacht und dabei links und rechts vertauscht. 3.2 Spiegelungen

Mehr

Abstrakt zum Vortrag im Oberseminar. Graphdatenbanken. Gero Kraus HTWK Leipzig 14. Juli 2015

Abstrakt zum Vortrag im Oberseminar. Graphdatenbanken. Gero Kraus HTWK Leipzig 14. Juli 2015 Abstrakt zum Vortrag im Oberseminar Graphdatenbanken Gero Kraus HTWK Leipzig 14. Juli 2015 1 Motivation Zur Darstellung komplexer Beziehungen bzw. Graphen sind sowohl relationale als auch NoSQL-Datenbanken

Mehr

Das Studiengangsinformationssystem (SGIS)

Das Studiengangsinformationssystem (SGIS) Das Studiengangsinformationssystem (SGIS) Manual für Typo3-Redakteure Version 1.a Mai 2015 Kontakt: Referat 1.4 - Allgemeine Studienberatung und Career Service Christian Birringer, christian.birringer@uni-rostock.de

Mehr

Conversion Attribution

Conversion Attribution Conversion Attribution Eines der Trendthemen über das zurzeit jeder spricht ist Attribution. Das heißt allerdings nicht, dass auch jeder weiß was genau Attribution ist, was man damit machen kann und für

Mehr

AdWords Professional Kurs. by netpulse AG

AdWords Professional Kurs. by netpulse AG AdWords Professional Kurs by netpulse AG Inhaltsverzeichnis Einleitung... 3 Kursaufbau... 3 Google zertifizierter AdWords-Spezialist... 3 Modul 1 Wie AdWords wirklich funktioniert... 4 Modul 2 Die bessere

Mehr

Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder

Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder Programmieren in PASCAL Bäume 1 1. Baumstrukturen Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder 1. die leere Struktur oder 2. ein Knoten vom Typ Element

Mehr

Visual Business Analytics Visueller Zugang zu Big Data

Visual Business Analytics Visueller Zugang zu Big Data Visual Business Analytics Visueller Zugang zu Big Data Dr.-Ing. Jörn Kohlhammer Fraunhofer-Institut für Graphische Datenverarbeitung (IGD) Fraunhoferstraße 5 64283 Darmstadt Tel.: +49 6151 155-646 Fax:

Mehr

Usability Engineering

Usability Engineering Fakultät Informatik, Prof. Dr. rer. pol. Thomas Urban Usability Engineering Kapitel 5 Mobile Usability Gliederung 1 Usability Engineering - Einführung 2 Wahrnehmungspsychologie 3 Usability Engineering

Mehr

2 Informationstheorie

2 Informationstheorie 2 Informationstheorie Formale Grundlagen der Informatik I Herbstsemester 2012 Robert Marti Vorlesung teilweise basierend auf Unterlagen von Prof. emer. Helmut Schauer Grundbegriffe Informatik (IT: Information

Mehr

Enterprise Social Networking: Ein Framework und ein Fachkonzept für ein Industrieunternehmen

Enterprise Social Networking: Ein Framework und ein Fachkonzept für ein Industrieunternehmen Enterprise Social Networking: Ein Framework und ein Fachkonzept für ein Industrieunternehmen Bachelorarbeit zur Erlangung des akademischen Grades Bachelor auf Science (B.Sc.) im Studiengang Wirtschaftswissenschaft

Mehr

beziehung kommunikation im raum / dreidimensionale kommunikation interaction design

beziehung kommunikation im raum / dreidimensionale kommunikation interaction design beziehung kommunikation im raum / dreidimensionale kommunikation interaction design mensch - objekt - kontext gestaltung bedeutet kontextualisierung von informationen. statisch und dynamisch statisch designgebote

Mehr

Prof. Dr.-Ing. Dipl.-Wirtsch.-Ing. Burkhard Erdlenbruch Fakultät für Informatik, Hochschule Augsburg. Was ist Wirtschaftsinformatik?

Prof. Dr.-Ing. Dipl.-Wirtsch.-Ing. Burkhard Erdlenbruch Fakultät für Informatik, Hochschule Augsburg. Was ist Wirtschaftsinformatik? Prof. Dr.-Ing. Dipl.-Wirtsch.-Ing. Burkhard Erdlenbruch Fakultät für Informatik, Hochschule Augsburg Was ist Wirtschaftsinformatik? Prof. Dr.-Ing. Dipl.-Wirtsch.-Ing. Burkhard Erdlenbruch Fakultät für

Mehr

1 Einleitung. Software Engineering. Vorgehensweisen

1 Einleitung. Software Engineering. Vorgehensweisen 1 Noch ein Buch über Software Engineering? Warum nicht! Wir folgen einem Prinzip, das zur Lösungsfindung in den verschiedensten Domänen Einzug gehalten hat: die Betrachtung aus verschiedenen Blickwinkeln.

Mehr

DISKUSSIONSBEITRÄGE DER FAKULTÄT FÜR BETRIEBSWIRTSCHAFTSLEHRE MERCATOR SCHOOL OF MANAGEMENT UNIVERSITÄT DUISBURG-ESSEN. Nr. 378

DISKUSSIONSBEITRÄGE DER FAKULTÄT FÜR BETRIEBSWIRTSCHAFTSLEHRE MERCATOR SCHOOL OF MANAGEMENT UNIVERSITÄT DUISBURG-ESSEN. Nr. 378 DISKUSSIONSBEITRÄGE DER FAKULTÄT FÜR BETRIEBSWIRTSCHAFTSLEHRE MERCATOR SCHOOL OF MANAGEMENT UNIVERSITÄT DUISBURG-ESSEN Nr. 378 Umsetzung ausgewählter Supply-Chain-Operations-Reference-Metriken durch das

Mehr

Analyse kritischer Erfolgsfaktoren für Enterprise Social Networking Anwendungen. Bachelorarbeit

Analyse kritischer Erfolgsfaktoren für Enterprise Social Networking Anwendungen. Bachelorarbeit Analyse kritischer Erfolgsfaktoren für Enterprise Social Networking Anwendungen Bachelorarbeit zur Erlangung des akademischen Grades Bachelor of Science (B.Sc.) im Studiengang Wirtschaftswissenschaften

Mehr

(Thema) Realisierung eines kennzahlenbasierten Steuerungskonzepts für das Change Management. Bachelorarbeit

(Thema) Realisierung eines kennzahlenbasierten Steuerungskonzepts für das Change Management. Bachelorarbeit (Thema) Realisierung eines kennzahlenbasierten Steuerungskonzepts für das Change Management Bachelorarbeit zur Erlangung des akademischen Grades Bachelor of Science (B.Sc.) im Studiengang Wirtschaftswissenschaft

Mehr

Ermittlung von Assoziationsregeln aus großen Datenmengen. Zielsetzung

Ermittlung von Assoziationsregeln aus großen Datenmengen. Zielsetzung Ermittlung von Assoziationsregeln aus großen Datenmengen Zielsetzung Entscheidungsträger verwenden heutzutage immer häufiger moderne Technologien zur Lösung betriebswirtschaftlicher Problemstellungen.

Mehr

Einführung in die praktische Philosophie

Einführung in die praktische Philosophie Einführung in die praktische Philosophie Vorlesung 1. Was ist praktische Philosophie? Claus Beisbart TU Dortmund Sommersemester 2011 Ziel der heutigen Vorlesung In der ersten Vorlesung möchte ich Sie an

Mehr

11 DYNAMISCHES GRUNDWASSERMANAGEMENT- SYSTEM

11 DYNAMISCHES GRUNDWASSERMANAGEMENT- SYSTEM Kapitel 11: Dynamisches Grundwassermanagementsystem 227 11 DYNAMISCHES GRUNDWASSERMANAGEMENT- SYSTEM 11.1 Übersicht Das entwickelte Optimierungssystem für instationäre Verhältnisse lässt sich in der praktischen

Mehr

ISMS Teil 3 Der Startschuss

ISMS Teil 3 Der Startschuss ISMS Teil 3 Der Startschuss Nachdem das TOP-Managenment die grundsätzliche Entscheidung getroffen hat ein ISMS einzuführen, kann es nun endlich losgehen. Zu Beginn sollte Sie noch die Grundlagen des ISMS

Mehr

Die wahre Entdeckung besteht nicht darin, Neuland zu finden, sondern die Dinge mit neuen Augen zu sehen. Marcel Proust

Die wahre Entdeckung besteht nicht darin, Neuland zu finden, sondern die Dinge mit neuen Augen zu sehen. Marcel Proust Dynamische Rollen Dreh- und Angelpunkt von perbit.insight ist ein intuitiv bedienbares HR Solution Center. Hier stehen alle personalwirtschaftlichen Anwendungen zusammengeführt unter einer einheitlichen

Mehr

Wahlfach Mathematik: Funktionen

Wahlfach Mathematik: Funktionen Wahlfach Mathematik: Funktionen In der Mathematik ist eine Funktion oder Abbildung eine Beziehung zwischen zwei Mengen, die jedem Element der einen Menge (Funktionsargument, unabhängige Variable, x-wert)

Mehr

Die Informatik als junge Wissenschaft

Die Informatik als junge Wissenschaft Die Informatik als junge Wissenschaft Die Informatik ist die Wissenschaft von der automatischen Informationsverarbeitung. Die Informatik befasst sich mit den Gesetzmäßigkeiten und Prinzipien informationsverarbeitender

Mehr

Diplomarbeit. Entwurf eines generischen Prozessleitstandes für Change Request Systeme

Diplomarbeit. Entwurf eines generischen Prozessleitstandes für Change Request Systeme Fakultät für Mathematik, Informatik und Naturwissenschaften Forschungsgruppe Softwarekonstruktion Diplomarbeit Entwurf eines generischen Prozessleitstandes für Change Request Systeme Development of a Generic

Mehr

AP06. Den Wandel gestalten Strategisches Change-Management. Veränderungsprozesse wirksam führen und managen

AP06. Den Wandel gestalten Strategisches Change-Management. Veränderungsprozesse wirksam führen und managen Den Wandel gestalten Strategisches Change-Management Veränderungsprozesse wirksam führen und managen Autoren Irena Baumgartner, Jill Schmelcher, Anna Beinlich AP06 Herausgeber Prof. Dr. Arnold Weissman

Mehr

Grundwissen Informatik 6. Jahrgangsstufe

Grundwissen Informatik 6. Jahrgangsstufe Grundwissen Informatik kann nicht direkt weitergegeben werden, sondern sie muss erst verarbeitet und in eine Darstellung (Repräsentation) gebracht werden (z. B. eine Strichliste, ein Foto, ein Diagramm,

Mehr

SoSe 2015. 11210 Grundlagen der Malerei und der künstlerischen Arbeit im Raum N.N.

SoSe 2015. 11210 Grundlagen der Malerei und der künstlerischen Arbeit im Raum N.N. Modulhandbuch Abschluss: Studiengang: Gültig für das Semester: PO-Version: Bachelor of Fine Arts (B.F.A.) 1. Studienabschnitt Freie Bildende Kunst 11000 Modul FK-1: Grundlagen der Praxis und Theorie künstlerischer

Mehr

A1.7: Entropie natürlicher Texte

A1.7: Entropie natürlicher Texte A1.7: Entropie natürlicher Texte Anfang der 1950er Jahre hat Claude E. Shannon die Entropie H der englischen Sprache mit einem bit pro Zeichen abgeschätzt. Kurz darauf kam Karl Küpfmüller bei einer empirischen

Mehr

Service Innovation Lab. Prozessoptimierung für Dienstleistungen

Service Innovation Lab. Prozessoptimierung für Dienstleistungen Service Innovation Lab Prozessoptimierung für Dienstleistungen 2 Dienstleistungsprozesse im Unternehmen Ein reibungsloser Ablauf der unternehmensinternen Prozesse ist die Basis des wirtschaftlichen Erfolgs

Mehr

USABILITY-CHECKLISTE FÜR SOFTW ARE- ANWENDENDE UNTERNEHMEN

USABILITY-CHECKLISTE FÜR SOFTW ARE- ANWENDENDE UNTERNEHMEN USABILITY-CHECKLISTE FÜR SOFTW ARE- ANWENDENDE UNTERNEHMEN 1 EINLEITUNG Auch Unternehmen, die Software-Produkte einkaufen, stehen vor der Herausforderung, eine geeignete Auswahl treffen zu müssen. Neben

Mehr

4. Relationen. Beschreibung einer binären Relation

4. Relationen. Beschreibung einer binären Relation 4. Relationen Relationen spielen bei Datenbanken eine wichtige Rolle. Die meisten Datenbanksysteme sind relational. 4.1 Binäre Relationen Eine binäre Relation (Beziehung) R zwischen zwei Mengen A und B

Mehr

Einführung in die Informatik I

Einführung in die Informatik I Einführung in die Informatik I Algorithmen und deren Programmierung Prof. Dr. Nikolaus Wulff Definition Algorithmus Ein Algorithmus ist eine präzise formulierte Handlungsanweisung zur Lösung einer gleichartigen

Mehr

User Experience vs. Retrievaltests Wie lässt sich die Relevanz von Suchergebnissen bewerten?

User Experience vs. Retrievaltests Wie lässt sich die Relevanz von Suchergebnissen bewerten? User Experience vs. Retrievaltests Wie lässt sich die Relevanz von Suchergebnissen bewerten? Prof. Dr. Dirk Lewandowski Hochschule für Angewandte Wissenschaften Hamburg dirk.lewandowski@haw-hamburg.de

Mehr

Informatik und Informationstechnik (IT)

Informatik und Informationstechnik (IT) Informatik und Informationstechnik (IT) Abgrenzung Zusammenspiel Übersicht Informatik als akademische Disziplin Informations- und Softwaretechnik Das Berufsbild des Informatikers in der Bibliothekswelt

Mehr

Whitepaper. Warum Usability-Tests wichtig sind

Whitepaper. Warum Usability-Tests wichtig sind Whitepaper 01 Die Wichtigkeit von Usability-Tests Haben Sie sich schon einmal gefragt, ob Ihre Webseite ihr Potential voll ausschöpft? Ob es irgendwelche Stellschrauben gibt, an denen Sie drehen können

Mehr

Systematische Software-Qualität mittels einer durchgängigen Analyse- und Teststrategie

Systematische Software-Qualität mittels einer durchgängigen Analyse- und Teststrategie Insert picture and click Align Title Graphic. Systematische Software-Qualität mittels einer durchgängigen Analyse- und Teststrategie Dr. Dieter Lederer, Geschäftsführer Vector Consulting Services GmbH

Mehr

Web-2.0-Forschung der KWARC-Gruppe

Web-2.0-Forschung der KWARC-Gruppe Web-2.0-Forschung der KWARC-Gruppe 3. Web Montag Bremen Christoph Lange, Matthias Bröcheler International University Bremen (Jacobs University Bremen ab Frühjahr 2007) 27. November 2006 Ch. Lange/M. Bröcheler

Mehr

Hochschule Heilbronn Technik Wirtschaft Informatik

Hochschule Heilbronn Technik Wirtschaft Informatik Hochschule Heilbronn Technik Wirtschaft Informatik Studiengang Electronic Business (EB) Diplomarbeit (280000) Evaluierung und Einführung eines Web Content Management Systems bei einem internationalen und

Mehr

Die Quantitative und Qualitative Sozialforschung unterscheiden sich bei signifikanten Punkten wie das Forschungsverständnis, der Ausgangspunkt oder

Die Quantitative und Qualitative Sozialforschung unterscheiden sich bei signifikanten Punkten wie das Forschungsverständnis, der Ausgangspunkt oder 1 2 3 Die Quantitative und Qualitative Sozialforschung unterscheiden sich bei signifikanten Punkten wie das Forschungsverständnis, der Ausgangspunkt oder die Forschungsziele. Ein erstes Unterscheidungsmerkmal

Mehr

Aufbau und Pflege von Internetseiten leicht gemacht

Aufbau und Pflege von Internetseiten leicht gemacht Aufbau und Pflege von Internetseiten leicht gemacht Einführung in die Grundlagen der CMS (Content Management Systeme) Was ist ein CMS? frei übersetzt: Inhaltsverwaltungssystem ist ein System, das die gemeinschaftliche

Mehr

Wie kann man Kreativität und Innovation fördern? Psychologische Ansätze zum Ideenmanagement

Wie kann man Kreativität und Innovation fördern? Psychologische Ansätze zum Ideenmanagement Wie kann man Kreativität und Innovation fördern? Psychologische Ansätze zum Ideenmanagement Dipl.-Psych. Sandra Ohly Institut f. Psychologie TU Braunschweig Vorschau Psychologische Modelle der Kreativitäts

Mehr

Qualität 1. 1 Qualität

Qualität 1. 1 Qualität Qualität 1 1 Qualität Nach dem Durcharbeiten dieses Kapitels sollten Sie die Qualität für ein Softwaresystem definieren können, typische Qualitätskriterien kennen, Qualitätskriterien messbar festlegen

Mehr

Wissen und seine Rolle im und vor dem Übersetzungsprozess. Arbeit mit Hilfstexten

Wissen und seine Rolle im und vor dem Übersetzungsprozess. Arbeit mit Hilfstexten Michal Dvorecký Wissen und seine Rolle im und vor dem Übersetzungsprozess. Arbeit mit Hilfstexten Aufgabe 1 Wissen und seine Rolle im und vor dem Übersetzungsprozess. Aufgabe zur Bewusstmachung der unterschiedlichen

Mehr

Kontextbasiertes Information Retrieval

Kontextbasiertes Information Retrieval Kontextbasiertes Information Retrieval Modell, Konzeption und Realisierung kontextbasierter Information Retrieval Systeme Karlheinz Morgenroth Lehrstuhl für Medieninformatik Fakultät Wirtschaftsinformatik

Mehr

Simulation der SW-Systemzuverlässigkeit in Automatisierungssystemen auf Grundlage von SW-Komponenten

Simulation der SW-Systemzuverlässigkeit in Automatisierungssystemen auf Grundlage von SW-Komponenten Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner Simulation der SW-Systemzuverlässigkeit in Automatisierungssystemen auf Grundlage von SW-Komponenten

Mehr

Informatik im Bambuswald: fliegende Computer, digitalisierte Professoren, ehotels und Fussballweltmeister-Roboter

Informatik im Bambuswald: fliegende Computer, digitalisierte Professoren, ehotels und Fussballweltmeister-Roboter Takustrasse 9 14195 Berlin 5 Min. von U-Dahlem-Dorf Zugang auch Arnimallee 6 oder Altensteinstrasse 23 FB Mathematik und Informatik Lange Nacht der Wissenschaften am 11. Juni 2005 Mathematik für alle Sinne,

Mehr

Analyse alt- und mittelpaläolithischer Steinartefaktinventare mittels Parallelkoordinatenplots

Analyse alt- und mittelpaläolithischer Steinartefaktinventare mittels Parallelkoordinatenplots Einleitung Analyse alt- und mittelpaläolithischer Steinartefaktinventare mittels Parallelkoordinatenplots von Irmela Herzog Im Rahmen der Herbsttagung der AG DANK (Datenanalyse und Numerische Klassifikation)

Mehr

AdWords Professional Kurs. by netpulse AG

AdWords Professional Kurs. by netpulse AG AdWords Professional Kurs by netpulse AG Inhaltsverzeichnis Einleitung... 3 Kursaufbau... 3 Google zertifizierter AdWords-Spezialist... 3 Modul 1 Keywords, der Schlüssel zum Erfolg... 4 Modul 2 Anzeigen

Mehr

Diskussion eines hybriden Projektmanagements im Vergleich zu klassischem und agilem Projektmanagement. Bachelorarbeit

Diskussion eines hybriden Projektmanagements im Vergleich zu klassischem und agilem Projektmanagement. Bachelorarbeit Diskussion eines hybriden Projektmanagements im Vergleich zu klassischem und agilem Projektmanagement Bachelorarbeit zur Erlangung des akademischen Grades Bachelor of Science (B.Sc.) im Studiengang Wirtschaftswissenschaft

Mehr

Abb.: Darstellung der Problemfelder der Heine GmbH

Abb.: Darstellung der Problemfelder der Heine GmbH Entwicklung eines SOLL-Konzeptes Kehl Olga 16.05.10 Wie aus der Ist-Analyse ersichtlich wurde, bedarf die Vorgehensweise bei der Abwicklung von Projekten an Verbesserung. Nach der durchgeführten Analyse

Mehr

Diskussion eines IT-Outsourcing unter Berücksichtigung von Compliance Anforderungen. Bachelorarbeit

Diskussion eines IT-Outsourcing unter Berücksichtigung von Compliance Anforderungen. Bachelorarbeit Diskussion eines IT-Outsourcing unter Berücksichtigung von Compliance Anforderungen Bachelorarbeit zur Erlangung des akademischen Grades Bachelor of Science (B.Sc.) im Studiengang Wirtschaftswissenschaft

Mehr

Das Internet als Herausforderung politischer Bildung

Das Internet als Herausforderung politischer Bildung A im S t u d i e n z u P o l i t i k u n d W i s s e n s c h a f t Thilo Harth Das Internet als Herausforderung politischer Bildung WOCHEN SCHAU VERLAG Inhalt Votwort 1 1 Einleitung 3 Das Internet ist

Mehr

Lehrplan Physik. Bildungsziele

Lehrplan Physik. Bildungsziele Lehrplan Physik Bildungsziele Physik erforscht mit experimentellen und theoretischen Methoden die messend erfassbaren und mathematisch beschreibbaren Erscheinungen und Vorgänge in der Natur. Der gymnasiale

Mehr

Social Software im Change Management. Bachelorarbeit

Social Software im Change Management. Bachelorarbeit Social Software im Change Management Bachelorarbeit zur Erlangung des akademischen Grades Bachelor of Science (B.Sc.) im Studiengang Wirtschaftswissenschaft der Wirtschaftswissenschaftlichen Fakultät der

Mehr

SELBSTREFLEXION. Selbstreflexion

SELBSTREFLEXION. Selbstreflexion INHALTSVERZEICHNIS Kompetenz... 1 Vergangenheitsabschnitt... 2 Gegenwartsabschnitt... 3 Zukunftsabschnitt... 3 GOLD - Das Handbuch für Gruppenleiter und Gruppenleiterinnen Selbstreflecion Kompetenz Die

Mehr

University of Leicester

University of Leicester FOCUS DES MANAGEMENT-DEVELOPMENT Das Management-Diplom wird als 12-Monats-Programm angeboten. Alle erforderlichen Kursmaterialien werden in flexiblen Lerneinheiten zusammen mit Kerntexten und passenden

Mehr

Approximationsalgorithmen

Approximationsalgorithmen Ausarbeitung zum Thema Approximationsalgorithmen im Rahmen des Fachseminars 24. Juli 2009 Robert Bahmann robert.bahmann@gmail.com FH Wiesbaden Erstellt von: Robert Bahmann Zuletzt berarbeitet von: Robert

Mehr

Integration Services - Dienstarchitektur

Integration Services - Dienstarchitektur Integration Services - Dienstarchitektur Integration Services - Dienstarchitektur Dieser Artikel solle dabei unterstützen, Integration Services in Microsoft SQL Server be sser zu verstehen und damit die

Mehr

Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 6

Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 6 Prof. Dr. Wilhelm Schäfer Paderborn, 24. November 204 Christian Brenner Tristan Wittgen Besprechung der Aufgaben:. - 4. Dezember 204 Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester

Mehr

CHARTA VON VENEDIG Art. 1-16 Internationale Charta über die Konservierung und Restaurierung von Denkmälern und Ensembles (1964)

CHARTA VON VENEDIG Art. 1-16 Internationale Charta über die Konservierung und Restaurierung von Denkmälern und Ensembles (1964) CHARTA VON VENEDIG Art. 1-16 Internationale Charta über die Konservierung und Restaurierung von Denkmälern und Ensembles (1964) Artikel 1 Der Denkmalbegriff umfasst sowohl das einzelne Denkmal als auch

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Dipl. Inform. Andreas Wilkens aw@awilkens.com Überblick Grundlagen Definitionen Elementare Datenstrukturen Rekursionen Bäume 2 1 Datenstruktur Baum Definition eines Baumes

Mehr

Universität Passau. Prof. Dr. Carola Jungwirth. Bachelorarbeit

Universität Passau. Prof. Dr. Carola Jungwirth. Bachelorarbeit Universität Passau Lehrstuhl für Betriebswirtschaftslehre mit Schwerpunkt Internationales Management Prof. Dr. Carola Jungwirth Bachelorarbeit Der Einsatz moderner Medien und Kommunikationsmöglichkeiten

Mehr