Home
Entwicklung und Implementierung einer Rechercheunterst
Contents
1. 12 garnelen 13 lebensraum wattenmeer 14 amrum Tabelle 7 3 Anfragen aus Such und Filterbegriffen zum Garnelen Beispiel Problem der Deskriptorredundanz soll anhand des folgenden Beispiels der Anfrage A veran schaulicht werden A lebensraum UND wattenmeer UND lebensraum wattenmeer Die Anfrage A beinhaltet zwei Deskriptoren lebensraum und wattenmeer die nicht zu einer signifikanten Einschr nkung der Ergebnismenge f hren Es werden n mlich nur Tref fer geliefert in denen beide Suchbegriffe direkt hintereinander vorkommen spezifiziert durch Deskriptor lebensraum wattenmeer Daher k nnten die Suchbegriffe lebensraum UND wattenmeer durch andere ersetzt werden z B durch schrimp oder garnelenzucht Ein Verfahren zur L sung dieses Problems ist im Entwurf des Assistentensystems bisher noch nicht vorgesehen und bietet daher Raum f r weitere Entwicklungen Da eine Anfrage eine Liste von Such bzw Filterbriffen ist Ordnungskriterium Deskriptorbewertung und auch die Menge der Anfragen eine Ordnung hat Ordnungskriterien Kardinalit t und mittleres De skriptorgewicht einer Anfrage ist das Resultat der Methoden getQueries bzw getFil ters eine Liste von Listen von Deskriptoren Um die Tokenrelation der Deskriptorfabriken des QueryService zu leeren existieren zwei Methoden clearPosDescriptors und clearNegDesc
2. 00 4 2 3 Entwicklung eines Benutzungsmodells 4 3 Veranschaulichung anhand eines Fallbeispiels 4 4 Abgrenzung zu verwandten Systemen 2 2 2 Cm none 5 Grundlagen der Clusteranalyse 5 1 Einf hrung in die Clusteranalyse 2 2 Comm onen 5 2 hnlichkeits und Distanzma e 22 2 Cm onen 5 3 Anwendung von hnlichkeits und Distanzma en auf Cluster 5 4 Vorstellung des k Means Verfahrens 2 2 2 2 onen 6 Statistische Bewertungsverfahren f r Deskriptoren 6 1 Absoluter H ufigkeitsansatz 22 2 Common 6 2 tf idf H ufigkeitsansatz 22 oo Comm 10 10 11 12 12 13 14 15 16 17 19 19 20 20 21 24 27 30 32 32 33 36 36 Inhaltsverzeichnis 7 Systementwurf TAs bersicht ff a eee 4k es are AOE ee 7 2 Bereitstellung von LAssi Desktop und Schaleninhalten 7 3 Aufbereitung und statistische Analyse der Textinhalte 7 4 Berechnung von Anfragen aoaaa 7 5 Interaktion mit integrierten Suchmaschinen 7 5 1 Repr sentation einer Suchmaschine und eines Treffers 7 5 2 Kommunikation mit Suchmaschinen 2 22222200 7 5 3 Verwaltung der Treffer in Trefferschalen 2 222 7 6 Entwurf der Clusterberechnung 2 22 Emm onen 8 Implementierungsdetails 8 1 Extraktion von Trefferinhalten 22 2 CC o comme 8 2 Statusmonitoring der Suchagenten 2 2 oo nn 8 3 Implementierung
3. Die Idee des Cosinusma es ist dass die Merkmalsvektoren hnlicher Objekte einen sehr kleinen Winkel einschlieBen Die Vorteile des Cosinusmafes sind seine Anschaulichkeit und seine einfache Berechenbarkeit Au erdem ist das Cosinusma f r verh ltnisskalierte Merk male nutzbar Der Nachteil des Cosinusma es ist dass es die Streuung der Merkmalspunkte nicht ber cksichtigt Dies soll an einem kleinen Beispiel veranschaulicht werden Gegeben seien die Merkmalsvektoren 1 1 1 und b 100 100 100 Der Winkel zwischen beiden den Vektoren betr gt 0 es liegt also der maximale hnlichkeitswert vor Das Problem liegt darin dass der Vektor b ein Ausrei er sein und dies gegen einen hohen hnlichkeitswert sprechen k nnte Es stellt sich die Frage ob zwei Treffer wahrscheinlich in einen gemeinsamen Cluster geh ren wenn sie dieselben Begriffe enthalten oder erst dann wenn sie auch ungef hr gleich viele Vorkommen dieser Begriffe beinhalten Da der Assistent eine inhaltlich relativ homogene Menge von Treffern recherchieren wird werden alle Treffer ein hnliches Vokabular verwenden Daher ist f r die Berechnung von Clustern ein Ma erfor derlich welches auch die H ufigkeit eines Begriffs in einem Treffer ber cksichtigt Wenn man die Merkmalsvektoren als Punkte im Raum interpretiert dann interessiert f r das Clustering deren tats chlicher Abstand zueinander Nach den hnlichkeitsma en sollen auch Distanzma e formal definiert w
4. und SearchService Zur Bereitstellung der Adapterklassen wird der Adaptermanager der Eclipse Plattform verwendet Von diesem Adaptermanager k nnen Adapter f r bestimmte Objekte abgerufen werden Der Adapterma nager ben tigt zur Instanziierung eines Adapters eine Instanz einer Fabrikklasse Diese muss am Adaptermanager ber den Erweiterungspunkt org eclipse core runtime adapters ange meldet werden Neben Angabe der Fabrikklasse fordert der Adaptermanager auch die An 72 8 3 Implementierung der Trefferansichten gabe der adaptierten Klasse F r die Fabrikklassen ist die Implementierung der Schnittstelle TAdapterFactory vorgegeben welche die Methode getAdapter zur Instanziierung eines Adapters definiert Eine Adapterklasse muss von der abstrakten Klasse org eclipse ui model WorkbenchAdapter erben welche z B die Implementierung von Methoden zur Bereitstel lung eines Icons getlmageDescriptor und m glicher Substrukturen getChildren for dert lAdaptable TreeViewer WorkbenchLabelProvider Abbildung 8 7 Trefferansichten mit dem JFace TreeViewer in UML Notation Da die Treffer sowohl in der Herkunfts als auch in der Clusteransicht in einer Baumstruktur dargestellt werden k nnen wird zur Darstellung der Treffer das Steuerelement JFace Tree Viewer verwendet Wie in der Abbildung 8 7 dargestellt ben tigt ein TreeViewer Objekt eine Struktur von Objekten welche in de
5. www hausarbeiten de Abbildung 5 5 Anwendung des k Means Verfahren zur Berechnung von Trefferclustern 124g 12 Seite 109 ff Bygl 12 Seite 73 38 6 Statistische Bewertungsverfahren f r Deskriptoren Dieses Kapitel stellt Verfahren zur Bestimmung von charakteristischen Begriffen aus einer Menge von Dokumenten bzw Treffern vor Die Verfahren basieren auf statistischen H ufig keiten Diese Begriffe werden als Deskriptoren bezeichnet Ein Deskriptor ist entweder ein einzelner Begriff z B Wattenmeer oder eine Kombination einer bestimmten Anzahl von Begriffen z B Lebensraum Wattenmeer Die maximale Anzahl ist vom Sch ler festzule gen Die vorgestellten Verfahren sind f r den Assistenten an vier Stellen notwendig 1 Auswahl von Suchbegriffen aus dem aktuell ge ffneten LAssi Desktop und den Scha leninhalten der hochwertigen zu ber cksichtigenden Treffer 2 Auswahl von Filterbegriffen aus den Schaleninhalten der geringwertigen Treffer 3 Auswahl der Spaltenbezeichnungen f r die Merkmalsmatrix X zur Clusterberechnung der Treffer aus der vom Sch ler selektierten Schale 4 Berechnung von Labels f r die aus den Treffern einer Schale berechneten Cluster Kandidatenmenge Deskriptorliste Nordsee Garnele Wattenmeer Garnelenzucht Rezept Garnele Garnelenzucht Aquaristik Garnelenzucht Garnele K ste Garnele Garnele Garnelenzucht Wattenmeer Garnele Wattenmeer 1 Garnele 2 Garn
6. An dieser Stelle soll eine sehr h ufig erw hnte und implementierte Idee vorgestellt werden Es besteht die M glichkeit einen Vektor bzw Punkt zu bestimmen der den Cluster repr sentiert Repr sentant Auf derlei Vektoren bzw Punkte k nnen die vorgestellten Distanz und hnlichkeitsma e ange wendet werden Ein solcher Ansatz ist das Zentroid Verfahren welches den Zentralvektor bzw Mittelpunkt eines Clusters beides wird Zentroid genannt berechnet und anhand die ses Zentroiden den Abstand des Clusters zu anderen Vektoren oder Clustern berechnet In der Abbildung 5 3 sind zwei Cluster im zweidimensionalen Raum mitsamt ihrer Zentroiden dargestellt Der Abstand der Cluster entspricht dem Abstand der Zentroiden zueinander rot markierte Strecke Zentroid von B Begriff B Cluster A Begriff A Abbildung 5 3 Cluster mit zugeh rigem Zentroiden im zweidimensionalen Raum 5 4 Vorstellung des k Means Verfahrens Ein h ufig implementiertes Clustering Verfahren ist das k Means Verfahren Das k Means Verfahren ist ein partitionierendes Clustering Verfahren Partitionierende Verfahren teilen eine gegebene Menge von Objekten in k Gruppen Partitionen auf sodass das Ergebnis dieser Ver fahren eine optimale Verteilung aller Objekte auf die k Partitionen darstellt Der Wert k wird diesem Verfahren als Parameter mitgeteilt Innerhalb der k Partitionen sind nach Abschluss eines partitionierenden Verfahrens keine weitere
7. Eine Alternative zu diesem Verfahren w re die Kommunikation der Suchagenten untereinander Ein Suchagent m sste alle anderen befragen ob sie bereits einen Treffer mit einem bestimmten URL recherchiert haben Wenn dies nicht der Fall ist dann kann der Suchagent seinen Treffer in den HitService einf gen Von dieser Variante wird abgesehen weil die Implementierung aufwendiger als die vom ersten Verfahren w re und sie keinen Mehrwert bietet der im aktuellen Entwurf genutzt werden kann 63 7 6 Entwurf der Clusterberechnung 7 6 Entwurf der Clusterberechnung Die Clusterberechnung ist Voraussetzung f r die Clusteransicht die der Assistent dem Sch ler anbieten soll Die Berechnung der Cluster in Abh ngigkeit zum Trefferinhalt muss vom As sistenten selbst ausgef hrt werden da die Treffer aller Suchmaschinen in der Clusteransicht dargestellt werden sollen und die meisten Suchmaschinen keine Treffercluster zum Abruf be reitstellen ClusterGenerator documents Map lt String Set lt Pair lt String Double gt gt ClusterGenerator clusFunc IClusteringFunction distFunc IDistanceFunction ClusterGenerator add documentContents Set lt Pair lt String Double gt gt url String void remove url String clear void generateClusters Set lt Set lt String gt gt clusteringFunction lt lt interface gt gt IClusteringFunction apply documents Map lt String Set lt Pair lt String Double gt gt
8. Mathematik f r Ingenieure und Naturwissenschaftler Band 1 Friedr Vieweg und Sohn Verlagsgesellschaft mbH 2001 M F Porter An algorithm for suffix stripping Program 14 no 3 pages 130 137 July 1980 Verf gbar unter http www tartarus org martin PorterStemmer def txt T A Runkler Information Mining Methoden Algorithmen und Anwendungen intelligenter Datenanalyse Friedr Vieweg und Sohn Verlagsgesellschaft mbH 2000 G Salton and M McGill Information Retrieval Grundlegendes f r Informationswissenschaft licher Deutsche bersetzung McGraw Hill Book Company GmbH 1983 S J R und Peter Norvig K nstliche Intelligenz ein moderner Ansatz Deutsche bersetzung Addison Wesley Verlag 2004 S M Weiss N Indurkhya T Zhang and F J Damerau Text Mining Predictive Methods for Analyzing Unstructured Information Springer Science Business Media Inc 2004 113 Eidesstattliche Erkl rung Ich erkl re hiermit an Eides statt dass ich die vorliegende Arbeit selbstst ndig und ohne Be nutzung anderer als der angegebenen Hilfsmittel angefertigt habe die aus fremden Quellen direkt oder indirekt bernommenen Gedanken sind als solche kenntlich gemacht Die Arbeit wurde bisher in gleicher oder hnlicher Form keiner anderen Pr fungskommission vorgelegt und auch nicht ver ffentlicht Buxtehude den 21 02 2007 Jan Christian Krause
9. Rich Client Platform entwickelt worden ist weil die LAssi Plattform ebenfalls auf diesen Technologien basiert Die Eclipse Plattform bietet ein komfortables und ausgereif tes Plugin Konzept Da der Assistent in Form eines Eclipse Plugins entwickelt worden ist kann er ber dieses Konzept nahtlos in die LAssi Plattform integriert werden 8 1 Extraktion von Trefferinhalten Der Assistent ben tigt sowohl f r das Finden von Such und Filterbegriffen als auch f r das Berechnen von Trefferclustern die Textinhalte der Treffer Diese nutzen aber hochgradig heterogene Datenformate z B indexiert die Web Suchmaschine Yahoo u a HTML PDF RTF und Word Dokumente Wie ist die Extraktion der Daten aus diesen Treffernformaten ber die Methode getContents der Schnittstelle Hit in ihren konkreten Klassen z B YahooHit implementiert Als Beispiel wird hier die Implementierung von Treffern der Suchmaschine Yahoo betrach tet Klasse YahooHit in der Abbildung 8 1 Die LAssi Plattform stellt ein Singleton Objekt der Klasse DocumentReaderService bereit Die Aufgabe dieses Dienstes ist das Konver tieren eines Dokuments in eine Menge von gewichteten Zeichenketten Diese Funktionalit t wird ber die Methode readDocumentsContents abgebildet Die Methode erwartet die An gabe des Dokument MIME Typs und eines Objektes der Klasse java io InputStream Ein InputStream Objekt beinhaltet eine Referenz auf eine R
10. Set lt Set lt String gt gt setDistanceFunction distFunction IDistanceFunction void DescriptorFactory distanceFunction lt lt interface gt gt IDistanceFunction getSimilarity vectorl List lt Double gt vector2 List lt Double gt EuklidDistanceFunction Abbildung 7 16 UML Diagramm der Klasse ClusterGenerator und ihres Kontextes Wie in UML Notation in der Abbildung 7 16 dargestellt soll die Clusterberechnung tiber ein Objekt der Klasse ClusterGenerator abgewickelt werden Der Konstruktor der Klas se ClusterGenerator erwartet als Parameter ein Clustering Verfahren z B das k Means Verfahren und eine Distanzfunktion fiir das Verfahren z B die euklidische Distanz Die Klasse die das Clustering Verfahren implementiert muss die Schnittstelle IClusteringFunc tion bedienen Die zu implementierende Schnittstelle f r die Distanzfunktion hei t IDi stanceFunction Ein Objekt der IDistanceFunction wird direkt ber die Methode setDi stanceFunction an ein Objekt der IClusteringFunction weitergereicht Aufgrund der lo 7 6 Entwurf der Clusterberechnung sen Kopplung des Clustering Verfahrens an den ClusterGenerator und der Distanzfunktion an das Clustering Verfahren k nnen beide gegen Alternativen ausgetauscht werden ber die Methode addO k nnen dem ClusterGenerator Trefferinhalte bergeben werden Sie erwartet gewichtete Strings al
11. ey Lebensraum Wattenmeer v Rezepte E Aquaristikdatenbank Shop 1 9 Aquaristikshop Garnelenangebote Abbildung 4 3 Entwurf der Clusteransicht mit Treffern zur Anfrage Garnele essant wenn im Sch lervortrag auf die wirtschaftliche Nutzung von Gernelenarten oder die Rolle bestimmter Garnelenarten in z B der menschlichen Nahrungskette eingegangen wer den soll Je nachdem welche Relevanz die Garnelenzucht f r die Sch ler hat K nnten sie an dieser Stelle z B inhaltliche Aufgaben untereinander verteilen der eine Sch ler wertet die Treffer zur Garnele aus und der andere besch ftigt sich mit der wirtschaftlichen Nutzung der Garnelen Bei der Auswertung stellen die Sch ler fest dass Ihnen einige Treffer berhaupt nicht bei der Erstellung ihres Vortrags helfen werden so z B die Einkaufsangebote und die Rezepte Sie verschieben beide Treffer ber das Kontextmen in die Abfallschale Nach der Auswertung aller Treffer w rden die Sch ler gern mehr ber das Wattenmeer erfahren um Hintergrund informationen zum Lebensraum der Nordseegarnele zu erhalten Um den Assistenten in diese inhaltiche Richtung zu steuern verschiebt der Sch ler den Treffer Lebensraum Wattenmeer ber das Kontextmen in die Schale der zu ber cksichtigenden hochwertigen Treffer Der Assistent wird dann bei seiner n chsten Recherche u a mit Suchbegriffen aus diesem Treffer suchen Die brigen Treffer werden ber das Kontextmen in die A
12. j 6 4 Die Begriffe Garnelen und Garnelenzucht w rden wie folgt bewertet t fid f Garnelen 14 0 4 7 0 Punkte und t fid f Garnelenzucht 10 0 10 0 Punkte Dieses Verfahren bevorzugt den Begriff Garnelenzucht 3ygl 10 Seite 68 und 5 Seite 78 ff 41 7 Systementwurf 7 1 bersicht Der interne Datenfluss und die Verarbeitungsschritte des zu entwickelnden Assistenten sind in der Abbildung 7 1 dargestellt Suchmaschine 1 Suchmaschine n Berechnung von Anfragen Trefferrecherche Berechnung von Deskriptoren Bereitstellung der Textinhalte LAssiDesktop Trefferschalen y Y Aufbereitung Aufbereitung Y Y Herkunftsansicht Clusteransicht ry ry Abbildung 7 1 Systementwurf fiir den Assistenten Ein Rechercheprozess des Assistenten beginnt mit der Bereitstellung der Textinhalte al ler LAssi Materialien und deren Dateianh nge auf dem aktuellen LAssi Desktop Au erdem werden die Textinhalte der hochwertigen zu beriicksichtigenden und der geringwertigen Tref fer aus den entsprechenden Schalen ben tigt Dazu m ssen die enthaltenen String Daten von spezifischen Formatangaben getrennt werden z B durch Filterung aller HTML Tags mitsamt ihren Attributen aus einer HTML Seite welche durch Yahoo gefunden worden ist Anschlie end werden aus den bereitgestellten Strings Deskriptoren Such und
13. lt extension gt lt plugin gt 109 D Sch lerfragebogen zur Bewertung der Assistentenleistung 110 D Sch lerfragebogen zur Bewertung der Assistentenleistung ss 111 E Abk rzungsverzeichnis WWW HTML XML PDF RTF HTTP MIME URL UML z B World Wide Web Hyper Text Markup Language Extensible Markup Language Portable Document Format Rich Text Format Hyper Text Transfer Protocol Multipurpose Internet Mail Extensions Uniform Resource Locator Unified Modeling Language zum Beispiel 112 Literaturverzeichnis 10 11 12 A Bolour Notes on the eclipse plug in architecture 2003 Verfiigbar unter http www eclipse org articles Article Plug in architecture plugin_architecture html S Brin and L Page The anatomy of a large scale hy pertextual web search engine 1998 Verf gbar unter http wx bsjh tcc edu tw t2003013 wiki images 8 8f Anatomy pdf R Ferber Information Retrieval dpunkt verlag GmbH 2003 Verf gbar unter http information retrieval de E Gamma R Helm R Johnson and J Vlissides Entwurfsmuster Deutsche bersetzung Addison Wesley Publishing Company 2004 O Gospodneti and E Hatcher Lucene in Action Manning Publications Co 2005 H Kaufmann and H Pape Clusteranalyse pages 437 536 Walter de Gryter und Co 1996 Erschienen in Ludwig Fahrmeir und Alfred Hamerle und Gerhard Tutz Hrsg Multivariate sta tistische Verfahren L Papula
14. 25 15 75 0 42 0 57 Produkt Durchgang i Anfrage ti gti hbt h preci fri Google 1 37 20 17 0 46 0 54 2 37 23 14 0 38 0 62 5 37 17 20 0 54 0 46 6 37 22 15 0 41 0 59 Mittel 37 20 5 16 5 0 44 0 55 C Integration einer Suchmaschine am Beispiel Yahoo An dieser Stelle soll kurz die Integration einer externen Suchmaschine in den Assistenten am Beispiel von Yahoo beschrieben werden Yahoo stellt zur Integration seiner Suchfunktion eine Java Bibliothek im Internet bereit Auf die Wiedergabe der Adapterklasse f r die grafische Repr sentation der Treffer und der Suchmaschine wird verzichtet Da die Adapterklasse ber einen Eclipse Erweiterungspunkt in das System eingebunden wird wird dieses Konzept zu Beginn kurz skizziert C 1 Eclipse Erweiterungspunkte Im Eclipse Kontext werden ganze Anwendungen oder einzelne Erweiterungen in sog Plugins gekapselt Ein Plugin ist eine Komponente welche eine Funktionalit t im Eclipse Kontext anbietet hnlich einem Java Package Ein Erweiterungspunkt ist im Prinzip eine von der Eclipse Plattform bereitgestellte Tabelle in der sich Plugins in einer Zeile eintragen k nnen Eine solche Tabelle wird als Registry bezeichnet Die Inhalte der Registry k nnen durch die eigene Anwendung von der Plattform abgerufen werden Um erweiterbar zu sein muss das eigene Plugin einen Erweiterungspunkt definieren Da die Eclipse Plattform f r jeden Erweiterungspunkt eine eigene Tabelle bere
15. Assistent bietet dir verschiedene Konfigurationsm glichkeiten Du ffnest den Konfigu rationsdialog ber den Eintrag Benutzervorgaben des Men s Fenster Die Optionen des Assistenten befinden sich dort in der Optionsgruppe Assistent Nachdem du die gew nsch ten Einstellungen vorgenommen hast musst du auf die Schaltfl che OK unten links im Op tionsdialog klicken Die Einstellungen werden dann gespeichert und das Fenster geschlossen Wenn du das Fenster verlassen m chtest ohne dass die ge nderten Einstellungen gespeichert werden musst du auf die Schaltfl che Abbrechen klicken 99 A 3 Bedienungsanleitung Optionsgruppe Assistent Du kannst hier direkt angeben wieviele Treffer der Assistent pro Suchdurchgang pro Such maschine recherchieren soll Au erdem ist es m glich anzugeben wieviele Treffer sich in der Sammelschale befinden sollen Wenn die hier angegebene Anzahl von Treffern erreicht ist dann ersetzt der Assistent ungelesene Treffer aus der Sammelschale willk rlich durch neue Erst wenn sich nur gelesene Treffer in der Sammelschale befinden bricht der Assistent seine Recherchen ab Er wird dir erst dann wieder Treffer liefern wenn du Platz in der Sammelscha le geschaffen hast Der Assistent wartet zwischen seinen Recherchen eine bestimmte Zeit Du kannst in diesem Optionsdialog einstellen wieviele Minuten das genau sein sollen Optionsgruppe Filter In der Optionsgruppe Fil
16. Cluster ansicht im praktischen Einsatz zum Garnelen Beispiel Herkunftsansicht Clusteransicht Agentenfortschritt b bgarnele 3 v garnelenzucht 4 amp Gr ne Zwerggarnele amp Arten Haltung und Zucht von Zwerggarnelen Haltung und Zucht von Zwerggarnelen z B Bienen Zebragar Garnelenaquarium b wattenmeer 5 Abbildung 8 10 Beispiel der Clusteransicht zum Garnelen Beispiel Bei der Implementierung tritt das Problem der Ladezeiten von Treffern beim Abruf ihrer Inhalte ber die Methode getContents auf Sowohl das Laden von dem LAssi USB Stick des Sch lers als auch aus dem WWW nimmt sp rbar Zeit in Anspruch auch bei kleinen Tref 77 8 3 Implementierung der Trefferansichten fermengen ca 10 bis 15 Treffer Wenn das Laden der Trefferinhalte und die Berechnung der Cluster im LAssi Betriebssystem Prozess bearbeitet wird dann reagiert die grafische Benut zeroberfl che w hrend dieser Zeit nicht auf Benutzereingaben Daher ist das Laden der Tref fer und die Berechnung der Treffercluster in einen eigenen Thread ausgelagert worden Die ser wird in der Klasse SemanticClusterView anonym instanziiert und berechnet die Cluster Nach Abschluss der Clusterberechnung wird der LAssi Prozess ber den Abschluss informiert und stellt die berechneten Cluster dar Um die ben tigte Zeit f r das Laden der Trefferinhalte zu senken werden diese einmalig geladen und mit den Treffer Metadaten ebenfalls
17. Filterbe griffe berechnet Dazu werden die Strings anhand der Leer und Satzzeichen in Listen von W rtern getrennt Diese W rter werden als Token bezeichnet Danach versucht der Assistent diese Listen u a durch Filtern von nichtssagenden W rtern z B bestimmte oder unbestimmte Artikel im Deutschen zu reduzieren Diese nichtssagenden W rter werden als Stoppw rter 42 7 2 Bereitstellung von LAssi Desktop und Schaleninhalten bezeichnet Abschlie end bewertet der Assistent mit den vorgestellten statistischen H ufig keitsans tzen die Token und selektiert aus den bewerteten Token Deskriptoren Aus den berechneten Deskriptoren generiert der Assistent im Folgenden die Anfragen Da zu werden alle Kombinationen aus Such und Filterbegriffen berechnet und absteigend nach Strenge geordnet Die erste berechnete Suchanfrage wird jetzt an die integrierten Suchma schinen gesendet und deren Treffer empfangen Ist die vom Sch ler gew nschte Trefferanzahl durch diese Anfrage nicht erzielt worden so wird die n chst schw chere Anfrage gesendet Aus den resultierenden Treffern wird die noch ben tigte Anzahl selektiert Dies geschieht so lange bis die definierte Trefferanzahl recherchiert worden ist oder keine weiteren Anfragen mehr vorhanden sind Jedes Trefferdokument soll dabei nur einziges Mal ber cksichtigt wer den Die erzielten Treffer werden jetzt in der Sammelschale gespeichert Nach Abschluss aller Recherchen erh lt der Sch ler ei
18. Filterbegriffe genutzt werden erbt die Schnittstelle Hit von der Schnittstelle IContent und gibt damit deren Implementie rung direkt vor Um die Herkunftsansicht zu berechnen muss von einem Treffer die Such maschine abgerufen werden k nnen die den Treffer gefunden hat Dies ist ber die Metho de getSearchService m glich Au erdem muss jeder Treffer einen aussagekr ftigen Titel ber die Methode getTitle bereitstellen welcher sowohl in der Herkunfts als auch in der Clusteransicht angezeigt werden kann Da die Treffer anhand ihres URL identifiziert werden sollen um die Anzahl von Doubletten zu vermindern muss der URL eines jeden Treffers ab rufbar sein Dies geschieht ber die Methode getURL geerbt von IContent ber die Methoden isRead und setRead kann der Gelesen Zustand eines Treffers abgerufen bzw gesetzt werden Dieser Zustand dient zur optischen Hervorhebung von bereits ge ffneten Treffern in den Trefferansichten Die gewichteten Inhalte eines Hit k nnen ber die geerbte Methode getWeightedStrings abgerufen werden 57 7 5 Interaktion mit integrierten Suchmaschinen 7 5 2 Kommunikation mit Suchmaschinen Offen geblieben ist bisher wer die Anfragen an die Suchmaschinen sendet und deren Treffer entgegennimmt Es gibt dazu prinzipiell zwei M glichkeiten entweder werden alle Suchma schinen nacheinander oder nebenl ufig befragt Die nebenl uf
19. Parameter units Nach jedem Arbeitsschritt inkrementiert der Suchagent die Anzahl der bereits bearbeiteten Arbeitsschritte des Monitors ber die Methode incWorke dUnits Die Anzahl der Arbeitsschritte eines Suchagenten entspricht der Anzahl der zu recherchierenden Treffer plus eins Die Anzahl der zu recherchierenden Treffer wird vom Sch ler festgelegt Der eine zus tzliche Schritt wird nur dazu ben tigt den Beginn der Arbeit 70 8 3 Implementierung der Trefferansichten durch den Suchagenten anzuzeigen Bei jeder Zustands nderung des Monitor Objektes ruft dieses die Methode monitorStateChanged seiner Beobachter auf Auf diese Weise wird das zum Monitor geh rende ProgressComposite Objekt ber die Zustands nderung infor miert kann den neuen Monitor Zustand z B die Anzahl erledigter Arbeitsschritte abrufen und sich neu zeichnen lt lt interface gt gt gt lAgentStatusListener statusListener AgentManager newRunStarted void AgentProgressView Abbildung 8 5 Beziehung zwischen AgentManager und AgentProgress View Aber wie erh lt die AgentProgressView die Information dass ein neuer Recherchedurch gang begonnen hat und die ProgressComposite Objekte der Suchagenten des vorherigen Durchgangs gel scht werden k nnen Hier wird erneut das Beobachter Muster angewendet wie in Abbildung 8 5 dargestellt Die Singleton Instanz des AgentManager nimm
20. Suchmaschinen Anbindungen das In tegrieren ihrer Trefferformate weil sie lediglich dann einen Konvertor bereitstellen m ssen wenn noch keiner f r ihr Trefferformat existiert Die Dienstleistung aller im System exis tierenden Konvertoren ist ber den zentralen Dienst DocumentReaderService komfortabel zugreifbar 8 2 Statusmonitoring der Suchagenten Der Sch ler soll ber den Fortschritt des Suchprozesses der Suchagenten informiert werden damit er bei umfangreichen Recherchen der Agenten nicht an einen Systemabsturz glaubt Die implementierte Fortschrittsanzeige von drei Suchagenten ist in der Abbildung 8 2 abgebildet Recherchiere in Google Abbrechen Recherchiere in Google Berechne Anfrage f r Google Recherchiere in LAssi Umgebung Recherchiere in LAssi Umgebung Fertig Recherchiere in Yahoo Recherchiere in Yahoo Fertig Abbildung 8 2 Fortschrittsanzeige der Suchagenten Zur Implementierung dieser Fortschrittsanzeige ist das Beobachter Entwurfsmuster nach Gamma et al verwendet worden Im Beobachter Muster sind zwei Rollen definiert die des Beobachters und die des beobachteten Subjektes Das Beobachter Objekt implementiert eine Beobachter Schnittstelle welche eine Methode zur Benachrichtigung bei einer Zustands nde rung des Subjektes vorgibt Es meldet sich ber eine Methode am Subjekt an und bergibt sich selbst als Parameter Das Subjekt speichert die Referenz auf den Beobachter ab und ruft di
21. UND amrum UND lebensraum wattenmeer UND NICHT rezept Bei der Zusammenstellung der Anfragen aus Deskriptoren und negierten Deskriptoren verfolgt der Assistent die Strategie die strengstm glichen Anfrage an einen Suchdienst zu stellen um die pr zisestm gliche Trefferausbeute zu erhalten Nun ist es aber nicht unwahr scheinlich dass der Sch ler eine h here Anzahl von Treffern w nscht als ein Suchdienst auf die strengstm gliche Anfrage liefert Insofern erscheint es sinnvoll solange Anfragen an die sen Suchdienst zu richten bis entweder die vom Sch ler gew nschte Anzahl von Treffern gesammelt worden ist oder keine weiteren Anfragen mehr m glich sind Also ist eine Liste von Anfragen zu berechnen deren Ordnungskriterium absteigend die Strenge der Anfragen darstellt Grunds tzlich gilt dass alle Anfragen in konjunktiver Normalform der Aussagenlogik zu stellen sind Alle Deskriptoren und negierten Deskriptoren werden mit dem logischen UND Operator verbunden Eine solche Anfrage fordert die Existenz aller Suchbegriffe in den Tref fern ein woraus sich eine pr zisere Trefferausbeute ergibt als aus einer Anfrage die nur mindestens einen Begriff in ihren Treffern verlangt Eine Anfrage A ist genau dann strenger als eine Anfrage B wenn 1 die Kardinalit t von A die Anzahl der enthaltenen Deskriptoren gr er ist als die Kardinalit t von B 2 bei gleicher Kardinalit t wenn die mittlere arithmetische Deskriptorbew
22. der Trefferansichten 2 2 22 nn 8 3 1 Grafische Darstellung von Suchmaschinen und Treffen 8 3 2 Implementierung der Herkunftsansicht 8 3 3 Implementierung der Clusteransicht 9 Systembewertung 9 1 Vorstellung von Qualit tsma en 2 22 nummer n 9 2 Bewertung anhand eines Fallbeispiels 2 2 2 2m nennen 9 3 Bewertung anhand eines Schuleinsatzes 2 2 2 nme 9 4 Funktionaler Vergleich mit einer Suchmaschine am Beispiel Google O S gt SR AAI a we in SO Red a moa a Eee ats ot ai 10 Abschlussbetrachtungen 10 1 Anregungen f r weitere Entwicklungen 2 2 22 nme 10 2 Zusammenfassung Fazit und Ausblick 2 2 2 2222 nenn A Benutzerhandbuch A l Ablaufbedingungen 0 nenn A 2 Programminstallation und start 2 2 Coon A 3 Bedienungsanleitung 2 2 0 2 00002 eee en A 3 1 ffnen des Assistentenfensters 2 0 0 eee eee A 3 2 Recherchen mit dem Assistenten 2 2 22 222mm A 3 3 Ansicht von Trefferschalen 2 2 2 on n nenn A 3 4 Arbeit mit Treffern und Steuern des Assistenten 2 22 2 A 3 5 Anzeige des Recherchefortschritts 2 2 2 2 222220 nen A 3 6 Konfiguration des Assistenten 2 2 CC moon AA Eehlermeldunsen sc wee dakar ea EI em A 5 Wiederanlaufbedingungen 2 2 22 2 Con B Protokolle der statistischen Untersuchungen 42 42 43 46 51 56 56 58 61 64 66 66 68 71 72 74 76 79
23. die Klassifikation von N Objekten I 1 Iy Jedes Objekt wird durch einen Merkmalsvektor x1 Xp mit p Merkma len repr sentiert Im konkreten Fall des Clustering auf Textbasis w rde jede Dimension des Vektors X also jedes Merkmal einen Begriff repr sentieren Der Wert der zugeh rigen Kom ponente des Vektors X enth lt dann eine H ufigkeitsbewertung f r den entsprechenden Begriff im zugeh rigen Textobjekt Die einzelnen Bewertungen sind als reelle Zahlen verh ltnisska liert da sie sowohl ber eine Ordnung als auch ber definierte Abst nde und einen festen Nullpunkt Begriff im Treffer nicht vorhanden verf gen Es ergibt sich folglich insgesamt eine Matrix X deren Spalten die einzelnen Begriffe deren Zeilen die zu klassifizierenden Treffer und deren Zellen die Bewertungen des jeweiligen Begriffs in einem Treffer repr sen tieren vel 6 Seite 437 2 vgl 6 Seite 438 ff 32 5 2 hnlichkeits und Distanzma e Ein Beispiel f r eine konkrete Auspr gung dieser Merkmalsmatrix vor dem Hintergrund ing X he p a des Garnelen Beispiels zeigt die Abbildung Nr 5 1 garnele garnelenzucht wattenmeer nordsee aquaristik Treffer 1 1 2 12 1 1 Treffer 2 3 0 0 0 5 Treffer 3 7 1 9 19 6 Abbildung 5 1 Auszug aus einer Merkmalsmatrix f r das Garnelen Beispiel 5 2 hnlichkeits und Distanzma e Alle Verfahren der Clusteranalyse nutz
24. in einm Fazit zusammengefasst und interpretiert 9 1 Vorstellung von Qualit tsma en Nach dem Benutzungsmodell definiert sich die Qualit t der Leistung des Assistenten durch die Qualit t der von ihm recherchierten Treffer Das Benutzungsmodell sieht eine explizite Bewertung der recherchierten Treffer durch den Sch ler vor Auf diese Weise soll die Tref ferqualit t nachfolgender Suchdurchl ufe der Suchagenten sukzessive verbessert werden Es ist anzunehmen dass die Trefferqualit t eines Suchdurchlaufes durch die Bewertungen der Treffer als hochwertig zu ber cksichtigen hochwertig und geringwertig repr sentiert wird Insofern ist die Fehlerrate fr des Agenten f r den i ten Suchdurchgang durch den An teil der geringwertigen Treffer dieses Suchdurchgangs gt an der Gesamtzahl der Treffer des Suchdurchgangs t definiert fra 9 1 ti Der mittlere Fehler ber n Suchdurchl ufe ergibt sich aus dem geometrischen Mittel ff en TT 9 2 t i l 79 9 2 Bewertung anhand eines Fallbeispiels Neben der Fehlerrate soll auch der Anteil kontextbezogener Treffer ausgewertet werden Dies misst die Retrieval Kennzahl Precision welche sich definiert durch hbt h L 9 3 preci hbt liefere dabei die Anzahl der als hochwertig zu ber cksichtigen eingestuften und h die Anzahl der hochwertigen Treffer in der Ablageschale Die mittlere Precision ergibt sich n h
25. inter agieren Der Sch ler stellt eine Suchanfrage an das System und erh lt eine Trefferausgabe Als einzige weitere Interaktionm glichkeit mit der Suchmaschine bleibt dem Sch ler nur die Formulierung einer neuen Suchanfrage Der Assistent unterst tzt den Sch ler hingegen im ge samten Suchprozess Nach Ausgabe einer Liste von wenigen Treffern kann der Sch ler durch die Bewertung der Treffer den Assistenten steuern und die Qualit t der zuk nftigen Tref vel 12 Seite 79 9 2 Bewertung anhand eines Fallbeispiels fer somit erh hen Dies ist weder mit Google noch mit Yahoo m glich Es kann also nicht die Trefferausbeute einer einzigen Suchanfrage an Google oder Yahoo zur Berechnung der Kennzahlen herangezogen werden Deshalb werden mehrere Anfragen an die Suchmaschinen gestellt und die berechneten Werte der Kennzahlen gemittelt Diese Art der Bewertung ist nat rlich sehr subjektiv Schlie lich m ssen Suchbegriffe er dacht und Treffer als hoch oder geringwertig bewertet werden Beide Faktoren sind entschei dent vom Vorwissen des recherchierenden Sch lers abh ngig Er verwendet die Suchbegriffe die er mit der Aufgabenstellung assoziiert Ein Treffer ist f r ihn nur dann hochwertig wenn er neue f r die Aufgabenstellung relevante Informationen enth lt Um den Vergleich trotz dem realistisch zu gestalten werden diejenigen Anfragen verwendet mit denen die Sch ler im Biologie Unterricht tats chlich ihre Recherchen
26. k nnen 85 9 4 Funktionaler Vergleich mit einer Suchmaschine am Beispiel Google 9 4 Funktionaler Vergleich mit einer Suchmaschine am Beispiel Google Dieses Unterkapitel vergleicht den implementierten Assistenten direkt mit der Suchmaschine Google Der Assistent nutzt weiterhin die Suchmaschine Yahoo Der Vergleich basiert eben falls auf dem Garnelen Beispiel Die Sch ler der Modellklasse begannen ihre Recherchen mehrheitlich mit der Anfrage Garnelen bei Google Auf diese Anfrage lieferte Google ihnen unter den ersten zehn nur vier n tzliche Treffer einen Wikipedia Artikel mit dem Titel Garnele und die Homepa ges mehrerer Aquaristikliebhaber mit Haltungstipps f r S sswassergarnelen und Krebse Die restlichen Treffer umfassten Links zu Aquaristikforen zu Internetshops f r Zierfische und zu Rezeptsammlungen Auf der zweiten Ergebnisseite von Google fanden sich drei Links zu Ho mepages von Garnelenz chtern welche ebenfalls Haltungstipps beinhalteten und zwei Links zu einer Artendatenbank mit Steckbriefen zu verschiedenen Garnelenarten Zusammenfas send l sst sich sagen dass unter den ersten 20 Treffern neun grunds tzlich f r die Sch ler n tzlich gewesen sind Lediglich zwei Treffer Wikipedia Artikel enthielten Informationen z B zur einheimischen Nordseegarnele mit denen die Sch ler weitere Recherchen abseits der Aquaristik starten k nnten Web Bilder Groups News Froogle Mehr Google Such
27. ler von einer wesentlich h heren Qua lit t als z B ein Treffer von Google da dieses Wissen von ihm selbst aufbereitet und in einen bekannten Gesamtkontext die andere Aufgabenstellung eingeordnet worden ist Zur Umsetzung dieses Ansatzes m sste die LAssi Volltextsuche ber einen Adapter in den Assistenten integriert werden Auf diese Weise k nnte der Assistent Treffer auf anderen LAssi Desktops recherchieren und dem Sch ler diese zusammen mit den Treffern von Google und Yahoo in Clustern darstellen Diese Darstellung hat f r den Sch ler den Vorteil dass sein eigenes relevantes Wissen in Beziehung zu dem externen im WWW verf gbaren Wissen ge setzt wird So kann er das externe Wissen schneller klassifizieren und auch leichter verstehen Da in der Clusterdarstellung die Treffer aller integrierten Suchdienste gemeinsam in Cluster einsortiert werden ist diese Ansicht zur schnellen Erkennung aller Treffer der LAssi Suche ungeeignet Hierbei k nnte eine Herkunftsansicht n tzlich sein die Treffer nicht in Abh ngig keit zu deren Inhalt sondern zur Suchmaschine clustert die den Treffer erzielt hat So ist es dem Sch ler m glich nur Treffer bestimmter Suchmaschinen anzuzeigen 4 2 3 Entwicklung eines Benutzungsmodells Da der Assistent die Berechnung von Suchanfragen ihre bermittlung an Suchmaschinen und die Entgegennahme deren Treffer vollst ndig automatisiert bestehen die Interaktionsm glich keiten des Sch lers mit dem Assi
28. persistiert Offen ist in der aktuellen Implementierung ob und wie die Trefferinhalte mit den tats chli chen Inhalten der referenzierten Dokumente synchronisiert werden z B mit Web Seiten Au erdem ist noch nicht definiert f r welchen Zeitraum die Trefferinhalte vorgehalten werden Die Inhalte der Treffer kosten wervollen Speicherplatz auf dem LAssi USB Stick und bringen als Nutzen einen Geschwindigkeitsvorteil bei der Arbeit mit der Clusteransicht Es muss hier gepr ft werden in welcher Intensit t die Sch ler tats chlich im Unterricht mit der Clusteran sicht arbeiten und ob der Speicherplatz den Geschwindigkeitsvorteil wert ist 78 9 Systembewertung Im Rahmen dieses Kapitels soll das entwickelte Konzept einer prozessorientierten Recher cheunterst tzung f r Sch ler bewertet werden Diese Bewertung soll auf Basis des implemen tierten Assistenten geschehen Dazu werden zuerst Kennzahlen vorgestellt anhand derer die Qualit t der Trefferausbeute des Assistenten mit der von den Suchmaschinen Google und Ya hoo verglichen werden kann Um einen etwas umfassenderen Eindruck der Systemleistung zu gewinnen ist eine Vorabversion des Assistenten an Sch ler der Modellklasse in Hamburg Haburg ausgeliefert worden Die R ckmeldungen dieser Sch ler werden im dritten Unterka pitel dargestellt Anschlie end erfolgt ein funktionaler Vergleich mit einer Suchmaschine am Beispiel von Google Die Ergebnisse der Bewertungen werden abschlie end
29. tzung des Systems muss auf jede Suchmaschine ausdehnbar sein Daher sollte prinzipiell jede Suchmaschine in das System integriert werden k nnen 19 4 2 Entwicklung eines L sungsansatzes Technische Anforderungen e Der Betrieb des Systems darf aus Kostengr nden keine Anpassungen der IT Infrastruktur einer Schule in Form des Erwerbs zus tzlicher Hard und Software erfordern e Das System muss in jeder technischen Umgebung lauff hig sein in der der Betrieb der LAssi Plattform m glich ist 4 2 Entwicklung eines L sungsansatzes 4 2 1 Abbildung einer Aufgabenstellung in der LAssi Plattform Die Unterst tzung der Sch ler bei Recherchen soll bezogen auf deren aktuelle Aufgabe erfol gen Daher muss gekl rt werden wie Aufgabenstellungen in der LAssi Plattform abgebildet werden Die LAssi Plattform ist im Einleitungskapitel als individuelle Lernumgebung vorge stellt worden Konkret hei t das dass jeder Sch ler sein eigenes LAssi System mitsamt einer individuellen Zusammenstellung von digitalen Lernwerkzeugen besitzt welches auf einem USB Stick abgespeichert ist Die Lernwerkzeuge werden auf einem speziellen Server z B im Netzwerk der Schule oder im Internet bereitgestellt und k nnen von den Sch lern nach einem Plugin Konzept in ihren LAssi hinzugesteckt bzw entfernt werden Mit diesem Werkzeugkasten bearbeitet der Sch ler Aufgabenstellungen aus dem Unterricht Erzeugnis se dieser verschiedenen Ler
30. 0008 Benachrichtigung des Assistenten ber abgeschlossene Recherche Hauptfenster des Assistenten nach abgeschlossener Recherche Clusteransicht des Assistenten nach abgeschlossener Recherche Fortschrittanzeigen des Assistenten 2 CC nn nun Fehlermeldung des Assistenten 2 00002000000 1 Vorwort Ich m chte mich ganz herzlich bei Herrn Prof Dr Sebastian Iwanowski und bei Herrn Dr Axel Schmolitzky f r die Betreuung dieser Arbeit und die zahlreichen Anregungen bedanken Ebenso gilt mein Dank Herrn Michael T pel und Herrn Michael Vallendor die mir die M glichkeit gegeben haben diese Diplomarbeit im einzigartigen Umfeld des LAssi Projektes zu entwickeln Beide haben mich in vielen anregenden Diskussionen bei der Anfertigung dieser Arbeit sehr unterst tzt Die zahlreichen Diskussionen mit meinen Entwickler Kollegen Till Aust und Christian Sp h haben mir viele wichtige Anregungen sowohl f r die konzeptionelle als auch f r die software technische Umsetzung meiner Gedanken gegeben Auch ihnen schulde ich daf r gro en Dank Ohne die Unterst tzung von Herrn Olaf Zeiske und seinen Sch lern insbesondere Vincent Fortuin Serhat Etd ger Mevl t Vurmaz Kjetil Fischer und Sinan Song l w ren die ersten Praxiserfahrungen mit meiner Software nicht m glich gewesen Auf diesem Wege m chte ich Herrn Zeiske und seinen Sch lern besonders danken Ganz besonderer Dank gilt meiner Freundin Sandra Dammann
31. 20146 Hamburg Musicals Veranstaltungen Tickets Theater Abbildung 3 3 Vorschl ge f r alternative Suchbegriffe von Web de SmartSearch 3 2 2 Benutzereinfluss auf die Trefferanordnung Das zweite Kernproblem der Sch ler besteht in der zeitlich aufwendigen Auswertung der Tref ferliste Die Position eines Treffers in dieser Liste wird als Rang bezeichnet und repr sentiert die Relevanz des Treffers zur Suchanfrage Ein Kernproblem der Suchmaschinen ist neben dem Entdecken eines Treffers die Bestimmung dessen Ranges in der Ergebnisliste Die Suchmaschine Google z hlt die Anzahl der Referenzen aller anderen indexierten Do kumente auf ein bestimmtes Dokument z B in Form von Links in HTML Dokumenten oder Zitaten in wissenschaftlichen Ausarbeitungen Je h her die Anzahl der Referenzen auf dieses bestimmte Dokument ist desto h her ist sein Rang in einer Trefferliste von Google Die Suchmaschine Yahoo hat einen interessanten Filteransatz in Form des Produktes Mind Set entwickelt welches sich zur Zeit in einer Testphase befindet MindSet gibt dem Benutzer die M glichkeit den groben Hintergrund seiner Suchanfrage einzugeben und damit die R nge der Treffer zu beeinflussen Die Benutzerschnittstelle von Mindset entspricht der einer klassischen Suchmaschine Erst nach der Formulierung einer Anfrage und der Pr sentation der Treffer in Listenform erlaubt MindSet die Beeinflussung der Trefferr nge durch einen Schieberegler mit z
32. 79 80 84 86 89 91 91 93 94 94 94 94 95 96 96 98 99 99 101 101 102 Inhaltsverzeichnis C Integration einer Suchmaschine am Beispiel Yahoo 104 C 1 Eclipse Erweiterungspunkte 2 Common 104 C 2 Adapterklasse YahooService ooa 105 C 3 Adapterklasse YahooHit 00000000004 107 C 4 XSD Spezifikation f r Eclipse Erweiterungspunkt 108 D Sch lerfragebogen zur Bewertung der Assistentenleistung 110 E Abk rzungsverzeichnis 112 Literaturverzeichnis 113 Eidesstattliche Erkl rung 114 Tabellenverzeichnis 7 1 Beispielhafte Tokenstatistik f r zwei Karteikarten KK 7 2 Beispielhafte Kandidatenliste auf Basis der TF Funktion 7 3 Anfragen aus Such und Filterbegriffen zum Garnelen Beispiel Abbildungsverzeichnis 3 1 Rechtschreibpr fung der Suchmaschine Google 3 2 Vervollst ndigung einer Suchanfrage durch Google Suggest 3 3 Vorschl ge f r alternative Suchbegriffe von Web de SmartSearch 3 4 Benutzeroberflache von Yahoo Mindset 2 22 nun 3 5 Grafische Darstellung der Treffercluster von Grokker 4 1 Modell eines unterst tzten Rechercheprozesses f r Sch ler 4 2 Entwurf der Herkunftsansicht mit Treffen 2 222222 4 3 Entwurf der Clusteransicht mit Treffern zur Anfrage Garnele 4 4 Entwurf der Herkunftsansicht mit Treffern zum Thema Wattenmeer 5 1 Auszug aus einer Mer
33. B als Suchbegriffe zu verwenden Durch die Nutzung dieses Verfahrens kann auf die Implementierung einer Sprachidentifkation f r Texte verzichtet werden Weil das Verfahren gute Ergebnisse erzielt erscheint die n Gram Analyse das am besten f r den Prototypen des Assistenten geeignete Verfahren zur Tokenlistenreduktion zu sein Neben der Tokenlistenreduktion soll der Optimizer die Tokenlisten zu einer Relation zu sammenf hren Diese Relation wird dann den statistischen Bewertungsverfahren f r Token bergeben Einem Token soll hier eine Liste von Paaren aus seinen H ufigkeiten und den Gewichtungen seiner Positionen im Dokument zuordnet werden Zus tzlich wird zu jedem Token noch die Anzahl der Dokumente gespeichert in denen es enthalten ist Ein Beispiel f r diese Relation ist in der Tabelle 7 1 auf Basis des vorherigen Karteikartenbeispiels und einer zus tzlichen Karteikarte mit dem Titel Wattenmeer ohne weitere Texteintr ge angegeben F r diese Relation sind nur atomare Token herangezogen worden Es soll f r den Sch ler aber m glich sein eine maximale Anzahl von Token in einer Tokenkombination zu definie ren Die Statistik enth lt dann auch Tokenkombinationen mit dieser maximalen L nge ber die Kombination von Token werden strengere Anfragen erreicht denn in den Treffern m ssen die Token exakt aufeinanderfolgend in der Reihenfolge enthalten sein die durch die Token kombination vorgegeben wird Es wird angenommen dass die g
34. FACHHOCHSCHULE WEDEL FACHBEREICH WIRTSCHAFTSINFORMATIK Diplomarbeit Entwicklung und Implementierung einer Rechercheunterst tzung in der Lernumgebung LAssi Eingereicht von Jan Christian Krause Harburger Strasse 10 21614 Buxtehude Tel 04161 600 820 Abgegeben am 22 Februar 2007 Erarbeitet im 7 Semester Referent Betreuer Prof Dr Sebastian Iwanowski Dr Axel Schmolitzky Fachhochschule Wedel Universitat Hamburg FeldstraBe 143 Fachbereich Informatik 22880 Wedel AB Softwaretechnik Tel 04103 8048 63 Vogt K lln Strasse 30 22527 Hamburg Tel 040 42883 2302 F r Sandra Inhaltsverzeichnis Tabellenverzeichnis Abbildungsverzeichnis 1 Vorwort 2 Einf hrung 2 1 Motivation essi 2 ra aa ana kan reed re a od 3 Analyse der Rechercheunterst tzung von Sch lern 3 1 Sch lerprobleme bei Recherchen im WWW 3 2 L sungsans tze von Suchmaschinen 2 2 2 2 Cm nn nennen 3 2 1 Vorschlagen alternativer Anfragen 2 2 22 Cu 3 2 2 Benutzereinfluss auf die Trefferanordnung 3 2 3 Benutzereinfluss auf die Trefferdarstellung 3 3 RAZA A ci Dhaene lod Mie a sete he ok Sate Oh Se Bt eek Ea Taas 4 Skizzierung des zu entwickelnden Systems 4 1 Anforderungsdefinition 2 00 2 00 0000 4 2 Entwicklung eines L sungsansatzes 2 Cm nme 4 2 1 Abbildung einer Aufgabenstellung in der LAssi Plattform 4 2 2 Herleitung des L sungsansatzes
35. Filterbegriffen und zur Benennung der Cluster einer Schale f r die Clusteran sicht Au erdem werden auf diese Weise die Spaltenbezeichnungen der Merkmalsmatrix X bestimmt welche zur Berechnung von Clustern aus den Inhalten von Trefferschalen notwen dig ist Kandidaten Dokumente 1 garnele 2 wattenmeeres 3 r uber F 4 beutetier Tokenizer gt Optimizer Rator schiusselart 6 kologisch 7 gef ge 8 nutzen 9 sommer Abbildung 7 5 Verarbeitungskette zur Generierung von Kandidaten aus Zeichenketten Die Abbildung 7 5 zeigt eine schematische Verarbeitungskette welche aus den bereitge stellten Zeichenketten eine Liste von Deskriptorkandidaten generiert Dazu werden die bereit gestellten Zeichenketten mitsamt ihrer Gewichtung dem Tokenizer als Parameter bergeben Der Tokenizer hat nun die Aufgabe die Zeichenketten von Satz und Steuerzeichen sowie Klammern etc zu bereinigen Dazu ersetzt er all diese Zeichen durch das Leerzeichen da die ses Zeichen blicherweise als Trennzeichen zwischen W rtern verwendet wird Anschlie end wird die Zeichenkette in eine einheitliche Schreibweise nur Gross oder Kleinbuchstaben konvertiert und anhand des Leerzeichens in gewichtete Listen von enthaltenen W rtern To ken gesplittet Eine Liste gilt immer f r einen Gewichtungsraum Die Abbildung 7 6 ver anschaulicht diesen Prozess anhand einer Karteikarte vom LAssi Desktop Der Titel eine
36. Garnelen Krebse Aquaristik im Harz www ebay de infos Uber Garnelen Krebse Wirbellose und Aquaristik Haltung und Zucht von Caridina cf cantonensis Crystal Red und Cambarellus patzcuarensis sp Garnelen Paradies www aquariumharz de 31k Im Cache Ahniict Ihr Ansprechpartner f r S wasser Garnelen und Zwerggamelen www garnelen paradles de Interaquaristik de Shop Garnelen Zwerggarnelen sind eine Bereciherung f r nahezu jedes Gesellschaftsaquarium shopsoftware Gamalan Abbildung 9 3 Treffer von Google zur Anfrage Garnelen Welche M glichkeiten haben die Sch ler nun um ihre Trefferausbeute zu verbessern Goo gle bietet den Sch lern ber die grafische Benutzeroberfl che keine M glichkeit die Re zeptsammlungen und Aquaristikforen bzw die Haltungstipps zu filtern Es existiert zwar ein Link hnliche Seiten der direkt unter jedem Treffer angezeigt wird aber auch dieser hilft den Sch lern wenig Zu dem Wikipedia Artikel also dem besten gelieferten Treffer klassifi ziert Google elf andere Seiten als hnlich Unter diesen befinden sich f nf W rterbuchseiten 86 9 4 Funktionaler Vergleich mit einer Suchmaschine am Beispiel Google welche Synonyme oder Reime zu einem Begriff finden Ansonsten wird ein Link zu einem Wikipedia Spendenaufruf und einer zur Publikationslizenz GNU Free Documentation Licen se angezeigt Unter den restlichen vieren befindet sich lediglich ein einziger neuer Treff
37. HitService singletonInstance HitService HitService HitService lt lt static gt gt getInstance HitService addHit hit Hit basin HitBasin void deleteHit hit Hit basin HitBasin void moveHit hit Hit oldBasin HitBasin newBasin HitBasin void markHit hit Hit read boolean void addUrl url String void getActiveBasin HitBasin setActiveBasin basin HitBasin void setHitBasinSize size int basin HitBasin void taddHitServiceChangeListener listener IHitServiceChangelistener void removeHitServiceChangeListener listener IHitServiceChangeListener void getHitsOfBasin basin HitBasin Set lt Hit gt E 1 neutral lt lt Interface gt gt lt lt interface gt gt IContent Hit L pe aie fe tes es eat dae i I I YahooHit LassiSearchHit GoogleHit Abbildung 7 15 UML Diagramm der Klasse HitService und ihres Kontextes useful unuseful 62 7 5 Interaktion mit integrierten Suchmaschinen Die vier Trefferschalen werden wie folgt durch vier Mengen von Hit Objekten repr sentiert e Hochwertige und zu ber cksichtigende Treffer usefull e Hochwertige Treffer Ablageschale depot e Neutrale Treffer Sammelschale neutral e Geringwertige Treffer Abfallschale unuseful Die Klassen von Objekten die ber Ver nderungen an den Trefferschalen informiert wer den sollen m ssen die Schnittstelle HitServiceChangeListener im
38. Implementierung des Verfahrens dass das Verfahren auch leere Cluster zur ckliefern kann F r den konkreten Einsatz im Rahmen des Assistentensystems eignen sich nur Verfahren die disjunkte Cluster erzeugen also jeden Treffer in genau einen Cluster einteilen Eine un scharfe Klassifikation also die Einordnung eines Treffers in mehrere Cluster ist nicht betrach tet worden da dies h chstwahrscheinlich zur Un bersichtlichkeit der Treffermenge f hren wird Hierarchische Clustering Verfahren wurden ebenfalls nicht betrachtet weil diese mit quadratischer Laufzeitkomplexit t arbeiten Mit dem k Means Verfahren k nnen Cluster von Treffern auf Basis deren Textinhalte be rechnet werden Die Abbildung 5 5 zeigt diesen Prozess anhand des Garnelen Beispiels Die aus den Treffern der Trefferschale berechneten Cluster werden durch die Clusteransicht des Assistenten dargestellt Bevor die Cluster dort angezeigt werden wird zus tzlich noch eine Bezeichnung Label f r die Cluster berechnet ye www wikipedia de pee Z www aquari enclub de N Anww aquarienclub de e www garnelenforum de www fotonatur de www garnele online de www garnelenforum de e www schutzstation wattenmeer de k Means Verfahren e www hausarbeiten de www schutzstation wattenmeer de www wikipedia de www garnele online de www uw fotoforum de www fotonatur de Fa Saas Trefferschale Cluster in der Trefferschale www uw fotoforum de
39. Sie hat mich w hrend mei nes gesamten Studiums selbstlos unterst tzt und mir den R cken freigehalten Ohne sie w re diese Diplomarbeit niemals entstanden Ich danke au erdem meinem Vater Jan Peter Krause der mir mein Studium mit erm glicht hat F r die kritische Durchsicht meines Manuskriptes richte ich meinen Dank an Max Weichert Florian Hauser und Fabian Runge Buxtehude im Februar 2007 Jan Christian Krause 2 Einf hrung 2 1 Motivation In den modernen Formen des Schulunterrichtes werden die Sch lerinnen und Sch ler in zu nehmenden Ma e mit der Aufgabe betraut sich selbstst ndig in ein neues Wissensgebiet ein zuarbeiten Sie sollen dadurch die F higkeit zum eigenverantwortlichen und selbstorganisier ten Lernen erlangen Dies wird als eine wichtige Kernkompetenz zur erfolgreichen Teilnahme und habe an der Wissensgesellschaft angesehen Das erworbene Wissen soll anschlie end zielorientiert aufbereitet werden z B f r einen Vortrag vor der Klasse Die Lehrerin oder der Lehrer tritt in diesen sch lerzentrierten Unterrichtsformen st rker als motivierend sowie begleitend und weniger als wissensvermittelnd in Erscheinung Das Projekt LAssi Learner s Assistant oder Lern Assistent ist aus einer Public Private Partnership zwischen der Freien und Hansestadt Hamburg und der IBM Deutschland GmbH hervorgegangen Es verfolgt die Zielsetzung eine indivduelle Lernumgebung zur Unterst tzung von Wissensarbeit zu
40. Suchmaschine Goo gle in wenigen F llen das alternative Produkt Yahoo Die Sch ler begr nden ihre Pr ferenzen f r die Recherche im WWW mit den vielf lti gen durchsuchbaren Formaten Sie k nnen mit Google und Yahoo sowohl auf Webseiten als auch in Zeitungsartikeln Bildern Videos oder Landkarten recherchieren Au erdem gilt nach Auffassung der Sch ler vor allem f r Google dass eine gute Anfrage in der Regel auch gut brauchbare Ergebnisse liefert Die Sch ler haben die Beobachtung gemacht dass sich ei ne gute Anfrage meistens durch mehrere enthaltene Suchbegriffe auszeichnet Zus tzlich erg nzten sie dass die Auswahl der Suchbegriffe eine wichtige Rolle spiele 12 3 2 L sungsans tze von Suchmaschinen Die Gespr che ergaben aber auch dass f r die Befragten regelm ig ein hoher Zeitaufwand n tig ist um alle gew nschten Informationen zu finden Im Prinzip gibt es f r die Sch ler bei Recherchen im WWW zwei H rden e Schwierigkeiten bei der Formulierung von Suchanfragen Alle Sch ler erkl rten dass es ihnen sehr schwer falle und viel bung erfordere gute Suchbegriffe zur Formulierung von Suchanfragen zu finden Desweiteren ist nur vier Sch lern bekannt gewesen dass zur Formulierung von Suchanfragen die aussagenlogi schen Operatoren UND ODER und NICHT verwendet werden Der Operator NICHT mit welchem z B unbrauchbare Treffer aus den Ergebnissen gefiltert werden k nnen war g nzlich unbek
41. Suchmaschinen Anzahl der zu liefernden Treffer wird vom Sch ler spezifiziert Daher ist der Wert von max HitNumber bei der ersten Suchanfrage gleich der Spezifikation des Sch lers Sollte die erste Anfrage weniger Treffer liefern als der Sch ler w nscht so wird maxHitNumber in den folgenden Anfragen jeweils die Anzahl der fehlenden Treffer zugewiesen Vor jedem Aufruf von executeQuery wird die Methode isAvailable ausgef hrt welche testet ob mit der Suchmaschine kommuniziert werden kann Dies ist notwendig um die Erreichbarkeit ent fernter Suchmaschinen zu berpr fen und im Negativfall eine Fehlermeldung zu erzeugen Die definierte Schnittstelle SearchService muss von den Adapterklassen der Suchmaschi nen z B YahooService oder LassiSearchService implementiert werden lt lt interface gt gt Hit getSearchService SearchService lt lt interface gt gt getTitle String IContent setRead read boolean void isRead boolean Tr I eal l 1 YahooHit LassiSearchHit GoogleHit Abbildung 7 11 UML Diagramm der Klasse Hit Die Treffer welche die Methode executeQuery der Schnittstelle SearchService lie fert werden durch Implementierungen der Schnittstelle Hit abgebildet Die UML Notation eines Hit zeigt die Abbildung 7 11 Da sowohl hochwertige zu ber cksichtigende als auch geringwertige Treffer zur Berechnung neuer Such und
42. Symbol Datei Fenster Hilfe ug E amp Standardansicht Abbildung A 1 Schaltfl che zum ffnen des Hauptfensters Das Hauptfenster ist in der Abbildung A 2 dargestellt Alles was du mit dem Assistenten machen kannst ist ber dieses Fenster m glich ber die Schaltfl che mit dem gr nen Pfeil symbol kannst du deinen Assistenten ein und ausschalten Du kennst das Symbol sicher von deinem CD oder MP3 Player Ob dein Assistent ein oder ausgeschaltet ist siehst du in der rot markierten Statuszeile Sobald du deinen Assistenten eingeschaltet hast beginnt er mit seiner ersten Recherche Assistenten Management X Aktuelle Trefferschale Sammelschale v Herkunftsansicht Clusteransicht Agentenfortschritt Aktivieren und Deaktivieren des Assistenten Statuszeile des Assistenten Abbildung A 2 Hauptfenster des Assistenten Sicher interessiert dich jetzt wie du den Assistenten steuern kannst Woher soll er auch wissen in welche inhaltliche Richtung deiner Aufgabenstellung er zu recherchieren hat 95 A 3 Bedienungsanleitung A 3 2 Recherchen mit dem Assistenten Der Assistent stellt dir f r jede Aufgabenstellung also f r jeden LAssi Desktop genau vier Schalen bereit In diese Schalen kannst du die Treffer des Assistenten einsortieren Der As sistent w hlt dann aus bestimmten Steuerschalen genau wie vom aktuellen LAssi Desktop Begriffe aus mit denen er sucht Das ist schon alles U
43. TF 8 gt 6 lt Schema file written by PDE gt so lt schema targetNamespace org lassitools assistantservice gt lt annotation gt n lt appInfo gt n lt meta schema plugin org lassitools assistantservice B id searchServices name searchServices gt lt appInfo gt 3 lt documentation gt Via this Extensionpoint it is possible to add 1 further search engines to the LAssi Searchassistant 3 lt documentation gt lt annotation gt so lt element name extension gt s lt complexType gt 2 lt sequence gt lt element ref searchService gt lt sequence gt 3 lt attribute name point type string use required gt s lt attribute name id type string gt s lt attribute name name type string gt ss lt annotation gt 87 lt appInfo gt SQ RB 88 lt meta attribute translatable true gt 89 lt appInfo gt 90 lt annotation gt 91 lt attribute gt 2 lt complexType gt 3 lt element gt o lt element name searchService gt ss lt annotation gt s lt appInfo gt 97 lt meta element labelAttribute name gt s lt appInfo gt 9 lt annotation gt 10 lt complexType gt ii lt attribute name id type string use required gt 108 102 103 104 105 106 107 108 109 120 121 122 123 124 125 126 127 128 129 130 131 C 4 XSD Spez
44. Technologien implemementiert werden k nnen ist im Ent wurf eine Schnittstelle IAgent vorgesehen welche die konkrete Agententechnologie lo 59 7 5 Interaktion mit integrierten Suchmaschinen AgentManager singletonInstance AgentManager AgentManager AgentManager activeAgents lt lt static gt gt getInstance AgentManager lt lt interface gt gt addSearchService service SearchService void lAgent removeSearchService service SearchService void startAgent void addResultListener listener IResultListener void stopAgent void lt lt interface gt gt agFactory lAgentFactory stop void agentFinished agent IAgent void IN ConcreteAgentFactory AgentImplementation removeResultListener listener IResultListener void start void setAgentFactory factory IAgentFactory void searchServices lt lt interface gt gt SearchService 1 GoogleService LassiSearchService Abbildung 7 14 UML Diagramm der Klasse AgentManager und ihres Kontextes resultListener lt lt interface gt gt IResultListener searchFinished void I D se an den AgentManager koppelt und damit austauschbar macht Im UML Diagramm ist die Suchagentenklasse allgemein als AgentImplementation angegeben Jedes Objekt dieser Klasse besitzt eine Referenz auf eine vom AgentManager zu
45. al vor dass du dich im Biologie Unterricht mit dem Thema Garnelen aus einander setzen musst Du sollst beispielsweise einen Vortrag zu einer Garnelenart deiner Wahl vor der Klasse halten Zu dieser Aufgabenstellung legst du einen LAssi Desktop mit der Bezeichnung Die Garnele an Dein Assistent beginnt sofort mit seiner ersten Recherche So bald er seine Recherchen abgeschlossen hat informiert er dich ber eine kleine Sprechblase ber der angezeigten Uhr deines Betriebssystems siehe Abbildung A 3 Im Hauptfenster deines Assistenten ist standardm ig die Sammelschale ge ffnet Oben rechts im Hauptfenster siehst du ein Men welches sich nach nach einem Klick mit der linken Maustaste auf den Pfeil aufklappt Du erh ltst hier eine bersicht ber alle Trefferschalen aus der du diejenige ausw hlen kannst die du ansehen m chtest siehe Abbildung A 4 96 A 3 Bedienungsanleitung Neue Treffer gefunden Dein LAssi Assistent hat neue Treffer gefunden Schau doch mal nach 9 42 Abbildung A 3 Benachrichtigung des Assistenten ber abgeschlossene Recherche Anzeige und Wechsel der aktuell Trefferansichten angezeigten Trefferschale Assistenten Management x ie Aktuelle Trefferschalef Sammelschale v Herkunftsansicht Clusteransicht v LAl ssi Umgebung 1 v amp Meerestiere in der Nahrungskette Die Garnele v rYahoo 12 Arten Haltung und Zucht von Zwerggarnelen Agentenfort
46. als Label f r das Cluster genutzt wenn kein anderer Cluster so benannt worden ist Ansonsten wird der n chste Deskriptor verwendet Als Datenstruktur f r Treffercluster werden Instanzen der Klasse HitCluster verwendet Diese Klasse erwartet im Konstruktor die Parameter clusterLabel und clusteredHits Als Clusterlabel wird der von der DescriptorFactory berechnete Deskriptor verwendet Als Wert des Parameters cluste redHits dient die aus der URL Menge erzeugte Hit Menge Abschlie end wird die Statistik der DescriptorFactory ber deren Methode clear gel scht damit dieselbe Deskriptoren fabrik f r die Berechnung des Labels des n chsten Clusters genutzt werden kann Die Clusteransicht verwendet ebenfalls eine Instanz der Klasse TreeViewer zur Darstel lung der HitCluster Objekte Auf erster Ebene des Baumes werden die Cluster mit ihren Labels angezeigt Sobald der Sch ler ein Cluster ffnet sollen ihm die Hit Objekte des Clusters untereinander angezeigt werden Als Adapter f r die grafische Darstellung wird auch hier die abstrakte Klasse org eclipse ui model WorkbenchAdapter anonym mit drei ber schriebenen Methoden instanziiert Die Methode getChildren liefert hier die Menge der Hit Instanzen eines HitCluster Objektes als Array getLabel das berechnete Cluster label und getlmageDescriptor ein spezifisches Icon Die Abbildung 8 10 zeigt die
47. altlich sehr hnlich Deshalb hat der Assistent die Treffer in ein gemeinsames Cluster einsortiert Zus tz lich hat der Assistent versucht einen Namen f r jedes Cluster zu finden der dessen Inhalt beschreibt Die Clusteransicht hilft dir einen berblick ber die gesamte Treffermenge zu 97 A 3 Bedienungsanleitung Herkunftsansicht Clusteransicht Agentenfortschritt v garnelenzucht 4 Gr ne Zwerggarnele Arten Haltung und Zucht von Zwerggarnelen Haltung und Zucht von Zwerggarnelen z B Bienen i Garnelenaquarium v garnele 5 amp Garnele Garnele Natantia Fire Zwerggarnele Garnele Wikipedia Nordseegarnele Wikipedia b wattenmeer 3 Abbildung A 5 Clusteransicht des Assistenten nach abgeschlossener Recherche erhalten ohne dass du jeden Treffer 6ffnen musst Du kannst anhand der Bezeichnungen ent scheiden welches Cluster fiir dich am interessantesten ist Wenn du dir ein paar Treffer eines Cluster angeschaut hast und diese thematisch unbrauchbar sind dann ist es sehr wahrschein lich dass die restlichen Treffer dieses Clusters ebenfalls unbrauchbar sind Du kannst dieses dann verwerfen Du wirst dich jetzt sicher fragen wie du z B einen Treffer ffnest oder A 3 4 Arbeit mit Treffern und Steuern des Assistenten Egal in welcher Ansicht du dich befindest die Treffer werden immer gleich gehandhabt Du kannst einen Treffer ffnen indem du ihn doppelt mit der linken Maustaste anklick
48. anfragen des Assisten ten immer sowohl auf dem aktuellen Bearbeitungszustand der Aufgabenstellung als auch auf den bisher gefundenen und vom Sch ler bewerteten Treffern Der beschriebene Assistent entbindet die Sch ler vollst ndig vom Finden der Suchbegriffe und der Formulierung der Suchanfragen Au erdem ist er f r jede Suchmaschine einsetz bar die boole sche Anfragen entgegennimmt da zur Formulierung der Anfrage in korrekter Syntax lediglich die Hinterlegung der Operatornotationen der jeweiligen Suchmaschine not wendig ist beispielsweise AND oder UND f r das logische UND Allerdings l st er nicht das zweite Kernproblem der befragten Sch ler n mlich ihren hohen Zeiteinsatz bei der Auswertung der erzielten Treffer Durch die vorgeschlagenen Suchanfragen ist zwar eine Reduktion der gesamten Treffermenge m glich aber eine Zeitersparnis durch Verbesserung der Darstellung der erzielten Treffer durch Zusammenfassung hnlicher Treffer in Clustern oder Ausblendung redundanter Treffer bei mehreren Suchanfragen wird nicht erreicht Die Sch ler m ssen hingegen zus tzlich Zeit f r die bertragung der vorgeschlagenenen Suchan frage in die Eingabemaske der Suchmaschine und Bereitstellung der erzielten Treffer f r den Assistenten investieren Daher gen gt der Assistent den formulierten Anforderungen in der beschriebenen Form noch nicht Der beschriebene zus tzliche Zeiteinsatz des Sch lers durch Nutzung des Assisten
49. annt Ebenso neu f r die Sch ler ist die M glichkeit zur Eingabe einer Wortfolge innerhalb von Anf hrungszeichen gewesen Eine solche Suchanfrage liefert nur Treffer in denen die Wortfolge exakt so wie in der Suchanfrage enthalten ist e Zeitintensive Auswertung von umfangreichen Ergebnismengen Die Sch ler beklagten dass ihre Suchanfragen in der Regel sehr umfangreiche Ergeb nismengen von mehreren tausend Treffern lieferten und allein die Sichtung der rund f nzig ersten Treffer viel Zeit beanspruche Die h ufig von Suchmaschinen verwende te Listendarstellung der Ergebnisse gibt den Sch lern deren sequentielle Bearbeitung vor Au erdem bietet sich den Sch lern ohne das Stellen einer neuen Anfrage keine M glichkeit die Trefferanzahl z B durch Markierung unbrauchbarer Treffer zu redu zieren Desweiteren enthalten Suchanfragen zu derselben Aufgabenstellung meistens gro e Schnittmengen der Treffer Daher vergeuden die Sch ler h ufig viel Zeit mit der Sichtung bereits bekannter Treffer 3 2 L sungsans tze von Suchmaschinen Es existieren verschiedene Ans tze um die Nutzung von Suchmaschinen zu vereinfachen Dieses Kapitel stellt diejenigen vor welche insbesondere auf die beschriebenen Probleme der Sch ler eingehen Die Ans tze sind entweder bereits in einer Suchmaschine oder eine ffentlich zug nglichen Testversion implementiert Anmerkung An dieser Stelle hilft die konfigurierbare optische Hervorhebung von Link
50. aschine in der Lage ist die Ergebnisse anderer Suchmaschinen in einer gemeinsamen Darstellung anzuzeigen ist er in der Lage dem Sch ler Verkn pfungen seines Wissens mit extern verf gbarem Wissen aufzuzeigen 2Die LAssi Volltextsuche indiziert die XML Repr sentationen der LAssi Materialien auf dem USB Stick und findet daher einzelne LAssi Materialien An den Java Objekten dieser Materialien ist der zugeh rige Desktop abfragbar 31 5 Grundlagen der Clusteranalyse Voraussetzung f r die Clusteransicht einer Trefferschale des Assistenten ist die Berechnung dieser Cluster Der Assistent muss die Clusterberechnung selbst vornehmen da von den meis ten Suchmaschinen keine Treffercluster abgerufen werden k nnen Dieses Kapitel enth lt die f r die Implementierung notwendigen mathematischen Grundlagen zur Berechnung von Clus tern Die Einbettung dieser Verfahren in den Assistenten wird in den folgenden Kapiteln kon kretisiert 5 1 Einf hrung in die Clusteranalyse Gruppen von inhaltlich hnlichen Objekten die Teilmengen einer gr eren Gesamtmenge sind werden als Cluster bezeichnet Das Problem liegt im Entdecken der Cluster durch einen Algorithmus Das Teilgebiet Clusteranalyse der Statistik besch ftigt sich mit der Ent wicklung von Verfahren zur L sung dieses Problems Die statistischen Verfahren der Clusteranalyse ben tigen ein numerisches Datenfundament auf dem sie operieren k nnen Formal betrachtet geht es um
51. asse f r die Clusteransicht wird demnach eine Map von URL String auf Hit Objekt nutzen um Treffercluster darstellen zu k nnen Die Cluster werden von der Methode generateClusters berechnet welche eine Menge von Clustern zurtickliefert In den Cluster Mengen sind die Treffer URLs enthalten welche sp ter auf die eigentlichen Trefferobjekte abgebildet werden m ssen Die Methode genera teClusters deligiert die Clusterberechnung an die applyO Methode der Schnittstelle IC lusteringFunction und bergibt dieser die Menge documents und liefert deren Resultmenge von URL Mengen zur ck Aufgrund der linearen Laufzeitkomplexit t und der guten Ergebnisse von denen die Lite ratur berichtet soll das k Means Verfahren im Entwurf als IClusteringFunction verwendet werden Um die Spalten der Merkmalsmatrix X zu beschriften m ssen Deskriptoren berech net werden deren gewichtete H ufigkeiten dann pro Treffer in die zugeh rigen Zellen ein getragen werden Hierf r soll die k Means Implementierung des Assistenten ein Objekt der bereits entworfenen Klasse DeskriptorFactory nutzen Als Distanzfunktion IDistanceFunc tion ist im Entwurf die euklidische Distanz vorgesehen 65 8 Implementierungsdetails Dieses Kapitel beschreibt ausgew hlte Details der Implementierung des Assistenten Grunds tz lich sei gesagt dass das System in der Programmiersprache Java auf Basis des Frameworks Eclipse RCP
52. aterialien zu extrahie ren Auf diese Weise kann der Assistent Taxonomien IST EIN Beziehungen in Form von IST TEILGEBIET VON Beziehungen innerhalb der Materialien und Treffern der Sch ler erken nen ohne dass der Sch ler diese semantisch annotieren m sste Eine solche Rechercheun terst tzung ist vor allem vor dem Hintergrund der Entwicklungen um das soziale Web oder Web 2 0 interessant Das beschriebene Konzept bietet den Ans tzen des Semantic Web gegen ber den Vorteil auf v llig unstrukturierten und nicht annotierten Datenmengen eine ta xonische Struktur erkennen zu k nnen Suchassistenten die auf dem Semantic Web basie ren sind auf die vorherige manuelle Modellierung von Beziehungen zwischen den Materialien des Suchraumes angewiesen 90 10 Abschlussbetrachtungen 10 1 Anregungen f r weitere Entwicklungen W hrend der Entwicklung des beschriebenen Assistentensystems sind weitere Ideen aufge kommen die im Rahmen dieser Arbeit nicht ber cksichtigt werden konnten Diese Ideen sind in diesem Kapitel gesammelt worden und sollen Anregungen f r weitere Entwicklungen des beschriebenen Assistenten geben e Automatische Erkennung von Themengebieten auf dem LAssi Desktop Ab einem gewissen Umfang der LAssi Materialien auf einem LAssi Desktop beeinflussen die se Materialien die statistischen Auswahlverfahren f r Suchbegriffe signifikant sodass dem Sch ler genau zu den Themengebieten weitere Treffer an
53. ay welches ber die Methodenkomposition getHits toArray berechnet wird getLabel des WorkbenchAdapter liefert den Namen der Suchmaschine Methode getName der Klasse SearchService und getlmageDescriptor ein Icon welches der Suchmaschine zugeordnet werden kann 75 8 3 Implementierung der Trefferansichten 8 3 3 Implementierung der Clusteransicht Die Clusteransicht zeigt benannte Gruppen von inhaltlich hnlichen Treffern an Sie soll dem Sch ler dabei helfen die gesamte Treffermenge inhaltlich zu berblicken Auf diese Weise kann der Sch ler Zeit sparen da er z B Cluster nach Sichtung weniger Treffer verwerfen kann wenn diese Treffer geringwertig sind Das UML Diagramm in der Abbildung 8 9 gibt einen berblick ber die beteiligten Klas sen an der Clusteransicht Die Clusteransicht selbst ist in der Klasse SemanticClusterView implementiert Zur Berechnung der Cluster erzeugt die SemanticClusterView ein Objekt der Klasse ClusterGenerator Der ClusterGenerator wird initialisiert mit einer Instanz der Klasse KMeansClusteringFunction welche als Distanzfunktion die euklidische Distanz nutzt Diese Distanzfunktion ist in einem Objekt der Klasse EuklidDistanceFunction gekap lt lt interface gt gt IHitServiceChangeListener selt lt lt interface gt gt IHitView DescriptorFactory urlToHitMap lt lt interface
54. begonnen haben Da das Vorwissen eines Sch lers nicht klar abgegrenzt werden kann sei jeder Treffer hochwertig der eine inhaltli che Beziehung zum Thema Garnelen hat z B ein Steckbrief einer S sswassergarnelenart Geringwertig f r den Sch ler seien Einkaufsangebote Rezepte Forendiskussionen sowie al le Treffer die keine inhaltliche Beziehung zur Aufgabenstellung haben z B das Profil eines Benutzers Garnele in einem Web Forum Es existiert noch eine weitere M glichkeit zum Vergleich des Assistenten mit Google und Yahoo Betrachtet werden in dieser weiteren Variante nur die ersten zehn Treffer der Suchma schinen Auf Basis der Inhalte der Treffer werden neue Suchbegriffe gew hlt und als neue An frage an die Suchmaschine gesendet Dies entspricht im Prinzip der Suchstrategie des Assis tenten Es ist m glich dass sich die Ergebnisse der Suchmaschinen und des Assistenten trotz derselben Strategie unterscheiden weil die Statistik des Assistenten andere Begriffe ausw hlt als der Sch ler Trotzdem wird von dieser Variante abgesehen weil sie nicht der bisherigen Suchstrategie der Sch ler entspricht Es soll das Verbesserungspotential der Recherchesituati on der Sch ler unter Einsatz des Assistenten abgesch tzt werden Daher ist durch diesen Ver gleich kein repr sentatives Ergebnis zu erwarten denn die bisherige Suchstrategie der Sch ler erh lt in diesem Vergleich keinen Einzug Das Fallbeispiel soll folgenderma en ges
55. blageschale verschoben weil ihre Inhalte f r den Vortrag n tzlich sein k nnten Nach Ablauf der konfigurierten Zeit spanne zwischen zwei Recherchen startet der Assistent den n chsten Recherchedurchgang Dabei wird neben dem Inhalt des LAssi Desktops auch der Treffer Lebensraum Wattenmeer bei der Auswahl der Suchbegriffe ber cksichtigt 29 4 4 Abgrenzung zu verwandten Systemen Rechercheassistent Sammelschale M i Gezeiten im Wattenmeer Schutzstation Wattenmeer ey Nordseewattenmeer LA LAssi Umgebung 1 Li Erdkunde Norddeut Wattenmeer Entstehung des Wattenmeers m Lebensraum f r Mensch und Tier Abbildung 4 4 Entwurf der Herkunftsansicht mit Treffern zum Thema Wattenmeer Die Abbildung 4 4 zeigt die Treffer des zweiten Recherchedurchgangs in der Herkunftsan sicht Hier tritt die Erinnerungsfunktion des Assistenten in Erscheinung denn der Assistent hat eine Aufgabenstellung aus dem Erdkundeunterricht auf dem LAssi USB Stick entdeckt in welcher sich der Sch ler mit dem norddeutschen Wattenmeer auseinander gesetzt hat Ihm selbst war aufgrund der F cherbarriere in seinem Kopf gar nicht bewusst dass er sich bereits Wissen zu diesem Thema aufbereitet und angeeignet hat Dieses Wissen k nnte nun erneut relevant sein und in die aktuelle Aufgabenstellung eingebracht werden Die Sch ler haben nach Auswertung der erzielten Treffer entweder die M glichkeit den Assistenten weiter nach Treffern zum The
56. bt h prec 2 9 4 i l t Anzumerken ist dass diese Kennzahlen nicht die Position eines Treffers in der Ergebnislis analog te ber cksichtigen Der Assistent oder z B Google werden nicht daf r belohnt gute Treffer als erste Treffer anzuzeigen sondern lediglich daf r die Treffer berhaupt angezeigt zu ha ben Weiss et al geben als weitere Kennzahlen zur Bewertung von IR Systemen Recall und F Measure an Deren Berechnung erfordert aber genaue Kenntnis der Indexinhalte der ge nutzten externen Suchmaschinen Da diese nicht vorliegt k nnen diese Kennzahlen nicht zur weiteren Bewertung des Assistenten herangezogen werden 9 2 Bewertung anhand eines Fallbeispiels Mit den vorgestellten Kennzahlen kann die Qualit t der Rechercheergebnisse abgesch tzt wer den Daher soll anhand eines Fallbeispiels gepr ft werden ob der Assistent einem Sch ler helfen kann bessere Treffer als ber die Web Formulare von Google oder Yahoo zu recher chieren Als Szenario f r den Vergleich dient die bekannte Aufgabenstellung zum Thema Garnelen aus dem Biologieunterricht Die Aufgabe des betrachteten Sch lers lautet also sich einen berblick ber die Thematik zu verschaffen um anschlie end ein Teilgebiet dieses Themas in einem Referat vor der Klasse vorzustellen Der Vergleich von Google und Yahoo mit dem Assistenten gestaltet sich schwierig Der Grund hierf r liegt darin dass Google und Yahoo anfrageorientiert mit dem Sch ler
57. ce und ihres Kontextes 7 16 UML Diagramm der Klasse ClusterGenerator und ihres Kontextes 33 35 36 37 38 39 40 Abbildungsverzeichnis 8 1 8 2 8 3 8 4 8 5 8 6 8 7 8 8 8 9 8 10 9 1 9 2 9 3 9 4 9 5 9 6 10 1 A l A 2 A 3 A A A 5 A 6 A 7 UML Klassendiagramm der Klasse DocumentReaderService Fortschrittsanzeige der Suchagenten 2 2 22mm Fortschrittsanzeige der Suchagenten 2 2 2m nennen Komponenten eines ProgressComposite Objektes Beziehung zwischen AgentManager und AgentProgressView Trefferansichten des Assistenten 2 2 Cm nn Beteiligte Klassen an der Berechnung und Darstellung der Herkunftsansicht Beteiligte Klassen an der Berechnung und Darstellung der Clusteransicht Beispiel der Clusteransicht zum Garnelen Beispiel Gemittelte Messwerte f r Fehlerrate und Precision 2 2 2 2 Gemittelte Messwerte f r Fehlerrate und Precision Treffer von Google zur Anfrage Garnelen 2 2 2 22 222 Rechercheergebnisse im ersten Durchgang des Assistenten Rechercheergebnisse im zweiten Durchgang des Assistenten Beispiel f r den Inhalt eines LAssi Desktops Expertensuche im Klassenverband 004 Schaltfl che zum ffnen des Hauptfensters 222222222 Hauptfenster des Assistenten 2 2 0 2 0 002000
58. ch eine Klasse mit zwei Membervariablen vom allgemeinsten Datentyp z B java lang Object in Ja va und jeweils einer Getter und Setter Methode f r jede Variable Eine Membervariable ist eine globale Variable einer Klasse deren Werte an die verschiedenen Instanzen der Klasse gebunden sind Die Flie kommazahl repr sentiert das Gewicht der Zeichenkette im gesamten Dokument Daher ist das Resultat der Operation eine Menge von gewichteten Zeichenketten Die Gewichte m ssen vom Entwickler derjenigen Klasse festgelegt werden die die Schnitt stelle IContent implementiert Um zu verhindern dass Entwickler ihre Dokumente be sonders stark gewichten K nnen ist ein Punktwertmodell definiert worden Die Summe aller Gewichtungen muss gleich 10 0 Punkten sein wie der Entwickler diese Punkte unter einzel nen Positionen seines Datenformates verteilt bleibt ihm berlassen Bevor ein IContent Objekt vom Assistenten ausgewertet werden darf wird diese Invariante Gewichtungssumme 10 0 gepr ft Bei Verletzung der Invariante wird das betreffende IContent Objekt ber sprungen 2vel 4 Seite 171 45 7 3 Aufbereitung und statistische Analyse der Textinhalte 7 3 Aufbereitung und statistische Analyse der Textinhalte Aus den bereitgestellten gewichteten Zeichenketten soll eine Menge von Kandidaten f r De skriptoren berechnet werden Der Assistent ben tigt diese Funktionalit t zur Berechnung von Such und
59. chanfragen enthalten immer zuerst alle Such und anschlie end alle Filterbegriffe Anfragen die nur Filterbegriffe enthalten sind unsinnig und werden daher nicht gestellt F r das obige Beispiel sind die berechneten Suchanfragen inklusive Filterbegriffen in der Tabelle 7 3 angegeben Die Bewertungen des Rators lauten e garnelen 6 0 Punkte Suchbegriff e amrum 4 0 Punkte Suchbegriff e lebensraum wattenmeer 6 0 Punkte Suchbegriff e rezept 4 0 Punkte Filterbegriff Dieses Verfahren ber cksichtigt allerdings nicht die Elemenierung der Deskriptorredun danz innerhalb einer Anfrage Eine Anfrage enth lt genau dann einen redundanten Deskrip tor wenn dieser prinzipiell nicht zu einer Pr zisierung der Trefferausbeute f hren kann Das 54 7 4 Berechnung von Anfragen Rang Anfrage 1 garnelen UND amrum UND lebensraum wattenmeer UND NICHT rezept 2 garnelen UND lebensraum wattenmeer UND NICHT rezept 3 garnelen UND amrum UND NICHT rezept 4 lebensraum wattenmeer UND amrum UND NICHT rezept 5 garnelen UND NICHT rezept 6 lebensraum wattenmeer UND NICHT rezept 17 amrum UND NICHT rezept 8 garnelen UND amrum UND lebensraum wattenmeer 9 garnelen UND lebensraum wattenmeer 10 garnelen UND amrum 11 lebensraum wattenmeer UND amrum
60. cherichtung einschlagen m chte muss der Assistent sehr wahrscheinlich andere Suchbegriffe w hlen Daher muss der Sch ler ihm die bisher zu ber cksichtigenden hochwertigen Treffer als Quelle f r Suchbegriffkandidaten zu entziehen und in eine Ablage verschieben hochwertiger Treffer Hochwertiger Treffer Ein inhaltlich hochwertiger Treffer hilft dem Sch ler ebenfalls bei der L sung sei ner Aufgabenstellung Allerdings ber cksichtigt der Assistent die Inhalte hochwerti ger Treffer nicht bei der Wahl zuk nftiger Suchbegriffe Dieser Zustand dient daher als Ablagezustand und ist sinnvoll um z B Quellen zu sammeln welche zur L sung der Aufgabenstellung beigetragen haben Neutraler Treffer Jeder Treffer ist standardm ig neutral und muss vom Sch ler gesichtet werden um anschlie end eine Bewertung zu erhalten Neutrale Treffer werden vom Assistenten nicht ber cksichtigt Geringwertiger Treffer Ein geringwertiger Treffer ist f r den Sch ler in keiner Weise zur L sung seiner Aufga benstellung n tzlich Daher nutzt der Assistent alle geringwertigen Treffer als Quelle f r Filterbegriffe um in zuk nftigen Recherchen Treffer dieser Art zu vermeiden Anders als zu ber cksichtigende hochwertige Treffer kann ein geringwertiger Treffer niemals in eine isolierte Ablage verschoben werden sondern ist immer f r die Berechnung von Filterbegriffen zu ber cksichtigen bei aktueller Aufgabenstellung Alle Treffer mit demse
61. d XP MacOS 10 3 und Linux lauff hig F r die Linux Installation ist zu beachten dass die Grafik bibliotheken GTK 2 2 1 oder alternativ Open Motif 2 1 installiert sein m ssen Zus tzlich wird die Installation einer Java Laufzeitumgebung in der Version 1 5 vorausgesetzt Nach folgerversionen der genannten Komponenten k nnen bei 100 iger Kompatibilit t ebenfalls eingesetzt werden A 2 Programminstallation und start Der Assistent muss als ein fester Bestandteil des LAssi Systems nicht gesondert installiert werden Nach Start dem des LAssi Systems ist der Assistent ebenfalls automatisch geladen worden A 3 Bedienungsanleitung Dein Rechercheassistent hilft dir bei der Recherche nach Informationen zu deiner aktuellen Aufgabe aus dem Schulunterricht Wie macht er das Ganz einfach Er sucht f r dich im World Wide Web und in deinen LAssi Desktops vollautomatisch nach Treffern Woher bekommt der Assistent die Suchbegriffe mit denen er recherchiert Er geht davon aus dass du f r jede Aufgabe einen eigenen Desktop in deinem LAssi System anlegst Aus den LAssi Materialien auf diesem Desktop w hlt er diejenigen W rter aus die besonders oft vorkommen Schau dir den Assistenten doch einmal an 94 A 3 Bedienungsanleitung A 3 1 ffnen des Assistentenfensters Du kannst das Hauptfenster des Assistenten ber die in der Abbildung A 1 dargestellte Schalt fl che ffnen Dazu klickst du mit der linken Maustaste einmal auf das markierte
62. deutsch sprachigen Index Anschlie end wird die Anfrage an den Webservice gesendet und die Treffer empfangen Die Schnittstelle WebSearchResults repr sentiert die von Yahoo gelieferte Trefferliste Ein Treffer wird durch ein Objekt die Schnittstelle WebSearchResult in Java abgebildet Diese Treffer Objekte werden von Instanzen der Klasse YahooHit adaptiert und an den Assistenten zur ckgegeben 3F r detaillierte Informationen zum Architektur Stil REST wird auf die Dissertation von Roy Thomas Fielding unter http www ics uci edu fielding pubs dissertation top htm verwiesen 106 37 38 39 60 61 62 63 64 65 66 C 3 Adapterklasse YahooHit C 3 Adapterklasse YahooHit Nachfolgend ist die Implementierung der Adapterklasse f r einen Yahoo Treffer Objekt vom Typ WebSearchResult auszugsweise angegeben public class YahooHit implements Hit private WebSearchResult _result null private SearchService _s null public YahooHit final WebSearchResult result SearchService s result result 28 7284 h public Set lt Pair lt String Double gt gt getContents Set lt Pair lt String Double gt gt result new HashSet lt Pair lt String Double gt gt int dotIndex _result getUrl lastIndexOf Extract file extension String fileExt result getUrl substring dotIndex String mimeType InputStream in null try mimeType Mi
63. dia Artikel in die Schale der hochwertigen Treffer Sollte dich die Zucht von Zwerggarnelen berhaupt 98 A 3 Bedienungsanleitung nicht interessieren so w re dieser Treffer in die Abfallschale zu bef rdern Nachdem dein Assistent dir ausreichend viele Treffer zur Nordseegarnele geliefert hat solltest du diesen Treffer aus der Schale der hochwertigen Treffer in die Ablageschale verschieben Stattdes sen verschiebst du nun diejenigen Treffer in die hochwertige Schale die sich auf das n chs te Themengebiet deiner Aufgabenstellung beziehen dass dich interessiert z B zur gr nen Zwerggarnele A 3 5 Anzeige des Recherchefortschritts Du kannst deinen Assistenten bei seinen Recherchen beobachten Dazu holst du einfach die Registerkarte A gentenfortschritt mit einem Mausklick in den Vordergrund siehe Abbildung A 7 Hier siehst du f r jeden Arbeitsschritt des Assistenten mitsamt seinem aktuellen Status Du kannst die einzelnen Arbeitsschritte mit einem Mausklick auf die Schaltfl che Abbre chen beenden Herkunftsansicht Clusteransicht Assistentenfortschritt Berechne Suchanfragen Berechne Suchanfragen Fertig Berechne Filter Berechne Filter Fertig Recherchiere in LAssi Umgebung Recherchiere in LAssi Umgebung Fertig Recherchiere in Yahoo E Abbrechen Recherchiere in Yahoo Analysiere erzielte Treffer Abbildung A 6 Fortschrittanzeigen des Assistenten A 3 6 Konfiguration des Assistenten Der
64. e Das Web Seiten auf Deutsch Seiten aus Deutschland Web Ergebnisse 1 10 von ungef hr 1 370 000 f r Garnelen 0 26 Sekunden Garnele Wiki Anzei e Kopf Beine und den gr ten Teil des Carapax Als Garnelen k A bent lagischer Krebse Wirbellosen Auktionshaus Seiten Krebse Garnelen amp Schnecken f r S wasser Aquarien wu wirbellosen auktionshaus de he Gi er de wikipedia org wiki Garnele 29K In Krebse und Garnelen Auf dieser Seite sollen s unter Beachtung ei gsten Krebse und Garnelen vorgestellt werden die m nem S wasser Aquarium S wasser Zwerggarnelen Viele Arten Garnelenbecken Zucht www aquarienclub e html 16K Im Cache hnliche Sei Garnelen Forum Forum f r Liebhaber und Halter von S wassergarnelen Tipps und Ratschl ge zur Haltung und Nachzucht von Garnelen www garnelenforum de forums html 80k Im Cache hnliche Seiter Rezepte mit Garnelen Foto Info Japan Moose Garnelenfutter uvm www aqua japonica de Interaquaristik de Shop Gro auswahl an Aquaristikzubeh r Futtertieren und Wirbellosen www interaquaristik de Die kleineren Handelstormen werden Garnelen genannt w hrend die gr eren Sorten auch Garnelen kommen sowohl in S wasser als auch in Salzwasser vor Garnelen www marions kochbuch de indew 1116 htm 6k Im hnliche Selter Riesenauswahl zu Niedrigpreisen Mitbleten oder Sofort Kaufen
65. e Benachrichtigungsmethode der Beobachter Schnittstelle bei einer Zustands nderung auf Auf diese Weise wird der Beobachter ber die Zustands nderung des Subjektes informiert Die Abbildung 8 3 gibt in UML Notation einen berblick ber die beteiligten Klassen Ob jekte der Klassen ProgressMonitorService und ProgressInformationMonitor nehmen die Rolle des Subjektes und Objekte der Klassen AgentProgressView und ProgressComposi vgl 4 Seite 287 ff 8 2 Statusmonitoring der Suchagenten ProgressMonitorService singletonInstance ProgressMontorService ProgressMonitorService ProgressMonitorService lt lt static gt gt getInstance ProgressMonitorService addMonitorCreationListener listener IMonitorCreationListener void removeMonitorCreationListener listener IMonitorCreationListener void createNewProgressInformationMonitor IProgressInformationMonitor creationListener AgentManager lt lt interface gt gt IMonitorCreationListener activeAgents newMonitorCreated monitor IProgressMonitor void lAgent setMonitor monitor ProgressInformationMonitor void i aaa ee progressComposites ThreadAgent monitorStateChanged monitor IProgressInformationMonitor void monitorWorkFinished monitor IProgressInformationMonitor void monitor Be listeners lt lt interface gt gt IProgressinformationMonitor setMainTask name Strin
66. e Distanz im zweidimensionalen Raum Die zwei Dimensionen stehen jeweils f r einen Begriff Die eingetragenen Punkte bzw Vektoren repr sentieren zwei Treffer welche beide Begriffe unterschiedlich oft enthalten Beide dargestellten Vektoren erhalten durch das Cosinusma den maximalen hnlichkeits wert denn es ist erkennbar dass die zwei Vektoren direkt aufeinander liegen und damit einen Winkel von O umschlie en siehe obiges Negativbeispiel zum Cosinusma Die euklidische Distanz hingegen liefert einen Abstandswert der anschaulich dem nat rlichen Empfinden ei nes Abstands entspricht Die euklidische Distanz entspricht im Zweidimensionalen dem Satz des Pythagoras und liefert damit die L nge der Strecke zwischen den zwei Punkten rot dar gestellt Damit erscheint sie f r die Berechnung der Treffercluster besser geeignet als das Cosinusma Tygl 6 Seite 448 ff und 9 Seite 36 ff 35 5 3 Anwendung von hnlichkeits und Distanzma en auf Cluster 5 3 Anwendung von hnlichkeits und Distanzma en auf Cluster Bei der Anwendung des im nachfolgenden Kapitel vorgestellten Verfahren tritt das Problem der Bestimmung von Distanzen bzw hnlichkeiten zwischen zwei Clustern auf Die vorge stellten Distanz bzw hnlichkeitsma e k nnen jedoch nur auf zwei Vektoren bzw Punkte angewendet werden Cluster sind aber Mengen von Vektoren bzw Punkten Es existieren in der Literatur mehrere Strategien zur L sung dieses Problems
67. e Herausforderung dar 1 Das Werkzeug muss in der Lage sein auf beliebig struktierten oder gar unstrukturier ten Datenmengen zu operieren weil die Sch ler die unterschiedlichsten Suchr ume f r Recherchen heranziehen 2 Das Werkzeug muss den Sch ler individuell also entsprechend seines Kenntnisstandes unterst tzen 3 Das Werkzeug muss den Sch ler kontextbezogen also zu einer bestimmten Aufgaben stellung bei der Recherche unterst tzen 2 2 Ziele und Gang dieser Untersuchung Im Rahmen dieser Diplomarbeit soll eine Software konzipiert und in die LAssi Plattform im plementiert werden welche die Sch ler beim Auffinden von relevanten digital verf gbaren Lernmaterialien und weiterf hrenden Quellen zu einer gegebenen unterrichtsbezogenen Auf gabenstellung unterst tzt Zur Erreichung dieses Zieles wird die aktuell allt gliche Situation von Sch lern bei der Materialien und Quellenrecherche am Beispiel einer LAssi Modellschulklasse der Gesamt schule Hamburg Harburg betrachtet Auf Basis der Ergebnisse dieser Analyse werden an schlie end Anforderungen an das zu entwickelnde System definiert Au erdem wird ein Mo dell f r einen software gest tzten Rechercheprozess eines Sch lers entwickelt Anhand dieses Modells wird ein Ansatz zur Erf llung der definierten Anforderungen und ein Benutzungsmo dell einer diesen Ansatz umsetzenden Software hergeleitet Ein Fallbeispiel veranschaulicht den gew hlten Ansatz Im Anschl
68. eadContents input InputStream Set lt Pair lt String Double gt gt I l TextReader PDFReader RTFReader XMLReader Abbildung 8 1 UML Klassendiagramm der Klasse DocumentReaderService Erweiterungspunkt des DocumentReaderService bereitzustellen sind Ein Yahoo Treffer speichert seinen URL Aus diesem wird nach Aufruf der Methode get Contents die Dateiendung der Trefferdatei extrahiert und an die Singleton Instanz der Klas se MimeTypeService gereicht Dieser Dienst ordnet ber eine Map der Dateiendung die standardisierte Bezeichnung des MIME Typs dieser Trefferdatei zu Die standardisierten Be zeichnungen stammen aus einer Textdatei welche zum Erzeugungszeitpunkt des MimeType Service von dessen Konstruktor ausgelesen wird Die Erzeugung eines java io InputStream Objektes wird an eine Instanz der Klasse java net URL delegiert Diese Klasse erwartet im Konstruktor die Angabe eines URL als String welcher jedem Yahoo Treffer bekannt ist Das erzeugte java net URL Objekt bietet eine Operation openStream welche eine mit dem Trefferdokument assoziierte Instanz von java io InputStream liefert Dieses Objekt kann dann mitsamt des ermittelten MIME Typs an die Methode readDocumentContents des 67 8 2 Statusmonitoring der Suchagenten DocumentReaderService gereicht und deren Resultat zur ckgegeben werden Diese Implementierung erleichtert Entwicklern neuer
69. ele Xiphocaris elongata amp Gr ne Zwerggarnele amp Nordseegarnele Wikipedia Abbildung 8 6 Trefferansichten des Assistenten 8 3 1 Grafische Darstellung von Suchmaschinen und Treffern Bei der Implementierung der Trefferansichten stellt sich die Frage durch welche Objekte Suchmaschinen und Treffer grafisch repr sentiert werden Aufgrund der Trennung von gra fischer Benutzeroberfl che und Gesch ftslogik enthalten die Klassen Hit bzw SearchSer vice und deren Subklassen keine Informationen zu Icons oder sonstigen optischen Darstel lungsaspekten Icons sind aber notwendig weil der Sch ler in den Trefferansichten schnell anhand eines Icons den Typ eines Treffers z B PDF Dokument HTML Seite oder LAssi Karteikartendokument oder seine Quellsuchmaschine erkennen k nnen soll Au erdem muss es ber spezielle Objekte m glich sein einen Treffer in einem geeigneten Viewer oder Edi tor zu ffnen Neben der optischen ist auch die strukturelle Darstellung der Treffer entschei dent Treffer k nnen eine Struktur beinhalten z B ein LAssi Desktop eine Menge von LAssi Materialien Die Anzeige dieser Materialien ist erforderlich damit der Sch ler sie ffnen und auswerten kann Schlie lich enthalten die LAssi Materialien das vom Sch ler aufbereitete Wissen und nicht der LAssi Desktop Gel st wird das Problem der grafischen Repr sentation durch die Implementierung von Ad apterklassen f r Objekte der Subklassen von Hit
70. elenzucht Bewertungsverfahren 3 Wattenmeer 4 Nordsee 5 Aquaristik Abbildung 6 1 Auswahl von f nf Deskriptoren Voraussetzung f r die vorgestellten Verfahren ist eine Menge von Kandidaten siehe Ab bildung 6 1 Diese Menge ist eine Multimenge d b dass sie ein Element mehrfach enthalten kann Die Berechnung dieser Kandidatenmenge und deren software technische Umsetzung vel 3 Kapitel 1 3 4 Thesauren 39 6 1 Absoluter H ufigkeitsansatz wird im Kapitel zum Systementwurf beschrieben Ebenso wird dort die Einbettung der an dieser Stelle vorgestellten Verfahren in den Assistenten konkretisiert Die Verfahren werden anhand der zwei LAssi Karteikarten aus der Abbildung 6 2 veranschaulicht Dabei gelte dass die Titel mit einer Gewichtung von 6 0 Punkten und die R mpfe mit 4 0 Punkten bewertet werden Garnelen Garnelenzucht Gamelen und Gamelen Gamelenzucht Abbildung 6 2 Beispiele f r LAssi Karteikarten 6 1 Absoluter H ufigkeitsansatz Der absolute H ufigkeitsansatz wertet die absolute H ufigkeit eines Kandidaten aus Es gilt hier die Annahme dass sich die Relevanz eines Kandidaten proportional zu seiner H ufig keit verh lt Weiss et al geben ein m gliches Verfahren zur Bestimmung der H ufigkeiten an Dieser Ansatz hat den Vorteil dass er anschaulich und seine Statistik mit linearer Lauf zeitkomplexit t zu berechnen ist Es ist zu beach
71. elieferten Treffer strengerer Suchanfragen pr ziser zur Aufgabenstellung des Sch lers passen Der Assistent k nnte so als Suchbegriff beispielsweise die Tokenkombination lebensraum wattenmeer berechnen Svgl 5 Seite 357 ff 48 7 3 Aufbereitung und statistische Analyse der Textinhalte Rang Kandidat Bewertung 1 garnele 1 6 0 2 4 0 14 0 2 wattenmeeres 2 4 0 1 6 0 14 0 3 r uber 1 4 0 4 0 4 beutetier 1 4 0 4 0 5 schl sselart 1 40 4 0 6 kologisch 1 4 0 4 0 ds gef ge 1 4 0 4 0 8 nutzen 1 4 0 4 0 9 sommer 1 40 4 0 Tabelle 7 2 Beispielhafte Kandidatenliste auf Basis der TF Funktion Die berechnete Relation ist als Parameter an den Rator weiterzureichen damit dieser die H ufigkeiten und Gewichtungen auf eine Bewertung des Tokens abbilden kann Die Rator Funktionen TF absoluter H ufigkeitsansatz und TF IDF zur Bewertung der Token sind be reits vorgestellt worden Ein bewertetes Token ist ein Kandidat f r einen Deskriptor Daher ist das Resultat der Rators eine Liste von Kandidaten deren Ordnungskriterium die Kandida tenbewertung ist Bei gleicher Bewertung erh lt der zuerst gefundene Deskriptor den Vorzug Auf Basis der gewichteten absoluten H ufigkeit TF Funktion wird f r das Beispiel aus der Tabelle 7 1 folgende Kandidatenliste in der Tabelle 7 2 berechnet Wie werden die beschriebenen Verarbeitungsschritte nun software technisch umgesetzt Es erschein
72. en 37 Treffer des Assistenten und der Suchmaschinen be trachtet Au erdem werden redundant angezeigte Treffer der Suchmaschinen wie neue Treffer behandelt Wenn zwei verschiedene Suchanfragen z B Anfrage 3 und 1 denselben hochwer tigen Treffer liefern dann wird dieser f r beide Suchanfragen als hochwertig gez hlt Fehlerrate Precision 1 1 0 9 0 8 0 7 06 0 5 Fehlerrate Precision 0 4 0 3 0 2 0 1 0 4 Assistent Assistent Yahoo Google Assistent Assistent Yahoo Google TF IDF TF TF IDF TF Abbildung 9 1 Gemittelte Messwerte fiir Fehlerrate und Precision Die gemittelten Messwerte fiir die Fehlerrate und die Precision sind in der Abbildung 9 1 gegentibergestellt worden Es zeigt sich dass die Fehlerraten des Assistenten mit 20 TF IDF und 15 absolute Haufigkeit geringer sind als die von Google mit 57 und Yahoo mit 31 Hier muss erg nzt werden dass beide Suchmaschinen ihre hochwertigen Treffer als erstes angezeigt haben Da diese Suchmaschinen ber keine R ckmeldem glichkeit verf gen werden ab dem ca 20 Treffer viele v llig irrelevante Treffer angezeigt Besonders Google tat 82 9 2 Bewertung anhand eines Fallbeispiels sich hervor denn Google lieferte hier auffallend viele Treffer mit kommerziellem Hintergrund oder von interaktiven Plattformen f r z B den Austausch von Videos Clipfish MyVideo YouToube Da die genaue Funktionsweise von Google
73. en Sch ler weil er m glicherweise Wissen welches er in einer anderen Aufgabenstellung selbst verstanden und aufbereitet hat in der aktuellen Aufga be erneut nutzen kann Die an der Herkunftsansicht beteiligten Klassen sind im UML Diagramm in der Abbildung 8 8 dargestellt Die Klasse ServiceView beinhaltet die Implementierung der Herkunftsan sicht Diese Klasse implementiert die Schnittstelle IHitServiceChangeListener Daher kann sie von der AssistantManagementView als Beobachter f r Zustandsver nderungen der Tref ferschalen am HitService angemeldet werden Bei ihrer Initialisierung bzw nach Zustands nderungen im HitService ruft die Herkunfts ansicht die aktuelle Trefferschale von der Singleton Instanz des HitService ber dessen Methode getActiveBasin ab Die Trefferschalen werden in der Implementierung durch Integer Konstanten identifiziert Mit dem erhaltenen Integer Wert als Parameterwert wird ber die Methode getHitsOfBasin die Menge von Treffern der aktuellen Schale vom HitSer vice abgerufen Anschlie end wird ber die erhaltene Menge von Hit Objekten iteriert und die Treffer ber eine Map den Suchmaschinen zugeordnet Schl ssel SearchService Wert List Hit Abschlie end wird aus der Map eine Menge von ServiceHitList Objekten er zeugt Ein Objekt der Klasse ServiceHitList besitzt als Attribute eine Suchmaschine und 74 8 3 Implementie
74. en zur Identifikation der Cluster ein hnlichkeits oder Distanzma Im Prinzip beschreiben beide Ma e denselben Zusammenhang Je gr er die hnlichkeit zweier Objekte ist desto geringer ist ihre Distanz zueinander Umgekehr gilt dass je gr er die Distanz dieser zwei Objekte zueinander ist desto un hnlicher sind sie sich Kaufmann und Pape geben folgende formale Definition Sei I In eine Menge von N Objekten Eine Funktion s I x J R hei t hnlich keitsma wenn gilt Snm Smn 5 1 Snm Snn 5 2 n m 1 N Die Definition verlangt von einer hnlichkeitsfunktion die Eigenschaft der Symmetrie in der Bedingung 5 1 Objekt n ist Objekt m ebenso hnlich wie Objekt m Objekt n hnlich ist und dass die hnlichkeit eines Objektes m zu einem Objekt n nicht gr er sein darf als die hnlichkeit von n zu sich selbst siehe 5 2 Kaufmann und Pape erg nzen dass der Wertebereich vieler hnlichkeitsfunktionen auf das Intervall 0 1 beschr nkt ist Ein in der Praxis sehr h ufig verwendetes hnlichkeitsma ist das Cosinusma Dieses 3vgl 6 Seite 440 ff vgl 5 Seite 191 ff und 12 Seite 91 ff g 33 5 2 hnlichkeits und Distanzma e Ma betrachtet die Merkmalsvektoren zweier Objekte und bestimmt den Wert der Cosinus Funktion des Winkel amp zwischen beiden Merkmalsvektoren ber die Formel 5 3 p gt T ai bi Dd cosa a T 5 5 3 il a2 i l i l
75. entMa vel 4 Seite 107 ff 60 7 5 Interaktion mit integrierten Suchmaschinen nagers gespeichert ber die Referenzen aus dieser Menge kann der AgentManager den einzelnen IAgent Instanzen ber Aufruf deren Methode stopAgent ein Terminierungs signal senden Die Methode startAgent veranlasst den Suchagenten zum Absenden seiner ersten Anfrage an die ihm zugeordnete Suchmaschine Bevor ein Suchagent terminiert ruft er die Methode agentFinished der Singleton Instanz des AgentManagers auf und bergibt sich selbst als Parameter agent Dieses Verhalten ist als Konvention in der Methodendoku mentation hinterlegt Es kann software technisch im aktuellen Entwurf nicht garantiert wer den dass sich die konkreten Implementierungen an diese Konvention halten Nachdem alle Suchangenten terminiert sind ruft der AgentManager die Methode searchFinished al ler angemeldeten Instanzen der Schnittstelle IResultListener auf Auf diese Weise kann die Ausgabe der angesprochenen Bildschirmmeldung angesto en werden Die Methode stop des AgentManager f hrt das Master Slave System herunter was konkret bedeutet dass der AgentManager ein Terminierungssignal an alle Suchagenten sendet und keinen Zeitpunkt f r einen weiteren Durchgang berechnet Sollten keine Agenten aktiv sein so wird der be rechnete Zeitpunkt des n chsten Durchlaufes gel scht 7 5 3 Verwaltun
76. entwickeln LAssi unterscheidet sich von E Learning Plattformen vor allem durch zwei Aspekte e LAssi stellt Lernwerkzeuge bereit keine Lernmaterialien LAssi entspricht einem Werkzeugkasten in dem Werkzeuge zur Durchf hrung und Or ganisation von Wissensverarbeitung und aneignung f r Sch ler bereitgestellt werden e LAssi ist eine indviduelle dezentrale Plattform Jeder Sch ler besitzt seinen eigenen Lern Assistenten mit genau denjenigen Lernwerk zeugen die ihn pers nlich beim Lernen besonders unterst tzen Ein zentraler Aspekt dieses sch lerzentrierten Konzeptes ist die selbstst ndige Erschlie Bung von Quellen und Wissen z B in Form von Aufs tzen Zeitungsartikeln Webseiten oder B chern aus denen von den Sch lern f r die eigenen Lernzwecke Wissen extrahiert und auf bereitet werden kann Daher w re es ein gro er Mehrwert f r einen Sch ler wenn er mit Zukiinftig wird der Einfachheit halber nur noch die m nnliche Form Sch ler verwendet Gemeint sind nat rlich immer Sch lerinnen und Sch ler F r weitere Informationen zum LAssi Projekt wird auf dessen Internetseite http www lassitools org verwiesen 10 2 2 Ziele und Gang dieser Untersuchung einem Werkzeug seines LAssi Werkzeugkastens in der Lage w re sich eine Informations grundlage zu seiner aktuellen Aufgabenstellung zu beschaffen Die Entwicklung eines solchen Werkzeuges innerhalb des LAssi Systems stellt aus drei Gr nden eine besonder
77. er der vorher noch nicht angezeigt worden ist und sich mit den kologischen und sozialen Fol gen der Garnelenzucht u a in Indien befasst Der letzte Treffer k nnte als einziger von den hnlichen Seiten f r Sch ler interessant sein da er sich direkt auf die industrielle Nutzung der Garnelen bezieht X YrYahoo 10 amp Garnele Natantia i garnele online 05 2006 Fire Zwerggarnele amp Garnele Wikipedia Kristallrote Zwerggarnelen Caridina cf cantonensis Crystal amp Garnelenaquarium i garnele online 4 amp Garnele amp Neocraidina Zwerggarnelen amp Garnele Wikipedia Abbildung 9 4 Rechercheergebnisse im ersten Durchgang des Assistenten Als weitere M glichkeit zur Verbesserung der Trefferausbeute bleibt den Sch lern noch die Nutzung des logischen NICHT Operators welchen aber keiner der Sch ler bei den Befra gungen kannte Angenommen dieser Operator w re bekannt gewesen so st nden die Sch ler immernoch vor dem Problem Filterbegriffe zu w hlen Die Einkaufsangebote k nnten mit shop die Aquaristikforen mit aquarium und die Rezeptsammlungen mit rezept gefiltert werden Die resultierende Anfrage garnelen shop aquarium rezept liefert aber immernoch vier Links zu Rezeptsammlungen welche erst durch den Zusatz rezepte gefiltert werden Die vier nun freigewordenen Pl tze werden von Google aufgef llt mit Ebay Angaboten und Links zu Preisvergleichen Letztendlich bleib
78. er fett und die der gelesenen normal dargestellt werden Alle anderen Knoten z B Suchmaschinen oder Clusterbezeichnungen sind ebenfalls normal darzustellen Daher wird die Klasse Workben chLabelProvider in der Implementierung der Trefferansichten anonym instanziiert und die Methode getFont berschrieben Diese Methode liefert ein Objekt der Klasse Font wel ches Formatierungsangaben zur Bezeichnungsdarstellung wie z B der Schriftart und deren Punktgr e enth lt Als Parameter erh lt sie das Element des Baumes f r welches die Be zeichnungsdarstellung berechnet werden soll Es muss anschlie end mit dem instanceof Operator gepr ft werden ob das Element vom Typ Hit ist Falls dem so ist dann ist dieses Element auf den Typ Hit zu casten Anschlie end kann ber die Methode isRead abge fragt werden ob der Treffer bereits ge ffnet worden ist Ist er als gelesen markiert so wird der Fontstyle auf fett ansonsten auf normal gedruckt gesetzt Die Bezeichnungen aller Elemente die nicht vom Typ Hit sind werden ebenfalls normal dargestellt 8 3 2 Implementierung der Herkunftsansicht Die Herkunftsansicht zeigt Treffer geordnet nach den Suchmaschinen an von denen sie er zielt wurden Durch die Herkunftsansicht kann der Sch ler Treffer direkt Suchr umen zuord nen und deren Sichtung entsprechend priorisieren Treffer aus der LAssi Volltextsuche sind beispielsweise hochinteressant f r d
79. er muss eine Suchmaschine ihre Notation f r den UND und den NICHT Operator bereitstellen In der Schnittstelle SearchService ste hen hierf r die Methoden getANDOperator und getNOTOperator zur Verf gung F r die Herkunftsansicht wird au erdem eine Bezeichnung der Suchmaschine ben tigt welche die Methode getName liefert Die Methode getID liefert eine eindeutig identifizieren de Zeichenkette f r den Suchdienst Da die ID auf diese Weise vom Entwickler des Such maschinenadapters festgelegt werden muss besteht die M glichkeit dass zwei Suchdiens te dieselbe ID verwenden Um dieses Problem zu entsch rfen ist in der Dokumentation der Methode die Konvention festgelegt worden dass die ID aus dem vollst ndigen Namen des Klassenpaketes und dem Namen der Suchmaschine bestehen soll Als Beispiel sei hier die ID org lassitools searchassistent searchservice Yahoo f r die Suchmaschine Yahoo genannt Eine Suchanfrage wird in Form eines Strings als Parameter query der Methode execu teQuery an die adaptierte Suchmaschine gesendet Zus tzlich wird der Suchmaschine die maximale Anzahl von Treffern ber den Parameter maxHitNumber mitgeteilt die diese zur Anfrage query liefern darf Es gilt hier die Invariante dass die L nge der Resultatliste von Treffern die diese Methode liefert nicht l nger als maxHitNumber Elemente sein darf Die 56 7 5 Interaktion mit integrierten
80. erden Eine Funk tion d I x I R hei t Distanzma wenn gilt dnn 0 und dnm Z 0 5 4 n m 1 N Ein Distanzma verf gt ebenfalls ber die Eigenschaft der Symmetrie siehe 5 5 AuBer dem hat ein Objekt n zu sich selbst die Distanz 0 und eine Distanz darf nie negativ sein siehe 5 4 Der angesprochene Zusammenhang zwischen hnlichkeits und Distanzfunktionen wird durch 5 2 und 5 4 deutlich Ein in der Literatur sehr h ufig genanntes Distanzma ist die Ssiehe 7 Seite 60 ff 6ygl 6 Seite 440 ff 34 5 2 hnlichkeits und Distanzma e euklidische Distanz Die euklidische Distanz d zweier Merkmalspunkte x und xm berechnet sich wie folgt d Xn Xm nm Xni Xmi 5 6 i l Das Verfahrens berechnet den Abstand zweier Punkte im mehrdimensionalen Raum Da zu werden dimensionsweise die Distanzen der jeweiligen Stellen ermittelt um abschlieBend einen mittleren Abstand aus der Summe aller berechneten Dimensionsabst nde zu erhalten Die euklidische Distanz ist wie auch das Cosinusma auf verh ltnisskalierte Merkmale an wendbar Ihr Vorteil gegen ber dem Cosinusma ist dass die euklidische Distanz die Streu ung der Treffer ber cksichtigt Dieser Sachverhalt ist beispielhaft in der Abbildung 5 2 f r den zweidimensionalen Raum dargestellt Cosinusahnlichkeit Euklidische Distanz A Begriff A Begriff A Begriff B Begriff B Abbildung 5 2 Cosinusma und Euklidisch
81. erechnung der Arbeitsschrit te des gesamten Ausleseprozesses ben tigt mit welcher u a der Fortschrittsbalken der zum Prozess geh renden Statusanzeige initialisiert wird ber die Methode iterator ist es m glich ein Iteratorobjekt f r die Dokumentenmenge abzurufen Mithilfe eines Iteratorobjektes kann eine Datenstruktur traversiert werden ohne deren Implementierung zu kennen z B die Menge der vom LAssi Desktop aus erreichbaren LAssi Materialien transitive Desktoph lle oder die Treffer aus einer Schale Das Klassen diagramm eines Iterators ist in der Abbildung 7 3 dargestellt start void next void getCurrent Object hasNext boolean Abbildung 7 3 UML Klassendiagramm f r einen Iterator Die Methode start setzt den Iterator auf das erste Element der Datenstruktur ber die Methode getCurrent ist das aktuelle Element der Datenstruktur zugreifbar hasNext pr ft ob ein weiteres Element in der Struktur existiert und next weist den Iterator an intern das n chste Element der Struktur zu referenzieren Der vom IContentProvider gelieferte Iterator referenziert entweder ein LAssi Material oder einen Treffer Es ist mit ihm folglich vel 4 Seite 335 ff 44 7 2 Bereitstellung von LAssi Desktop und Schaleninhalten m glich die Dokumentmenge des IContentProvider zu traversieren Wie kann der Assistent nun den Textinhalt des LAssi Mat
82. erials bzw des Treffers abzurufen lt lt interface gt gt IContent lt Zinterf ces gt getURL String Hit getWeightedStrings Set lt Pair lt String Double gt gt isRead boolean LassiMaterialContent Abbildung 7 4 UML Klassendiagramm der Schnittstelle IContent F r diesen Zweck ist die Schnittstelle IContent definiert worden siehe Abbildung 7 4 Die diese Schnittstelle implementierenden Klassen nehmen die Rolle eines Adapters ein Sie bilden intern die Funktionalit t der adaptierten Schnittstelle auf die eigene ab z B die eines LAssi Materials Alle Objekte die der Iterator eines IContentProvider liefert sind In stanzen einer diese Schnittstelle implementierenden Klasse Ein solches Objekt verfiigt tiber die Methode getURLO mit der der URL Uniform Resource Locator des jeweiligen Do kuments abgerufen werden kann Ein URL ist innerhalb eines bestimmten Namensraumes z B das World Wide Web ein eindeutiger Bezeichner einer Resource z B einer Datei auf einem Webserver oder auf einer lokalen Festplatte Der Assistent verwendet den URL der LAssi Materialien und seiner Treffer um doppelte Treffer zu erkennen und auszuschliefen Die eigentlichen Textinhalte lassen sich ber die Methode getWeightedStrings abrufen Diese Methode liefert eine Menge von Paaren aus einer Zeichenkette und einer Flie kom mazahl Ein Paar entspricht einem mathematischen Tupel Es wird repr sentiert dur
83. ertung durch den Rator der DescriptorFactory von A gr er ist als die mittlere arithmetische De skriptorbewertung von B Bei gleicher Kardinalit t und gleichem mittleren Gewicht gelten zwei Anfragen als gleich 53 7 4 Berechnung von Anfragen streng Bei der Berechnung der Kardinalit t einer Anfrage sind Deskriptor und negierter De skriptor gleichwertig da beide Deskriptoren Beschr nkungen der Ergebnismenge definieren Formal notiert lautet die Ordnungsdefinition auf Basis der Strenge einer Anfrage strict A gt strict B card A gt card B V card A card B 7 2 N avgWeight A gt avgWeight B strict A strict B amp card A card B 73 A avgWeight A avgWeight B l strict A lt strict B sonst 7 4 Ein einfaches Verfahren zur Berechnung der nach Strenge sortierten Liste der Anfragen lautet 1 Berechne alle Kombinationen aller Deskriptoren jede Kombination repr sentiert eine Anfrage 2 Sortiere die in Schritt eins erhaltene Menge nach Strenge der Anfragen Die Berechnung aller Kombinationen aller Deskriptoren entspricht der Berechnung der Po tenzmenge also der Menge aller Teilmengen ohne die leere Menge ber die Liste posDe scriptors f r Such bzw begDescriptors f r Filterbegriffe ber die Methoden getQue ries bzw getFiltersO k nnen die jeweiligen Potenzmengen berechnet und vom Query Service abgerufen werden Die formulierten Su
84. escriptorFactory Objekte welche ber die Referenzen positiveFactory und negativeFactory erreicht werden k nnen Als IRatorFunction wird der Parameter rator an die Deskriptorfabriken gereicht Um die Suchbegriffe bzw die Filterbegriffe zu berechnen muss die Methode computePosDescrip tors bzw f r Filterbegriffe die Methode computeNegDescriptors aufgerufen werden Wie im UML Listing der Methode computePosDescriptors angegeben ist werden zuerst ygl 4 Seite 157 ff 51 7 4 Berechnung von Anfragen for IContentProvider cp posCPs Iterator lt IContent gt iter cp iterator Iterate over contents of current cp while iter hasNext IContent con iter next positiveFactory add con getURL con getWeightedStrings positiveFactory calculateDescriptors Iterator lt Descriptor gt descIter positiveFactory getDescriptorIterator Collect descriptors in a List while descIter hasNext posDescriptors add descIter next singletonInstance QueryService contentUrls Set lt String gt posDescriptors List lt Descriptor gt negDescriptors List lt Descriptor gt QueryService QueryService addPositiveCP provider IContentProvider void removePositiveCP provider IContentProvider void addNegativeCP provider IContentProvider void x A R A if singletonInstance null removeNegativeCP provider IConten
85. essource und bietet ber die Metho de read die M glichkeit diese Ressource byteweise auszulesen MIME steht f r Multi purpose Internet Mail Extensions und ist ein Kodierstandard welcher u a den Typ eines ber ein Netzwerk zu bertragenden Dokumentes in Form einer Zeichenkette festlegt Anhand des bergebenen MIME Typs wird der Konvertor f r das Trefferdokument vom Document ReaderService ber die Map readers ausgew hlt Diese Map ordnet einem MIME Typ ein Objekt der Schnittstelle IDocumentReader zu Diese Schnittstelle muss von den Konverto ren implementiert werden welche vom Entwickler der Suchmaschinen Integration ber einen 66 8 1 Extraktion von Trefferinhalten MimeTypeService singletonInstance MimeTypeService mimeTypes Map lt String String gt lt lt static gt gt getInstance MimeTypeService R getMimeType fileExtension Strin lt lt interface gt gt 3 ype 9 Hit getSearchService SearchService getTitle String YahooHit setRead read boolean void lt lt interface gt gt IContent DocumentReaderService singletonInstance DocumentReaderService DocumentReaderService DocumentReaderService lt lt static gt gt getInstance DocumentReaderService readDocumentContents mimeType String stream InputStream Set lt Pair lt String Double gt gt readers lt lt interface gt gt IDocumentReader r
86. fern Konnte Im Entwurf werden die Titel ungelesener Treffer fett und die gelesener normal ausgegeben Der Wikipedia Artikel zur Garnele ist demnach bereits von einem Sch ler ge ffnet worden Diese Web Suchmaschinen sind ausgew hlt worden weil sie von den Sch lern pr feriert werden 27 4 3 Veranschaulichung anhand eines Fallbeispiels Rechercheassistent Sammelschale M i Garnele Wikipedia Referat ber Garnelen 9 Aquaristikshop Garnelenangebote Abbildung 4 2 Entwurf der Herkunftsansicht mit Treffern die restlichen nicht Die Sch ler k nnen die Treffer mit einem Doppelklick auf deren Titel in einem geeigneten Programm ffnen z B in einem Webbrowser Ein Rechtsklick auf einen Treffertitel l sst ein Kontextmen aufklappen welches Operationen zum Verschieben des se lektierten Treffers in andere Schalen oder dessen L schen anbietet ber das Verschieben der Treffer in eine bestimmte Schale wird deren Bewertung durch den Sch ler abgebildet Au Berdem steht eine Operation zur Markierung ungelesener Treffer als gelesen und umgekehrt bereit Um den Inhalt einer anderen Schale ansehen zu k nnen selektiert der Sch ler die gew nschte Schale aus der entsprechend beschrifteten Auswahlbox Die Liste aller Schalen wird nach einem Linksklick auf den rechten Pfeil der Auswahlbox angezeigt Um einen inhaltlichen berblick ber die mit Google und Yahoo erzielten Treffer zu erhal ten wechseln die Sch ler ber e
87. ferschalen jetzt aussieht inhalt jetzt Bedingung Welche Aktion ich Bedingung Selektiere n chste Aktion Regeln jetzt ausf hren sollte Aktion Regeln Suchanfrage l Senden einer ve Aktuatoren Pi an Such anfrage 7 Umgebung Suchmaschine Abbildung 7 12 Allgemeiner Reflex Agent und Suchagent 7ygl 11 Seite 72 ff 8vgl 11 Seite 55 ff 58 7 5 Interaktion mit integrierten Suchmaschinen Wenn der Suchagent die vom Sch ler gew nschte Trefferanzahl in die Sammelschale gelegt hat oder keine weiteren Anfragen in seiner Liste stehen Kann er seine Recherche abbrechen Ansonsten muss er die n chste Anfrage an die Suchmaschine senden Aufgrund des statischen Ablaufs des Rechercheprozesses ist ein Suchagent als Reflex Agent zu klassifizieren denn er nimmt schlicht die n chste Anfrage und w hlt diese nicht auf Basis eines Erfahrungswertes aus z B Anfragen mit mehr als vier Filterbegriffen erzielen nie Treffer die vom Sch ler als hochwertig bewertet werden Das allgemeine Konzept eines Reflex Agenten und das Konzept des Suchagenten sind in der Abbildung 7 12 gegen bergestellt Master Agent Job 1 Job 2 Job 3 s Job n Abbildung 7 13 Schema einer Master Slave Architektur F r die Organisation der Suchagenten ist der Einsatz einer Master Slave Architektur sinn voll siehe Abbildu
88. ffern Danach werden diese 6Zur Zeit k nnen Treffer der Suchmaschine Yahoo aus dem Online Lexikon Wikipedia und der Literatursuche von der Online Buchhandlung Amazon einbezogen werden 16 3 3 Fazit auf Basis der in Textform enthaltenen Inhalte zu Clustern zusammengefasst Ist eine bestimm te Anzahl von Treffern pro Cluster berschritten so berechnet Grokker aus den enthaltenen Treffern neue Sub Cluster Dieser Schwellenwert kann durch den Benutzer nicht konfiguriert werden Nach der Berechnung der Cluster erh lt der Benutzer diese wahlweise in grafischer oder textueller Darstellung Die grafische Darstellung erfolgt in Form von benannten Krei sen innerhalb derer weitere Cluster oder Trefferdokumente grafisch angedeutet werden Die Abbildung 3 5 zeigt beispielhaft die Grokker Ergebniscluster zur Suchanfrage Hamburg b Reet ompanie k Hamburg German innenalster Inn City Counts Milli ae Hamburg was also 3 Like Adobe Systems 5 wD e lt General Industry 4 i IGO More Marth Sea Hamburg Abbildung 3 5 Grafische Darstellung der Treffercluster von Grokker Die textuelle Darstellung gibt eine Aufz hlung der Clusterbenennungen in Form von Web Links aus Nach einem Mausklick auf einen Kreis bzw einen Link ffnet sich in einem se peraten Bildschirmbereich eine Liste der im selektierten Cluster enthaltenen Treffer Die Dar stellung dieser Liste hnelt de
89. g units int void getMainTask String setSubTask getSubTask String incWorkedUnits void getWorkedUnits int setWorkedUnits units int void getAllWorkUnits int isCanceled boolean void setCanceled canceled boolean void taddMonitorStateChangedListener listener IMonitorStateChangedListener void removeMonitorStateChangedListener listener IMonitorStateChangedListener setErrorMessage message String void t getErrorMessage String Abbildung 8 3 Fortschrittsanzeige der Suchagenten 69 8 2 Statusmonitoring der Suchagenten te die Rolle des Beobachters ein Die Schnittstellen IMonitorCreationListener und IMoni torStateChangeListener sind die Beobachter Schnittstellen Die Singleton Instanz der Klasse AgentManager erzeugt ber ihre Agentenfabrik einen neuen Suchagenten Die Suchagenten sind als Java Threads also als eigene Kindprozesse des LAssi Prozesses im Betriebssystem implementiert worden Klasse ThreadAgent Jedem Suchagenten wird ber die Methode setMonitor der Schnittstelle IAgent ein Objekt der Klasse ProgressInformationMoni tor bergeben Dieser Monitor dient als Abbild des Status des Suchagenten Das hei t dass der Suchagent Angaben bez glich seines Zustands auf dem Monitor Objekt setzt z B die Anzahl der bereits recherchierten Treffer oder eine Hinweismeldung Ein Monitor wird von der Singleton Instanz der Kla
90. g der Treffer in Trefferschalen Der bisherige Entwurf umfasst lediglich die Recherche von Treffern Es sollen aber wie be reits beschrieben vier Schalen existieren in denen Treffer abgelegt werden k nnen e Schale f r hochwertige zu ber cksichtigende Treffer e Ablageschale f r hochwertige Treffer e Sammelschale e Schale f r geringwertige Treffer Die Treffer sollen von den Suchagenten in der Sammelschale gespeichert und vom Sch ler zwischen den Schalen hin und her verschoben werden k nnen Zur Verwaltung der Treffer wird die Klasse HitService definiert Da die Treffer ebenfalls an einer zentralen Stelle ver waltet werden sollen wird auch hier das Singleton Entwurfsmuster angewandt Die Klassen spezifikation in UML Notation ist in der Abbildung 7 15 angegeben Die Klasse stellt die Methoden addHit moveHit und deleteHit zum Hinzuf gen zu einer Verschieben in eine andere und L schen aus einer Schale bereit Die basin Parameter identifizieren die entsprechende Trefferschale ber die Methode setHitBasinSize kann die Anzahl der Treffer die die Schale basin aufnehmen kann auf size Treffer begrenzt werden Gef llt wird die Sammelschale direkt von den Suchagenten 61 7 5 Interaktion mit integrierten Suchmaschinen AgentManager I __ lt lt interface gt gt IHitServiceChangeListener thitServiceStateChanged void changeListener
91. ga ar rn ne el le Aus den Mengen T und Tp berechnet sich der Dice Quotient wie folgt d Ta Tp ca 0 6 Das Dice Ma beziffert die hnlichkeit der Zeichenketten garnele und nordseegarnele auf 66 67 Eine gewisse Abh ngigkeit zur Sprache der Token ist noch immer gegeben 3vgl 3 Kapitel 1 3 4 Thesauren vgl 8 Kapitel 1 Introduction 47 7 3 Aufbereitung und statistische Analyse der Textinhalte Token Menge von Paaren aus Gewicht H ufigkeit Dokumente r uber 4 0 1 KK Garnelen beutetier 4 0 1 KK Garnelen garnele 6 0 1 4 0 2 KK Garnelen schl sselart 4 0 1 KK Garnelen kologischen 4 0 1 KK Garnelen gef ge 4 0 1 KK Garnelen wattenmeeres 4 0 2 6 0 1 KK Garnelen KK Wattenmeer nutzen 4 0 1 KK Garnelen sommer 4 0 1 KK Garnelen Tabelle 7 1 Beispielhafte Tokenstatistik f r zwei Karteikarten KK denn ber die Schreibweise kann beispielsweise nicht die hnlichkeit zum englischen Be griff Shrimp gemessen werden Das Verfahren liefert hier eine hnlichkeit von 0 dabei sind die Begriffe Shrimp und Garnele hochgradig hnlich Da aber sowohl der Begriff Shrimp als auch Garnele als Suchbegriff zum Thema Garnelen gute Treffer erzielen wird ist es gar nicht sinnvoll einen der beiden Begriffe durch den anderen ersetzen zu las sen sondern beide z
92. geordnete Instanz der Klasse SearchService Von dieser Instanz werden die String Repr sentationen f r die aussagenlo gischen Operatoren ber die Methode getANDOperator und getNOTOperator abgeru fen Aber wie kann der AgentManager die Klasse AgentImplementation instanziieren die er gar nicht kennt Zur L sung dieses Problems ist das Entwurfsmuster einer abstrakten Fabrik verwendet worden Eine abstrakte Fabrik wird durch eine Schnittstelle definiert welche die Implementierung einer Methode zur Erzeugung eines Produktobjektes der Fabrik vorschreibt In einer konkreten Fabrikklasse welche die Schnittstelle implementiert ist dann der Kon struktoraufruf der Produktklasse hinterlegt und das neu erzeugte Objekt als Resultat zur ck geliefert Auf diese Weise k nnen Objekte erzeugt werden ohne dass deren konkrete Klasse bekannt ist Der AgentManager nutzt die Methode generateAgent der Fabrikschnittstelle TAgentFactory zur Erzeugung der Suchagenten Die Klasse ConcreteAgentFactory imple mentiert diese Methode und erzeugt dort neue Instanzen der Klasse AgentImplementation welche sie als Resultat an den AgentManager zur ckliefert Ein Objekt der Fabrikklasse TAgentFactory wird dem AgentManager zu dessen Initialisierungszeitpunkt ber die Me thode setAgentFactory gereicht Die Referenzen auf die Suchagenten werden in der Menge activeAgents des Ag
93. gezeigt werden deren Bearbeitung er bereits abgeschlossen hat Der beschriebene L sungsansatz f r dieses Problem besteht in der Berechnung von inhaltlichen Clustern der Materialien auf dem Desktop und der Beschr nkung der statistischen Suchbegriffsauswahl auf jeweils den Cluster in dem die meisten zuletzt bearbeiteten LAssi Materialien liegen Lokaler Trefferredundanzfilter Der entwickelte Assistent identifiziert einen Treffer anhand seines URL und schlie t auf Basis dieser Idenfifikation die doppelte Anzeige von Treffern aus H ufig werden im Internet dieselben Dokumente auf verschiedenen Servern gespeichert z B Artikel der Online Enzyklop die Wikipedia Daher werden den Sch lern trotz URL Filter gleiche Treffer mehrfach angezeigt Hier w re die Ent wicklung eines lokalen Redundanzfilters denkbar der neue Treffer ab einem gewissen statistischen hnlichkeitswert trotz neuer URL blockt e Minimierung des Deskriptorredundanz in Suchanfragen Wie bereits beschrieben wird bei der Auswahl von Such und Filterbegriffen im aktuellen System nicht ber ck sichtigt dass Deskriptoren in anderen Deskriptoren enthalten und damit in bestimmten Konstellationen irrelevant f r die Trefferausbeute sein k nnen Es w re interessant ein Verfahren zu entwickeln welches diese Deskriptorredundanz in Anfragen minimiert oder ausschlie t 91 10 1 Anregungen f r weitere Entwicklungen e Automatisches Streben nach minimaler Fehlerrate Im aktue
94. gt gt IClusteringFunction lt lt interface gt gt IDistanceFunction HitCluster clusterLabel String HitCluster clusterLabel String clusteredHits Set lt Hit gt HitCluster t getHits Set lt Hit gt EuklidDistanceFunction getClusterLabel String LassiSearchHit GoogleHit YahooHit Abbildung 8 9 Beteiligte Klassen an der Berechnung und Darstellung der Clusteransicht Die Methode generateClusters der ClusterGenerator Instanz liefert eine Menge von Mengen von URLs Jeder URL muss anschlie end auf das zugeh rige Hit Objekt abgebil det werden die Cluster sollen schlie lich Treffer enthalten Hierzu h lt die SemanticCluster View eine Map mit dem Bezeichner urlToHitMap Schl ssel String Wert Hit welche 76 8 3 Implementierung der Trefferansichten einem URL seinen Treffer zuordnet Nach der 1 1 Abbildung der URL Menge auf eine Hit Menge werden die Inhalte der Hit Objekte ber die Methode getContents abgerufen und ber die Methode add an eine Instanz der Klasse DescriptorFactory gereicht Die se berechnet nach Aufruf ihrer Methode calculateDescriptors Deskriptoren f r den Inhalt des aktuellen Hit Clusters Hierf r wird eine f r den Sch ler konfigurierbare Bewertungs funktion f r Token verwendet beispielsweise die absolute gewichtete H ufigkeit Der erste berechnete Deskriptor wird
95. hbar sein werden Auf diese Weise sind die Sch ler in der Lage derlei Cluster zu verwerfen ohne alle Treffer in diesen Clustern gesichtet zu haben 18 4 Skizzierung des zu entwickelnden Systems 4 1 Anforderungsdefinition Auf Basis der gef hrten Sch ler Interviews ist der folgende Katalog funktionaler allgemeiner und technischer Anforderungen an das zu entwickelnde System zusammengestellt worden Funktionale Anforderungen Es muss einem Sch ler mit dem System m glich sein ohne Kenntnis und Nutzung der aussagenlogischen Operatoren pr zise Treffer zu einer Aufgabenstellung zu recher chieren Die Menge der recherchierten Treffer muss f r einen Sch ler mit minimalen Zeitauf wand vollst ndig zu berblicken sein sodass dieser irrelevante Treffer schnell identifi zieren kann und diese nicht komplett sichten muss Minimale Trefferredundanz Ein recherchierter und vom Sch ler ausgewerteter Treffer soll pro Aufgabenstellung nur ein einziges Mal als neuer Treffer angezeigt werden Die Treffermenge muss durch die Entfernung irrelevanter Treffer reduzierbar sein Das System muss den Sch ler bei seiner aktuellen Aufgabenstellung entsprechend sei nes Kenntnisstandes unterst tzen Allgemeine Anforderungen e Das System muss von einem in der Bedienung von zeitgem en Personal Computern erfahrenen Sch ler der siebten Klassenstufe installierbar und ohne umfangreiche Ein arbeitung bedienbar sein e Die Unterst
96. ifikation f r Eclipse Erweiterungspunkt lt annotation gt lt documentation gt The id of the search engine lt documentation gt lt annotation gt lt attribute gt lt attribute name class type string use required gt lt annotation gt lt documentation gt The adapterclass of the search engine lt documentation gt lt appInfo gt lt meta attribute kind java basedOn org lassitools assistantservice tal thn searchservices SearchService gt lt appInfo gt lt annotation gt lt attribute gt lt complexType gt lt element gt lt schema gt Die Spezifikation verlangt von einer diesen Erweiterungspunkt bedienenden Suchmaschi ne die Angabe einer ID und einer Klasse die die Schnittstelle SearchService implementiert Die ID dient als Prim rschl ssle in der Erweiterungspunkttabelle des Eclipse Plattform Die Adapterklasse der Suchmaschine muss sich ebenfalls in einem Eclipse Plugin befinden denn nur Plugins k nnen die Erweiterungspunkte von anderen Plugins bedienen In der Datei plu gin xml des Plugins der Suchmaschine sieht die Bedienung des Erweiterungspunktes wie folgt aus lt xml version 1 0 encoding UTF 8 gt lt eclipse version 3 0 gt lt plugin gt lt extension point org lassitools agentservice searchServices gt lt searchService class org lassitools assistantservice services Yahoo id org lassitools assistantservice Yahoo gt
97. ige Variante hat den Vorteil dass Latenzzeiten z B von entfernten Suchmaschinen f r das Senden von weiteren Anfragen an andere Suchmaschinen genutzt werden k nnen Auf diese Weise kann der Recherchedurch gang des Assistenten beschleunigt werden Daher wird das nebenl ufige Modell im Entwurf umgesetzt An dieser Stelle ist das Konzept eines Reflex Agenten wie es Russel und Norvig beschrei ben sinnvoll einsetzbar Nach Russel und Norvig ist jedes Lebewesen oder jedes Objekt ein Agent das seine Umwelt ber Aktuatoren beeinflusst und ber Sensoren wahrnimmt Ein Reflex Agent ist die einfachste Form eines Agenten Er handelt nur aufgrund seiner aktuellen Wahrnehmung und ist nicht in der Lage einen Wahrnehmungsverlauf zu speichern Es k nnte f r jede Suchmaschine ein Reflex Suchagent bereitgestellt werden Die Umwelt eines solchen Agenten ist die Suchmaschine in der er recherchieren soll Er handelt durch das bermitteln einer Anfrage an die Suchmaschine und nimmt deren Treffer entgegen was der Wahrnehmung seiner Umwelt entspricht Die Anfrage stammt aus der vom QuerySer vice berechneten Anfragenliste die dem Suchagenten bergeben werden muss Nach jedem Recherchedurchgang pr ft der Suchagent ob seine Treffer von anderen Suchagenten bereits erzielt worden sind Falls nicht so werden sie von ihm in die Sammelschale gelegt Allg Reflex Agent Suchagent Empfangen von Sensoren Treffern t t Wie die Welt Tref
98. in Men in die Clusteransicht Diese ist f r dieselben Treffer in der Abbildung 4 4 dargestellt Die Bedienung dieser Ansicht ist mit der der Herkunftsan sicht identisch ffnen der Treffer Verschieben der Treffer in andere Schalen etc Mit Hilfe der Herkunftsansicht erkennen die Sch ler sofort dass sie zur Garnele direkt noch keine Aufgabenstellung bearbeitet haben Daher sind sie auf die Informationen der im Web recherchierten Treffer angewiesen Dank der Clusteransicht erhalten die Sch ler einen berblick ber alle recherchierten Treffer und k nnen diese inhaltlich einordnen Ein kaufsm glichkeiten f r Zierfische und anderes Aquaristikzubeh r sind f r die Aufgabenstel lung der Sch ler irrelevant daher brauchen Sie den Treffer des Clusters Shop nicht zu sich ten Von den restlichen zehn Treffern behandeln wahrscheinlich sechs das Thema Garnele daher werden sie diese in jedem Fall auswerten m ssen Anhand der Anzeige der Titel l sst sich die Anzahl der zu sichtenden Treffer um einen weiteren senken denn der Treffer mit dem Titel Rezepte wird sich h chstwahrscheinlich mit den kulinarischen Qualit ten bestimmter Garnelenarten besch ftigen Die vier Treffer zum Thema Garnelenzucht w ren dann inter 28 4 3 Veranschaulichung anhand eines Fallbeispiels Rechercheassistent Sammelschale M Garnelenzucht 4 Garnele 6 49 Garnele Wikipedia Hausarbeit Die Garnele 4 Tiere in Nord und Ostsee
99. itstellt ist die An zahl und der Wertebereich der Spalten durch das definierende Plugin zu spezifieren Au er dem ist anzugeben ob die Werte in den Spalten obligatorisch oder optional sind Damit zwei Plugins zur Laufzeit miteinander interagieren k nnen ist zum Beispiel immer die Definition einer Schnittstelle erforderlich auf die das Extension Object des erweiterenden Plugins vom eigenen Plugin gecastet werden kann Im Dateisystem wird diese Spezifikation durch eine XML Datei abgebildet Um in die Tabelle eines Erweiterungspunktes aufgenommen zu werden muss ein Plugin diesen bedienen Bedienen hei t dass es in seinen eigenen XML Metadaten Datei plu gin xml mindestens die obligatorischen Werte der Tabellenspalten speichern muss Beim Start der Eclipse Plattform erzeugt diese f r jeden Erweiterungspunkt die entsprechende Ta belle pr ft alle Plugins auf Erweiterungen f r diesen Erweiterungspunkt und tr gt diese gege benenfalls in die Tabelle ein Zum Initialisierungszeitpunkt der Plugins steht so eine gef llte Erweiterungstabelle zur Verf gung deren Inhalte durch das eigene Plugin von der Plattform abgerufen werden k nnen Die Bibliothek kann von der Internetseite http developer yahoo com search bezogen werden 2vel 1 Kapitel 1 Introduction 104 1 2 3 4 5 20 21 22 23 24 25 26 27 28 29 C 2 Adapterklasse YahooService C 2 Adapterklasse Yaho
100. klang Die Idee des Verfahrens ist dass ein guter Kandi dat f r einen Deskriptor des Dokuments A innerhalb von A sehr h ufig vorkommt und in an deren Dokumenten sehr selten enthalten ist Dann scheint dieser Begriff f r A charakteristisch zu sein Das Verfahren basiert auf absoluten H ufigkeiten welche durch einen Korrekturfak tor korrigiert werden sollen um den angesprochenen Nachteil der absoluten H ufigkeiten zu kompensieren Das tf idf Ma f r einen Kandidaten j berechnet sich wie folgt 1 df j Die Funktion rf j liefert die absolute H ufigkeit des Kandidaten j ber alle Dokumente tfidf j tf idf tf 6 2 und die Funktion df j die Anzahl der Dokumente in denen der Kandidat j vorkommt Die Funktion idf j inverse document frequency invertiert die gelieferte Anzahl der Dokumente Auf diese Weise wird die Bewertung von Kandidaten die in vielen Dokumenten vorkommen niedriger angesetzt als die von Kandidaten die in wenigen Dokumenten enthalten sind Weiss et al schlagen eine andere Variante der Funktion id f j vor aps N idf j log TFG 6 3 N ist dabei die Anzahl der Dokumente die insgesamt betrachtet werden Mit der Logarith mierung wird eine Einschr nkung des Ergebnisbereiches erreicht Zur Ber cksichtigung der Gewichtungen einzelner Positionen wird statt der einfachen absoluten H ufigkeit t f j die gewichtete H ufigkeit A j verwendet wie folgende formale Notation zeigt tfidf j h j idf
101. kmalsmatrix f r das Garnelen Beispiel 5 2 Cosinusma und Euklidische Distanz im zweidimensionalen Raum 5 3 Cluster mit zugeh rigem Zentroiden im zweidimensionalen Raum 5 4 Das Prinzip des k Means Verfahren 2 222 2 onen 5 5 Anwendung des k Means Verfahren zur Berechnung von Trefferclustern 6 1 Auswahl von f nf Deskriptoren 2 2 2 2 on n nn 6 2 Beispiele f r LAssi Karteikarten 02020000 7 1 Systementwurf f r den Assistenten 2 2 Common 72 UML Klassendiagramm f r die Schnittstelle IContentProvider 7 3 UML Klassendiagramm f r einen Iterator 2 2 nn ee 7 4 UML Klassendiagramm der Schnittstelle IContent 7 5 Verarbeitungskette zur Generierung von Kandidaten aus Zeichenketten 7 6 Aufspaltung von Zeichenketten durch den Tokenizer 7 7 UML Klassendiagramm der Klasse DescriptorFactory 7 8 Datenstruktur des Parameters tokenRelation IRatorFunction 7 9 UML Diagramm der Klasse QueryService 2 2222 7 10 UML Diagramm der Schnittstelle SearchService 2 2 2 2 7 11 UML Diagramm der Klasse Hit 2 2 2 2 Connor 7 12 Allgemeiner Reflex Agent und Suchagent 2 2 2 222222 7 13 Schema einer Master Slave Architektur 2 2 2 2 2 nme nenn 7 14 UML Diagramm der Klasse AgentManager und ihres Kontextes 7 15 UML Diagramm der Klasse HitServi
102. lben Zustand werden in eine gemeinsame Zustandsmenge gelegt Der Sch ler kann sich die Zustandsmengen jeweils als eine mit Treffern gef llte Schale vorstellen Es gibt daher eine Schale mit Treffern zum Fokus der Aufgabenstellung zu ber cksichtigen de hochwertige Treffer eine Ablageschale f r n tzliche Treffer hochwertige Treffer eine 25 4 2 Entwicklung eines L sungsansatzes Sammelschale in die alle neuen Treffer vom Assistenten gelegt werden neutrale Treffer und eine Abfallschale geringwertige Treffer Die Inhalte der Schalen beziehen sich immer auf die bearbeitete Aufgabenstellung also auf den aktuellen LAssi Desktop Folglich geh ren zu jedem LAssi Desktop eigene Schaleninhalte Die Schaleninhalte k nnen nur vom Assis tenten bereitgestellt werden Es ist also nicht m glich dass der Sch ler z B Bookmarks aus seinem Browser in die Schalen einf gt Wenn der Sch ler dem Assistenten ein bestimmtes externes Dokument z B eine Webseite zug nglich machen will so muss er dieses Dokument als Anhang an ein LAssi Material auf seinem LAssi Desktop h ngen Es ist nicht vorgese hen dass der Sch ler vom aktuellen LAssi Desktop auf die Schaleninhalte anderer Desktops zugreift Schlie lich werden die Inhalte der n tzlichen recherchierten Treffer vom Sch ler in seine LAssi Materialien eingearbeitet Die relevanten LAssi Materialien anderer Desktops werden vom Assistenten wiederum ber die integrierte LAssi Suchmaschine gef
103. le soll kurz skizziert werden wie die Methode arbeitet Die Suchmaschine Yahoo stellt einen Webservice bereit der in Form einer REST Architektur REpresentatio nal State Transfer aufgebaut worden ist REST ist kein ein Produkt oder Standard sondern ein Architekturstil Im REST Stil entworfene Webservices kommunizieren ber das HTTP Protokoll Hyper Text Transfer Protocol Sie wenden die HTTP Operationen GET PUT POST und DELETE auf ber URLs adressierte Ressourcen an ber diese Operationen k nnen Nachrichten an die Ressourcen gesendet werden Eine Nachricht kann prinzipiell in jedem be liebigen Dokumenttyp formatiert sein Die Methode executeQuery instanziiert zuerst ein Objekt der Klasse SearchClient Dieses Objekt ist verantwortlich f r die Kommunikation mit dem Yahoo Webservice Es trans formiert die gestellten Suchanfragen in eine XML Nachricht und sendet diese ber eine GET Operation an den Webservice Ebenso transformiert es die erhaltenen XML Antworten vom Webservice in Java Objekte Der Konstruktor der Klasse erh lt als Parameter eine Applikations ID Diese ID wird von Yahoo f r vergeben und identifiziert das eigene Programm nicht den Benutzer Anschlie end wird die bergebene String Suchanfrage query ber eine Instanz der Klas se WebSearchRequest in Yahoo Syntax abgebildet An diesem Objekt wird ebenfalls zu adressierende Yahoo Index spezifiziert Die Methode executeQuery sucht nur im
104. llen Systementwurf muss der Sch ler selbst eines der vorgestellten statistischen Bewertungsverfahren f r Token absolute gewichtete H ufigkeit oder TF IDF ausw hlen Die Sch ler haben die An passungsm glichkeit im praktischen Systemeinsatz gar nicht bis sehr wenig genutzt Es w re hier sinnvoll wenn der Agent die im vorherigen Kapitel definierte Fehlerrate misst und nach Minimierung des gemessenen Wertes strebt Hierf r K nnte der Assistent z B lernen mit welchem Verfahren er in den meisten Situationen eine minimale Fehlerrate erzielt Kontextglobale Identifizierung geringwertiger Treffer Die freien Interviews haben ergeben dass die Sch ler ihren Assistenten pro Aufgabenstellung ber Trefferbewer tungen immer neu mitteilen m ssen dass sie sich f r Treffer mit bestimmten Inhalten nicht interessieren z B f r Einkaufsangebote von Onlineshops Es w re hier hilfreich wenn der Assistent lernen k nnte was einen geringwertigen Treffer unabh ngig der konkreten Aufgabenstellung ausmacht Auf diese Weise w rden die Sch ler noch ein mal Zeit sparen weil sie ihren Assistenten nicht f r jede Aufgabenstellung neu trainie ren m ssen Experten statt Dokumentsuche In der entwickelten Form sucht der Assistent nach Trefferdokumenten in verschiedenen Suchr umen Die Konsequenz f r den Sch ler hieraus ist die dass er sich mit den gefundenen Treffern den Lernstoff selbst aneig nen muss Im Sinne eines kollaborativen Lernszenari
105. logie die Aufgabe sich mit Lebensr umen und Charakteristika von Garnelen zu besch ftigen Am Ende der Unterrichtseinheit soll ein Vortrag vor der Klasse gehalten werden Der Lehrer gibt die Bearbeitung dieser Aufgabe in drei Schritten vor 1 Beschaffen einer Informationsgrundlage in Zweiergruppen 2 Gemeinsames Festlegen der genauen Vortragsthemen im Klassenverband 3 Ausarbeiten des Vortrages in Zweiergruppen Die Sch ler bilden Zweiergruppen und starten das LAssi System eines Gruppenmitglieds auf einem Schulrechner Anschlie end wird ein neuer LAssi Desktop mit der Bezeichnung Die Garnele angelegt und der LAssi Rechercheassistent durch Mausklick auf eine spezielle Schaltfl che aktiviert Als Suchdienste sind die LAssi Suche und die Web Suchmaschinen Google und Yahoo integriert Da sich noch keine weiteren LAssi Materialien auf dem Desktop befinden berechnet der Rechercheassistent seine erste Anfrage aus der Bezeichnung des Desktops Nachdem er al le Suchmaschinen mit dieser Anfrage befragt und deren Treffer entgegengenommen hat in formiert er die Sch ler ber seine erzielten Treffer z B mit einer aufklappenden Hinweis meldung Diese ffnen danach das Ergebnisfenster des Assistenten Dort wird ihnen stan dardm ig die Herkunftsansicht angezeigt welche als Entwurf in der Abbildung 4 2 dar gestellt ist Die LAssi Suchmaschine wird in dieser Abbildung nicht angezeigt weil sie zu Anfragen des Assistenten keinen Treffer lie
106. ma Wattenmeer recherchieren oder eine ande re inhaltliche Richtung einschlagen zu lassen Um die Richtung beizubehalten m ssen sie nichts tun Zur nderung der Rechercherichtung ist die Angabe anderer hochwertiger zu ber cksichtigender Treffer notwendig Dazu wird der Treffer Lebensraum Wattenmeer in die Ablageschale verschoben und durch z B Garnele Wikipedia und Hausarbeit Die Garnele ersetzt um mehr ber verschiedene Garnelenarten zu erfahren 4 4 Abgrenzung zu verwandten Systemen Worin unterscheidet sich der beschriebene Assistent in seiner Funktionalit t von anderen Suchmaschinen Das Benutzungsmodell der g ngigen Suchmaschinen ist anfrageorientiert entwickelt worden Konkret bedeutet das dass sie vom Sch ler eine Anfrage entgegennehmen und relevante Treffer liefern Der Assistent hingegen unterst tzt den gesamten Recherchepro 30 4 4 Abgrenzung zu verwandten Systemen zess eines Sch lers Er berechnet automatisch kontextsensitive Suchbegriffe aus dem Inhalt des aktuellen LAssi Desktop und der Schale der hochwertigen zu ber cksichtigenden Treffer formuliert Suchanfragen und pr sentiert die erzielten Treffer Anschlie end erwartet er vom Sch ler R ckmeldung ber sowohl die Qualit t seiner Treffer als auch die inhaltliche Rich tung zuk nftiger Recherchen Auf diese Weise sollen unerw nschte Treffer bei zuk nftigen Recherchen durch Berechnung von Filterbegriffen aus der Schale der geringwe
107. meTypeService getInstance getMimeType fileExt in new URL _result getUrl openStream result DocumentReaderService getInstance readDocumentContents mimeType in catch Exception e result clear result add new Pair lt String Double gt 10 0 return result In der Methode getContents die gewichteten Inhalte des Treffers ausgelesen Dazu wird zuerst anhand seiner Dateiendung der MIME Typ des Treffers ber die Singleton Instanz der Klasse MimeTypeService bestimmt Anschlie end wird ber die Klasse java net URL ein InputStream Objekt zur durch den Treffer referenzierten Ressource erzeugt Abschlie end extrahiert die Singleton Instanz der Klasse DocumentReaderService die gewichteten Inhalte aus dem Treffer Diese werden als Methodenresultat zur ckgeliefert 107 C 4 XSD Spezifikation f r Eclipse Erweiterungspunkt C 4 XSD Spezifikation f r Eclipse Erweiterungspunkt Die Gesch ftslogik des Assistenten ist in einem eigenen Eclipse Plugin entwickelt worden Dieses Plugin definiert einen Erweiterungspunkt an dem sich weitere Suchmaschinen an melden k nnen Hinterlegt ist die Spezifikation dieses Erweiterungspunktes in XSD Notation XML Schema Definition in der Datei schema searchservices exsd im Plugin Verzeichnis der Assistentengesch ftslogik Nachfolgend ist die exakte Spezifikation angegeben 6 lt xml version 1 0 encoding U
108. n mit wie vielen Suchbegriffen dein Assistent maximal suchen soll Hierzu klickst du einfach den Schieberegler mit der linken Maustaste an h ltst die Taste gedr ckt und ziehst den Reg ler nach links bzw rechts Die aktuell eingestellte Begriffsanzahl wird dir direkt unter dem Regler angezeigt Im Kasten Finden von Suchbegriff Kombinationen kannst du ausw hlen wieviele W rter dein Assistent maximal miteinander kombinieren soll Der Assistent setzt diese Kombinationen in Anf hrungszeichen und gibt sie bei den Suchmaschinen ein Das bewirkt dass alle Treffer genau diese Wortfolge enthalten m ssen 100 A 4 Fehlermeldungen Optionsgruppe Clusteransicht In dieser Optionsgruppe kannst du eingeben wieviele Cluster dein Assistent in der Clusteran sicht bilden soll A 4 Fehlermeldungen Bei ungew hnlich langen Recherchen solltest du einmal einen Blick auf den Inhalt der Regis terkarte Assistentenfortschritt werfen S mtliche Fehlermeldungen die in Zusammenhang mit den externen Suchmaschinen stehen werden hier angezeigt siehe Abbildung Recherchiere in Yahoo Fehler Suche in Yahoo ist nicht m glich Abbildung A 7 Fehlermeldung des Assistenten In diesem Fall berpr fe bitte die Netzwerkverbindung zur Suchmaschine z B ber das Internet Sollte die Verbindung stabil sein so berpr fe die Erreichbarkeit der Suchmaschine in dem du einfach manuell eine Anfrage an die Suchmaschine ber deinen B
109. n Ergebnislisten von Google oder Yahoo 3 3 Fazit Die befragten Sch ler haben gegen ber Suchmaschinen den Anspruch ihre gew nschten In formationen mit minimalem Zeiteinsatz zu finden Ihre Kernprobleme bestehen im Finden und Formulieren von Suchanfragen sowie im hohen Zeiteinsatz bei der Trefferauswertung Ein f r die Sch ler nutzbarer und bereits bestehender Ansatz zur L sung beider Kernprobleme ist gar nicht gefunden worden Eine Rechtschreibpr fung f r eingegebene Suchbegriffe ist ohne Zweifel sinnvoll um f r 17 3 3 Fazit gut ausgew hlte Suchbegriffe die bestm gliche Trefferausbeute zu erzielen Allerdings stellt bereits die Auswahl von guten Suchbegriffen eine H rde f r die Sch ler dar Die lexikogra fische Vervollst ndigung der Suchbegriffe bei deren Eingabe durch Google Suggest ist hier ebenfalls unzureichend da die Vorschl ge eben nur lexikografisch aber nicht inhaltlich hn lich sind Der im Bezug auf die Unterst tzung zur Wahl von Suchbegriffen fortgeschrittenste Ansatz ist die Web de SmartSearch Dieses Programm schl gt vollkommen neue Suchbegriffe vor So ist es dem Sch ler m glich seine Suchanfragen durch Erg nzung eines oder mehrerer zus tzlicher Suchbegriffe ber den gesamten Suchprozess hinweg zu verbessern an die er selbst gar nicht gedacht hat Google Suggest hingegen leitet nach einmaliger Unterst tzung zur normalen Google Suche weiter Leider ist es mit der Web de SmartSearch
110. n Partitionen berechnet Sygl 12 Seite 107 ff und 6 Seite 460 ff vel 12 Seite 109 ff 36 5 4 Vorstellung des k Means Verfahrens Dieses Verfahren erh lt neben dem Parameter k die zu clusterende Objektmenge und ord net die einzelnen Objekte den k Clustern solange zu bis die optimale Zuordnung gefunden worden ist Die Abbildung Nr 5 4 stellt das Prinzip des k Means Verfahrens dar SEEN Cluster j j Abbildung 5 4 Das Prinzip des k Means Verfahren Texte Weiss et al geben den k Means Algorithmus wie folgt an 1 Distribute all documents among the k bins 2 Compute the mean vector for each bin 3 Compare the vector of each document to the bin means and note the mean vector that is most similar 4 Move all documents to their most similar bins 5 If no document has been moved to a new bin then stop else go to step 2 Das Verfahren durchl uft zwei Phasen eine Initialisierungsphase und eine Clusteringpha se In der Initialisierungsphase werden k leere Cluster erstellt und die zu clusterenden Objekte auf diese leeren Cluster verteilt Prinzipiell kann die Verteilung willk rlich erfolgen Weiss et al schlagen jedoch eine Optimierung vor um die Anzahl der Iterationen des Verfahrens zu verringern Die Optimierung besagt einen Zentroiden ber alle zu clusterenden Objekte zu berechnen Im Anschluss daran ist mit ei
111. nd statistische Analyse der Textinhalte DescriptorFactory add url String weightedStrings Set lt Pair lt String Double gt gt void calculateDescriptor void getDescriptorIterator Iterator lt Descriptor gt clear void ratorFunction lt lt Interface gt gt IRatorFunction tapply globalFrequencies Map lt String Pair lt Set lt Pair lt Integer Double gt gt Integer gt gt numOfDocuments Integer Set lt Pair lt String Double gt gt IfldfRator Abbildung 7 7 UML Klassendiagramm der Klasse DescriptorFactory halten m ssen die Schnittstelle IRatorFunction implementieren Diese Schnittstelle gibt eine einzige Methode apply vor welche eine Menge von gewichteten Token also Deskrip torkandidaten zur ckliefert Die Instanz der Klasse DescriptorFactory sortiert diese Menge anschlie end absteigend nach Tokenbewertung Die vom Optimizer erzeugte Relation wird als Parameter tokenRelation an die IRatorFunction bergeben Die Map Datenstruktur dieses Parameters ist in Java Notation mit Typparametern Generics in der Abbildung 7 8 aufgeschl sselt worden Anzahl der Dokumente Map lt String Pair lt Set lt Double Integer gt Integer gt gt Menge von gewichteten Haufigkeiten Token Schl sselwert Abbildung 7 8 Datenstruktur des Parameters tokenRelation TRatorFunction Uber die Methode getDescriptorlterator der Klasse DescriptorFacto
112. nd welche Schalen gibt es genau Schale f r hochwertige Treffer In diese kommen die Treffer zu deren Inhalt du gern mehr erfahren m chtest Du merkst schon dies ist eine Steuerschale Eine Steuerschale ist eine Schale aus der der Assistent zus tzlich zum Desktop Suchbegriffe heraussucht Wichtig ist dass du die Treffer wieder aus dieser Schale nimmst wenn der Assistent in die inhaltliche Richtung dieser Treffer nicht mehr recherchieren soll Ablageschale Diese Schale ist deine pers nliche Trefferablage Hier kannst du alle Treffer ablegen die du f r die Bearbeitung deiner Aufgabenstellung gebrauchen kannst Der Assistent schaut sich die Treffer in dieser Schale gar nicht an Sammelschale In diese Schale legt der Assistent seine recherchierten Treffer ab Von hieraus musst du sie dann in eine der anderen drei Schalen verschieben Abfallschale In diese Schale kannst du alle Treffer verschieben die dich gar nicht interessieren oder die gar nicht zu deiner Aufgabenstellung passen Diese Schale ist auch eine Steuer schale denn der Assistent w hlt aus dieser Schale ebenfalls Begriffe aus Dies sind aber keine Such sondern Filterbegriffe Er recherchiert nach Treffern die alle Suchbe griffe und keinen Filterbegriff enthalten Soweit so gut Die Treffer kommen also in Schalen Aber wie kann man sich die Schalen inhalte und vor allem die Treffer ansehen A 3 3 Ansicht von Trefferschalen Stelle dir einm
113. ne Hinweismeldung am Bildschirm Er kann die erzielten Treffer nun in jeder beliebigen Schale mit der Herkunfts oder der Clusteransicht ansehen Dazu wird die selektierte Trefferschale aufbereitet z B durch Be rechnung von Clustern in Abh ngigkeit zum Trefferinhalt Clusteransicht oder zur Quell suchmaschine Herkunftsansicht Der Sch ler hat an dieser Stelle die M glichkeit die Treffer zu ffnen auszuwerten und durch Verschieben in andere Schalen zu bewerten Nach einer vom Sch ler definierten Zeitspanne beginnt der Assistent den Rechercheprozess auf Basis des aktuellen LAssi Desktop und der Schaleninhalte von vorne 7 2 Bereitstellung von LAssi Desktop und Schaleninhalten Der Assistent ben tigt f r die Berechnung der Kandidatenmenge f r Such und Filterbegriffe Zeichenketten aus dem Arbeitskontext des Sch lers Wie bereits erl utert sollen diese aus den Inhalten des aktuellen LAssi Desktops aus der Schale der hochwertigen zu ber cksich tigenden und der Schale der geringwertigen Treffer gewonnen werden Das Problem ist dass die LAssi Materialien deren Anh nge und auch die Treffer v llig unterschiedliche Datenfor mate besitzen k nnen Beispielweise speichert ein LAssi Material seinen Zustand in einem XML Format sein Anhang enthalte ein Word und ein PDF Dokument und die geringwerti gen Treffer seien allesamt von der Suchmaschine Yahoo gefundene HTML Seiten Aufgrund der Vielzahl der m glichen Datenformate kann der Assis
114. nelenzucht in S damerika L kolog Folgen der Garnelenzucht Abbildung 10 1 Expertensuche im Klassenverband 10 2 Zusammenfassung Fazit und Ausblick Die Aufgabe dieser Diplomarbeit bestand in der Konzeption einer Rechercheunterst tzung f r Sch ler bei der Suche nach digital verf gbaren Informationen welche in die Lernum gebung LAssi integriert werden sollte Zur L sung dieser Problemstellung ist nach Analyse der aktuellen Recherchesituation von Sch lern ein Prozessmodell eines software gest tzten Rechercheprozesses f r Sch ler entwickelt worden Au erdem wurde ein Anfragenkatalog definiert welcher Vorgaben an das zu konzipierende Software System stellt Auf Basis die ser Anforderungen und des entwickelten Prozessmodells wurde eine Assistenten Software f r Recherchen entworfen und in das LAssi System implementiert Die Leistung dieses As sistenten wurde anhand messbarer Kennzahlen und anhand eines praktischen Schuleinsatzes bewertet Abschlie end sind kurz R ume f r weitere Arbeiten skizziert worden Mit dem Ansatz eines dezentralen lokalen Assistenten kann die Recherchesituation von Sch lern stark optimiert werden Es ist den Sch lern mit dem entwickelten System m glich ihren Suchprozess ohne Kenntnis aussagenlogischer Operatoren und konkreter Anfragensyn tax einer Suchmaschine zu steuern Die fehlende Steuerungsfunktion bei Suchmaschinen z B in Form von ber die grafische Oberfl che bedienbaren Filtern stellt f
115. nem hnlichkeits bzw Distanzma die hnlich keit oder Distanz eines jeden Vektors zum Zentroiden zu bestimmen und in einer Liste zu erfassen Abschlie end wird diese Liste absteigend nach hnlichkeiten bzw aufsteigend nach Distanzen sortiert und in k Abschnitte geteilt Diese k Abschnitte entsprechen den Initialisie rungsclustern Es beginnt nun die Clusteringphase im ersten Schritt des Verfahrens mit der Berechnung der Repr sentanten mean vector f r jeden der k Cluster Im Anschluss daran wird f r 0Entnommen und geringf gig modifiziert aus 12 Seite 110 lyg 12 Seite 109 ff 37 5 4 Vorstellung des k Means Verfahrens jeden Vektor der k Cluster die hnlichkeit bzw die Distanz zu allen k Repr sentanten be rechnet Danach verschiebt das Verfahren jeden Vektor in den Cluster des hnlichsten bzw des dichtesten Repr sentanten es sei denn der Vektor befindet sich bereits dort Wenn keine Vektoren mehr verschoben worden sind ist die optimale L sung erreicht Ansonsten beginnt das Verfahren erneut mit der Berechnung der neuen Repr sentanten um eine neue Iteration zu beginnen Das k Means Verfahren wird in der Literatur f r seine Anschaulichkeit und seine guten Ergebnisse gelobt Ein weiterer gro er Vorteil des Verfahrens ist seine lineare Laufzeitkom plexit t Als Nachteil des Verfahrens ist zu nennen dass die Anzahl der zu berechnenden Cluster vorgegeben werden muss Zu Beachten ist in der
116. ng 7 13 Es gibt einen zentralen Master Agenten der die Suchagenten Slaves nach einer bestimmten Zeitdauer erzeugt ihnen eine Suchmaschine zuordnet und sie startet Anschlie end wartet er bis alle Suchagenten ihre Recherchen also ihre Jobs abge schlossen haben und terminiert sind Jetzt berechnet er den Zeitpunkt des n chsten Durch gangs Wenn der berechnete Zeitpunkt erreicht ist beginnt er mit der erneuten Erzeugung der Suchagenten Schaltet der Sch ler das gesamte System ab so ist es die Aufgabe des Master Agenten den einzelnen Suchagenten ein Signal zum Beenden der Suche zu senden Die software technische Umsetzung der Interaktion des Assistenten mit den Suchmaschi nen ist in UML Notation in der Abbildung 7 14 angegeben Die Funktion des Master Agenten wird durch das Singleton Objekt der Klasse AgentManager ausge bt An ihm ist es m glich Suchmaschinen und Instanzen der Schnittstelle IResultListener ber entsprechende add und remove Methoden an bzw abzumelden Ein IResultListener ist z B ein Objekt welches eine Bildschirmmeldung nach Abschluss eines Recherchedurchgangs ausgibt Der AgentManager startet den ersten Recherchedurchlauf nach Aufruf der Methode start Zuerst m ssen die Anfragen im QueryService berechnet und dann vom AgentManager abgerufen werden Anschlie end erzeugt der AgentManager die Suchagenten Da die Such agenten auf Basis verschiedener
117. nge Um eine Suchanfrage zu berechnen die dem Sch ler Treffer zu seiner aktuellen Aufgaben stellung liefert m ssen die Suchbegriffkandidaten in inhaltlichem Zusammenhang zur Aufga benstellung des Sch lers stehen Lernmaterialien und Quellen welche der Sch ler in Zusam menhang mit seiner Aufgabenstellung bringt bieten sich daher als Quelle von Kandidaten f r Suchbegriffe an und finden sich auf dem LAssi Desktop zur Aufgabe Die Berechnung von konkreten Kandidaten aus dem Inhalt des LAssi Desktops l sst sich auf das Problem der Be rechnung von charakteristischen Begriffen f r eine Menge von Texten zur ckf hren Dieses Problem kann mit statistischen Verfahren aus der Disziplin Information Retrieval auf Basis verschiedener Worth ufigkeitsans tze gel st werden Die Verwendung von Suchbegriffen aus dem Arbeitskontext des Sch lers bedeutet aller dings nicht zwingend dass alle erzielten Treffer f r den Sch ler bei der Bearbeitung seiner Aufgabenstellung n tzlich sind Au erdem soll der Sch ler w hrend des gesamten Bearbei tungsprozesses seiner Aufgabenstellung unterst tzt werden und es ist zu erwarten dass dazu mehrere Recherchen in unterschiedliche inhaltliche Richtungen notwendig sind Daher muss 21 4 2 Entwicklung eines L sungsansatzes der Sch ler die M glichkeit haben seinen Assistenten bei der Berechnung von Suchbegrif fen zu steuern Ein sehr anschaulicher Ansatz w re ein Bewertungssystem f r Treffer v
118. nicht dokumentiert ist kann an dieser Stelle ber die Gr nde f r dieses Resultat nur spekuliert werden Im Prinzip nutzt Goo gle als Bewertungskriterium eines Treffers haupts chlich die Anzahl anderer Webseiten die diesen Treffer ber einen Link referenzieren Oft verlinkte Webseiten erscheinen daher weit oben auf der Trefferliste Dahinter steht die Annahme dass der Inhalt h ufig referenzierter Dokumente wahrscheinlich f r viele Benutzer interessant ist Gerade die Anbieter kommer zieller Inhalte schalten h ufig Werbelinks zum eigenen Angebot auf anderen Webseiten z B mit einem Werbebanner Deshalb besitzen viele andere Seiten Referenzen auf das kommer zielle Angebot und beeinflussen dessen Bewertung durch Google Es stellt sich die Frage welche Fehlerrate bzw Precision Google und Yahoo bei pr ziseren Suchbegriffen statt der Filterbegriffe in Anfrage 3 und 4 liefern Daher sollen die Werte des Assistenten denen von Google und Yahoo bei pr ziseren Suchbegriffen in einem zweiten Ver such gegen bergestellt werden Anfrage 3 und 4 werden daher im zweiten Versuch durch die folgenden Anfragen ersetzt e Nordseegarnelen Anfrage 5 e Zwerggarnelen Anfrage 6 Die Messung wird f r die Suchmaschinen mit den neuen Anfragen insg also Anfragen 1 2 5 6 wiederholt Es werden wieder die ersten 37 Treffer betrachtet Die Ergebnisse sind in der Abbildung 9 2 dargestellt Das Ergebnis der ersten Messreihe hat sich als relati
119. nstellung lieferte Wie ist das zu erkl ren Die Analyse eines beispiel haften Sch lerdesktops hat ergeben dass sich die vom Sch ler erstellten LAssi Materialien auf einen eng abgegrenzten Themenbereich der Aufgabenstellung beziehen Ein Beispiel f r den Inhalt eines Sch lerdesktops zeigt die Abbildung 9 6 Zum Verst ndnis sei gesagt dass LAssi Materialstapel spezielle LAssi Materialien sind welche eine Liste von anderen LAssi Materialien beinhalten Die Sch ler sammeln ihre LAssi Materialien zu einem Themengebiet bzw einer Teilaufgabe ihrer Aufgabenstellung in LAssi Materialstapeln Zu Teilaufgaben die die Sch ler bereits bearbeitet haben existieren umfangreichere LAssi Materialien als zu offe nen Teilaufgaben Daher erhalten Token von den abgeschlossenen Teilaufgaben st rker Einzug in die h ufigkeitsbasierte Statistik zur Auswahl von Suchbegriffen als Token von nicht abge schlossenen Teilaufgaben Sie sind schlicht fter auf den LAssi Materialien notiert worden Aus dieser Beobachtung erschlie t sich ein weiteres Problem der Assistent gewinnt seine Suchbegriffe aus dem gesamten Inhalt des aktuellen LAssi Desktops und den hochwertigen zu ber cksichtigenden Treffern Daher kann der Fall eintreten dass der Assistent mit Suchbe griffen aus verschiedenen Themengebieten gleichzeitig sucht z B mit der Anfrage garnele UND lebensr ume UND nordsee UND ostsee UND wirtschaftliche nutzung UND garne lenzucht UND aquaristik UND sys
120. nur m glich Positivkriterien in Form von zus tzlichen Suchbegriffen anzugeben Ein Sch ler kann dieses System nicht anhand eines unbrauchbaren Treffers anweisen alle restlichen derartigen Treffer aus der Ergebnismenge zu entfernen Au erdem entbindet keiner der vorgestellten Ans tze den Sch ler von der Notwendigkeit mindestens eine initiale Suchanfrage zu formulieren Ein besonders interessanter Ansatz im Hinblick auf die Sch lerunterst tzung bei der For mulierung der Suchanfragen ist das MindSet System der Suchmaschine Yahoo Der Vorteil des Systems ist dass ein Sch ler ohne nderung seiner Suchanfrage die Sortierung der Treffer ndern kann um die f r ihn vor dem Hintergrund seiner Aufgabenstellung relevanten Treffer zuerst angezeigt zu bekommen Leider ist die Einteilung aller Treffer beliebiger Suchanfragen in die zwei Kategorien Shopping und Research statisch vorgeben und kann abh ngig von der gestellten Suchanfrage nicht ge ndert werden Die Nutzung von Clustern zur Strukturierung der angezeigten Treffermenge wie Grokker sie anbietet k nnte den ben tigten Zeitaufand der Sch ler zur Sichtung der Treffer deutlich senken Die Sch ler m ssten nicht Treffer in Clustern sichten deren Bezeichnung auf einen fehlenden Bezug zur Aufgabenstellung hindeutet Au erdem k nnen sie davon ausgehen dass die restlichen Treffer eines Clusters mit wenigen gesichteten und unpassenden Treffern sehr wahrscheinlich ebenfalls unbrauc
121. nwerkzeuge werden im LAssi System als Materialien bezeichnet z B ein Karteikartenmaterial als Erzeugnis eines Karteikarteneditors Um die werkzeug bergreifende Arbeit mit Materialien zu erm glichen verf gt das LAssi System ber ein eigenes Desktop Konzept Hinter diesem Konzept steckt die Metapher ei nes Schreibtisches auf dem Materialien die zur Bearbeitung einer Aufgabenstellung relevant sind abgelegt werden k nnen Anders als in g ngigen Desktop Betriebssystemen wie Mi crosoft Windows oder Apple MacOS existiert in einem LAssi System nicht zwangsl ufig ein einziger Desktop sondern nach dem LAssi Benutzungsmodell genau einer f r jede Auf gabenstellung die vom Sch ler bearbeitet wird W hrend der gesamten Laufzeit des LAssi Systems ist immer ein einziger Desktop ge ffnet Beim Anlegen eines neuen Desktops muss der Sch ler eine Bezeichnung f r den neuen Desktop angeben Die LAssi Desktops dienen zum einen als Austauschplattform f r Materialien zwischen einzelnen Lernwerkzeugen und zum anderen als R ume f r elementare Strukturierungen z B die Bildung von Gruppen zusammengeh riger Materialien in einem Stapel Einige Materia lien wie z B Karteikarten k nnen Referenzen auf andere Materialien oder auf Dateien in einem lokalen z B ein Microsoft Word Dokument oder entfernten Dateisystem z B eine 20 4 2 Entwicklung eines L sungsansatzes Webseite besitzen Daher k nnen sowohl alle LAssi Materialien als auch E
122. oService Die Klasse YahooService adaptiert die Schnittstelle SearchService des Assistenten auf die Funktionalit t der Yahoo Bibliothek Die Klassen SearchClient WebSearchRequest und WebSearchResults stammen aus dieser Bibliothek Im folgenden Listing ist exempla risch die Methode executeQuery angegeben da diese den Kommunikationsprozess mit der Suchmaschine Yahoo kapselt public class Yahoo implements SearchService public List lt Hit gt executeQuery final String query final int maxResultNumber Create the search client SearchClient client new SearchClient APP_ID Create the web search request WebSearchRequest request new WebSearchRequest query request setResults maxResultNumber request setCountry de request setLanguage de request setParameter region de List lt Hit gt result new ArrayList lt Hit gt available true try Execute the search WebSearchResults results client webSearch request Iterate over the results for int i 0 i lt results listResults length amp available i WebSearchResult result results listResults i result add new YahooHit result this catch com yahoo search SearchException e e printStackTrace available false catch IOException e available false return result 105 C 2 Adapterklasse YahooService An dieser Stel
123. on automatisch ge nerierten Suchanfragen In so einem System k nnen Treffer vom Sch ler z B als brauch bar oder unbrauchbar markiert werden Die Konsequenz der Bewertungen w re dass der Assistent mit seinen zuk nftigen Vorschl gen f r Anfragen das Erzielen von brauchbaren Treffern beg nstigt und von unbrauchbaren vermeidet Hierf r k nnte der Assistent aus den brauchbaren Treffern ebenso wie aus dem Inhalt des aktuellen LAssi Desktops Kandidaten f r Suchbegriffe extrahieren Aus unbrauchbaren Treffern w ren auf dieselbe Weise Filter begriffe extrahierbar Das sind Begriffe die mit dem logischen Operator NICHT versehen an die Suchanfrage angeh ngt werden Hiermit wird erreicht dass nur Treffer erzielt werden welche frei von Filterbegriffen sind Ein Modell f r den Rechercheprozess mit Unterst tzung eines solchen Assistenten ist in der Abbildung 4 1 dargestellt Treffer bewertung Archivierung durch den der Treffer Sch ler C D Bewertungsanalyse Recherche von Treffem B Berechnung von Suchanfragen Abbildung 4 1 Modell eines unterst tzten Rechercheprozesses f r Sch ler Die Ein und Austrittsschritte des Prozesses sind fett umrandet Der Prozess beginnt mit der Berechnung der ersten Suchanfrage Schritt A deren Suchbegriffe aus Materialien vom aktuellen LAssi Desktop stammen Sind keine Materialien vorhanden so wird der Prozess auch nicht fortgese
124. os in dem die Sch ler sich ge genseitig Wissen vermitteln w re eine Expertensuche u erst sinnvoll Expertensuche hei t dass der Assistent dem Sch ler sagen kann welche Mitsch ler sich schon einmal mit einer Aufgabenstellung besch ftigt haben die einen inhaltlichen Bezug zur aktu ellen Aufgabenstellung des Sch lers hat Auf diese Weise wei der Sch ler welche Mitsch lerin oder welchen Mitsch ler er bei Verst ndnisfragen ansprechen kann Rea lisiert werden k nnte eine solche Funktion in einem Computernetzwerk mit mehreren aktiven LAssi Lernumgebungen welche ber einen Freigabemechanismus f r LAssi Materialien verf gen Au erdem muss jede LAssi Instanz den Namen ihres jeweiligen Sch lers kennen Der Assistent ben tigt abschlie end eine Suchmaschine welche die freigebenen LAssi Materialien in einem solchen LAssi Netzwerk durchsuchen kann Eine Skizzierung des Ergebnisses einer solchen Suche zum Garnelen Beispiel ist in der Abbildung 10 1 dargestellt Der Assistent weist den Sch ler darauf hin dass seine Mitsch ler Anna und Sven sich ebenfalls in anderen Zusammenh ngen mit Garnelen besch ftigt haben 92 10 2 Zusammenfassung Fazit und Ausblick Rechercheassistent Aktuelle Trefferschale Sammelschale Meine Suchergebnisse Google 8 xv Yahoo 3 LA LAssi Umgebung 1 8 Mitsch ler 2 mm Sven E Fischfang in Nordfriesland Inseltourismus in Nordfriesland m Anna E Gar
125. plementieren und sich ber die Methode addHitServiceChangeListener am HitService anmelden Sobald eine Ver nderung an den Trefferschalen vorgenommen wird z B durch Hinzuf gen eines neuen Treffers durch einen Suchagenten wird die Methode hitServiceStateChanged aller ange meldeten HitServiceChangeListener Instanzen vom HitService aufgerufen Beispiele f r HitServiceChangeLbistener Instanzen sind die zwei Trefferansichten Sie rufen nach einer Zustands nderung einer Schale die aktuell vom Sch ler selektierte Schale ab bereiten diese auf und stellen sie dar Die Singleton Instanz der Klasse HitService garantiert dass ein Treffer mit einer URL nicht mehrfach gefunden wird Die einzelnen Suchagenten rufen die Methode addHit zum Speichern eines Treffers auf Da die Suchagenten nebenl ufig arbeiten m ssen alle Metho denaufrufe auf dem HitService zur Konsistenzgarantie synchronisiert erfolgen Es muss al so sichergestellt werden dass zwei Agenten nicht gleichzeitig eine Methode des HitService aufrufen k nnen Ist ein Treffer mit einem bestimmten URL bereits in einer Schale enthalten so muss eine IsAlreadyIn Ausnahme geworfen werden Der jeweilige Suchagent erkennt anhand dieser Ausnahme dass ein anderer Suchagent bereits diesen Treffer recherchiert hat Daher muss er die Recherche fortsetzen um einen weiteren Treffer zu erzielen den er in den HitService einf gen kann
126. r Karteikarte wird mit 6 0 Punkten gewichtet und die Texteintr ge mit 4 0 Punkten Bewertung 6 0 Punkte Titel Tokenlisten ee 6 0 Pkte i i arnelen Garnelen i Als R uber und als Beutetier ist die Garnele eine Schl sselart Tokenizer Bewertung 4 0 Pkte im kologischen Gef ge des Wattenmeeres 1 als _ Gamelen nutzen das Wattenmeer nur im Sommer e E 2 Ge er Bewertung 4 0 Punkte Texteintrag ee Abbildung 7 6 Aufspaltung von Zeichenketten durch den Tokenizer Die Aufgabe des Optimizers besteht in der Reduktion der erhaltenen Tokenlisten Dazu 46 7 3 Aufbereitung und statistische Analyse der Textinhalte werden die Stoppw rter pauschal aus den Listen entfernt z B alle bestimmten und unbe stimmten Artikel im Deutschen Token mit einer L nge von weniger als drei Zeichen werden ebenfalls pauschal gefiltert weil sie in der Regel als Suchbegriffe ungeeignet sind H ufig treten dieselben W rter in verschiedenen Schreibweisen auf z B ein Verb in verschiedenen Zeitformen oder ein Nomen in verschiedenen F llen Algorithmen zur Erkennung einer ge meinsamen Grundform dieser Token werden als Stemming Verfahren bezeichnet Stemming Verfahren lassen sich als statisch oder dynamisch klassifizieren Ein statisches Verfahren ist z B das Nachschlagen einer Grundform eines Token in einem Thesaurus Thesauren m ssen allerdings erst einmal angelegt werden und
127. r Baumansicht dargestellt werden sollen Deswei teren wird ein Objekt einer Klasse ben tigt die die Schnittstelle IContentProvider imple mentiert nicht zu verwechseln mit den Contentprovidern des Assistenten Dieses Objekt ist f r die Bereitstellung der Objektstruktur des Baumes zust ndig Anders als der TreeView er kennt dieses Objekt die Typen der darzustellenden Objekte Die grafische Darstellung der Knoten und Bl tter des Baumes stellt ein Objekt einer Klasse bereit welche die Schnittstelle org eclipse jface viewers IBaseLabelProvider implementiert Dieses Objekt liefert z B die Darstellung der Knoten bzw Blattbeschriftung Das Eclipse Framework RCP Rich Client Platform liefert f r die Trefferansichten gut ein setzbare Standardimplementierungen f r beide Schnittstellen die Klassen WorkbenchLabel Provider und BaseWorkbenchContentProvider Das Objekt der Klasse BaseWorkbench ContentProvider fragt direkt an den Objekten der anzuzeigenden Struktur ihr Adapterobjekt ab Daher m ssen diese die Schnittstelle IAdaptable implementieren welche die Methode getAdapter definiert Hier liefern die Objekte dann ihren Adapter zur ck der ber den Eclipse Adaptermanager erzeugt wird 8 3 Implementierung der Trefferansichten Der WorkbenchLabelProvider hat die Aufgabe die Darstellung der Knotenbezeichnun gen zu formatieren In beiden Ansichten sollen die Titel der ungelesenen Treff
128. r viele Sch ler ei ne schwer berwindbare H rde dar Die mit dem Assistenten erzielten Treffer werden zus tz lich automatisch persistiert womit er eine Archivierungsfunktion bernimmt Dennoch birgt dieser Ansatz noch viel Potential f r weitere Entwicklungen Besonders die automatische Er kennung von Themengebieten innerhalb einer Aufgabenstellung birgt ein gro es Optimie rungspotential der Trefferqualit t des Assistenten da so ein noch feinerer thematischer Bezug der Treffer des Assistenten zur aktuellen Teilaufgabenstellung besteht 93 A Benutzerhandbuch Um die Aufgaben aus deinem Schulunterricht zu l sen musst du sicher h ufig im World Wide Web recherchieren oder Dann hast du bestimmt auch schon die Erfahrung gemacht dass es ganz sch n schwierig sein kann die richtigen Suchbegriffe f r die Suchmaschinen im Web zu finden richtig Und zu guter Letzt nimmt die Auswertung der langen Trefferlisten auch viel deiner Zeit in Anspruch stimmts Dein LAssi System kann dich ab sofort bei deinen Recherchen unterst tzen Es beinhaltet einen Assistenten der f r dich automatisch zu deiner aktuellen Aufgabenstellung recherchiert Dieses Handbuch stellt dir deinen Rechercheassis tenten vor und zeigt dir wie du mit ihm arbeiten kannst A 1 Ablaufbedingungen Der entwickelte Rechercheassistent ben tigt LAssi Desktop in der Version 2 1 Wie die LAssi Umgebung auch ist der Assistent unter den Betriebssystemen Windows 98 ME 2000 un
129. rate und Precision welches die Sch ler zu Beginn ihrer Einarbeitung in ein neues Themengebiet schlicht nicht verf gen Daher ist der Assistent auch nicht als Alternative sondern als Erg nzung zur Nut zung von Google und Yahoo zu sehen Der Assistent hilft den Sch lern sich eine Informa tionsgrundlage zu beschaffen Bei der Auswertung und Verarbeitung der Assistententreffer ergeben sich meistens konkrete Fragestellungen wie z B Wie entwickelt sich denn eigent lich der Bestand der Nordseegarnele crangon crangon in der Nordsee ber die letzten Jahre Aus diesen Fragestellungen k nnen die Sch ler selbst Suchbegriffe ableiten mit denen sie ber Google eine pr zise Trefferausbeute erhalten z B mit der Anfrage bestand crangon crangon nordsee Abschlie end soll noch einmal darauf hingewiesen werden dass in diesem Szenario nur die Rechercheleistung des Assistenten gemessen worden ist Sein Mehrwert durch die integrier te LAssi Volltextsuche Erinnerungsfunktion und die zwei Trefferansichten Herkunfts und Clusteransicht sowie durch die automatische Archivierung der erzielten Treffer sind nicht betrachtet worden 9 3 Bewertung anhand eines Schuleinsatzes F nf Sch ler der befragten achten Klasse haben sich bereit erkl rt w hrend einer vollst ndi gen Unterrichtseinheit den Assistenten auszuprobieren Dazu ist ihnen eine Vorabversion be reitgestellt worden welche noch nicht ber die Clusteransicht und persistente T
130. refferschalen verf gt Als Suchmaschinen wurden die LAssi Volltextsuche und die Suchmaschine Yahoo integriert Zum Abschluss der Unterrichtseinheit nach ca f nf Schulwochen sind die Sch ler mit einem Fragebogen und in freien Interviews zu ihrem Eindruck von dem Assistenten be fragt worden 84 9 3 Bewertung anhand eines Schuleinsatzes Von allen befragten Sch lern hat der Assistent f r seine Leistung die Schulnote 2 erhalten Sie best tigten die hohe Anzahl hochwertiger Treffer die ihnen ihr Assistent geliefert hat Negativ sind ihnen die zeitweise langen Recherchezeiten und die in der Vorabversion fehlen de Schalenpersistenz aufgefallen Die Sch ler best tigten die F higkeit des Assistenten sich trainieren zu lassen Konkret bedeutet das dass die Sch ler die Rechercherichtung des As sistenten durch Trefferbewertungen gut steuern konnten und f r sie gut brauchbare Treffer erzielt worden sind Besonders hervorgehoben haben die Sch ler die Zeitersparnis durch die Suche des Assis tenten im Hintergrund W hrend sie an ihrer Aufgabenstellung gearbeitet haben recherchierte der Assistent automatisch Treffer und pr sentierte diese nach Abschluss seiner Recherchen In der Zeit in der die Sch ler die Treffer des Assistenten ausgewertet und deren Informatio nen auf LAssi Materialien bertragen haben recherchierte der Assistent weitere hochwertige Treffer f r die Sch ler Auf diese Weise mussten sie ihren Arbeitsproze
131. rg Abbildung 3 4 Benutzeroberfl che von Yahoo Mindset 3 2 3 Benutzereinfluss auf die Trefferdarstellung Je k rzer eine Trefferliste ist desto schneller kann ein Sch ler diese vollst ndig berblicken und ihre Eintr ge sichten Die Bestimmung eines Trefferranges soll implizit eine Verk rzung der Trefferliste vornehmen da z B die befragten Sch ler nach eigenen Angaben maximal die ersten 50 von mehreren tausend Treffern sichten Sie verlassen sich auf die Relevanzbewer tung durch die genutzte Suchmaschine Die Meta Suchmaschine Grokker des Unternehmens Groxis Inc verfolgt einen anderen An satz zur Reduktion der Trefferliste Eine Meta Suchmaschine ist eine Suchmaschine welche nicht nur oder berhaupt nicht in einem eigenen Index nach Treffern zu einer Anfrage sucht sondern diese Anfrage an andere Suchmaschinen weiterleitet und deren Ergebnisse pr sen tiert Grokker berechnet Gruppen von inhaltlich hnlichen Treffern Diese Gruppen werden als Cluster bezeichnet und in Abh ngigkeit der enthaltenen Treffer benannt In der Imple mentierung von Grokker kann ein Treffer in mehreren Clustern enthalten sein Der Benutzer sichtet nur die Treffer der Cluster die ihrer Bezeichnung nach relevant zu sein scheinen Dazu fordert Grokker wie auch Google oder Yahoo vom Benutzer die Eingabe einer Suchanfrage Anschlie end leitet es die eingegebene Suchanfrage an externe Suchmaschi nen weiter und sammelt eine bestimmte Maximalanzahl von Tre
132. riante hat den Nachteil dass das Eingreifen des Sch lers verlangt wird Sinnvoller ist es die ungelesenen Treffer aus der Sammelschale durch die neu recherchierten Treffer zu ersetzen Erst wenn alle Treffer der Sammelschale als gelesen mar kiert sind wird der Recherchevorgang durch den Assistenten abgebrochen Grunds tzlich stellt sich die Frage welchen Mehrwert persistente Trefferschalen f r den Sch ler haben W hrend der Bearbeitung einer Aufgabenstellung in mehreren Sitzungen mit dem LAssi System haben sie sicher einen hohen Mehrwert da der Assistent die Treffer des Sch lers archiviert Der Sch ler kann seine Quellen so komfortabel und unabh ngig vom 26 4 3 Veranschaulichung anhand eines Fallbeispiels Computer an dem er arbeitet nutzen denn er tr gt die Quellen auf seinem LAssi USB Stick mit sich Sie kosten damit Speicherplatz auf dem Stick Nach Abschluss einer Aufgabenstel lung ist dies aber nicht mehr zwingend erforderlich denn der Sch ler hat dann das relevante Wissen aus den Treffern auf LAssi Materialien extrahiert und aufbereitet Es muss also eine M glichkeit existieren die persistenten Schaleninhalte vom LAssi USB Stick l schen Die Frage des Nutzens von persistierten Trefferschalen ist damit aber noch nicht abschlie end gekl rt und bietet Raum f r weitere Untersuchungen 4 3 Veranschaulichung anhand eines Fallbeispiels In der befragten achten Klasse erhalten die Sch ler von ihrem Lehrer im Fach Bio
133. riptors ber die Methode getURL sOfAnalysedContents kann eine Menge von URLs aller bereitgestellten IContent Instanzen der Contentprovider abgerufen werden Diese Menge ist notwendig damit bei der Trefferre cherche in den Suchmaschinen bereits gefundene Treffer nicht erneut gefunden werden 55 7 5 Interaktion mit integrierten Suchmaschinen 7 5 Interaktion mit integrierten Suchmaschinen 7 5 1 Repr sentation einer Suchmaschine und eines Treffers Um die Interaktion des Assistenten mit den integrierten Suchmaschinen zu kl ren muss zuerst die Repr sentation einer Suchmaschine und ihrer Treffer im Assistenten entworfen werden Interaktion meint in diesem Zusammenhang konkret das Senden von Suchanfragen an die Suchmaschine und das Empfangen sowie das Verwalten ihrer Treffer lt lt interface gt gt SearchService getANDOperator String getNOTOperator String getName String t executeQuery query String maxHitNumber int List lt Hit gt isAvailable boolean 1 l 1 GoogleService LassiSearchService Abbildung 7 10 UML Diagramm der Schnittstelle SearchService Eine Suchmaschine wird durch die Schnittstelle SearchService repr sentiert deren Ent wurf in UML Notation in der Abbildung 7 10 dargestellt ist Die Syntax in der Suchanfragen formuliert werden unterscheidet sich von Suchmaschine zu Suchmaschine Beispiel UND AND oder f r das logische UND Dah
134. rowser sendest A 5 Wiederanlaufbedingungen Sollte das Programm z B durch einen Stromausfall unterbrochen werden so existieren keine besonderen Wiederanlaufbedingungen 101 B Protokolle der statistischen Untersuchungen Die folgenden Suchanfragen sind am 13 02 2007 im Zeitraum von 16 00Uhr bis abgesendet worden 18 00Uhr Produkt Durchgang i Anfrage ti gt hbt h preci fr Assistent TF IDF 1 10 1 9 0 9 0 1 2 10 2 8 0 8 0 2 3 8 2 6 0 75 0 25 4 9 3 6 0 67 0 33 Summe Mittel 37 8 29 0 78 0 2 Produkt Durchgang i Anfrage t gt hbt h prec fri Assistent TF 1 10 1 9 0 9 0 1 2 9 2 7 0 78 0 21 3 9 1 8 0 89 0 11 4 9 2 7 0 78 0 22 Summe Mittel 37 6 31 0 84 0 15 Produkt Durchgang i Anfrage ti gti hbt h preci fri Yahoo 1 37 d 30 0 81 0 19 2 37 23 14 0 38 0 62 3 37 5 32 0 86 0 14 4 37 20 17 0 46 0 54 Mittel 37 13 75 23 25 0 59 0 31 Produkt Durchgang i Anfrage t gti hbt h preci fri Yahoo 1 37 Fi 30 0 81 0 19 2 37 23 14 0 38 0 62 5 37 3 34 0 92 0 08 6 37 10 27 0 73 0 27 Mittel 37 10 75 26 25 0 67 0 23 102 B Protokolle der statistischen Untersuchungen Produkt Durchgang i Anfrage ti gti hbt h preci fri Google 1 37 20 17 0 46 0 54 2 37 23 14 0 38 0 62 3 37 19 18 0 49 0 51 4 37 23 14 0 38 0 62 Mittel 37 21
135. rtigen Treffer vermieden werden Durch die automatische Persistenz der Treffer unterst tzt der Assistent den Sch ler ebenfalls bei der Archivierung der erzielten Treffer und bietet durch die verschie denen Darstellungen der Schaleninhalte gleichzeitig eine Strukturierungsunterst tzung bei der Auswertung der Treffer Durch die Integration der LAssi Volltextsuche ist es dem Assistenten m glich in anderen m glicherweise bereits gel sten Aufgabenstellungen zu recherchieren Er kann den Sch ler an dessen eigenes Wissen erinnern und ihn dadurch dabei unterst tzen seine bereits erarbeite ten L sungen in neue Aufgabenstellungen einzubringen Eine Desktop Volltextsuche wie z B Google Desktop hat es schwer diesem Anspruch zu gen gen denn Google Desktop findet nur einzelne Dokumente auf dem lokalen Computer Die LAssi Suche ist zwar auch eine lo kale Volltextsuche genau wie Google Desktop aber aufgrund des LAssi Desktop Konzeptes findet die LAssi Suche Mengen von Dokumenten LAssi Desktops mit LAssi Materialien deren Inhalte in einer semantischen Beziehung zueinander stehen Hierf r sind keine seman tischen Annotationen durch den Sch ler notwendig Er muss z B an keiner Stelle im LAssi System angeben dass ein bestimmter Karteikartenstapel zur Garnelen Aufgabe geh rt son dern er legt den Stapel einfach auf dem zugeh rigen Desktop an Daraus ergibt sich automa tisch eine semantische Verbindung Weil der Assistent als Meta Suchm
136. rung der Trefferansichten lt lt interface gt gt IHitView createPartControl parent Composite void refresh hitState int void dispose void lt lt interface gt gt IHitServiceChangeListener SET ServiceHitList ServiceHitList service SearchService hits Set lt Hit gt ServiceHitList t getHits Set lt Hit gt ServiceView org eclipse jface viewers TreeViewer getSearchService getSearchService service AN I l l N GoogleService LassiSearchService YahooHit GoogleHit LassiSearchHit Abbildung 8 8 Beteiligte Klassen an der Berechnung und Darstellung der Herkunftsansicht eine Menge von Treffern dieser Suchmaschine Die Herkunftsansicht verwendet zur grafischen Darstellung der Treffer ein Tree Viewer Objekt Auf erster Ebene werden Suchmaschinen angezeigt Um die Treffer einer Suchma schine zu sehen muss der Sch ler den Zweig dieser Suchmaschine aufklappen Er erh lt anschlie end die Ausgabe der Treffer dieser Suchmaschine untereinander Die berechnete Menge von ServiceHitList Instanzen wird dem TreeViewer Objekt ber dessen Methode setInput bergeben Als Adapter f r die grafische Darstellung wird die abstrakte Klas se org eclipse ui model Workbench Adapter anonym mit drei berschriebenen Methoden in stanziiert Die Methode getChildren liefert hier die Menge der Hit Instanzen eines Ser vice HitList Objektes als Arr
137. ry kann ein Itera tor abgerufen werden mit dem die Resultatmenge der Methode apply einer IRatorFunc tion sortiert nach Tokenbewertung traversiert werden kann siehe Beispielkandidatenliste in Tabelle 7 2 Nachdem Deskriptoren aus der Kandidatenliste abgerufen worden sind kann die Kandidatenliste und die Tokenrelation ber Aufruf der Methode clear gel scht werden 50 7 4 Berechnung von Anfragen 7 4 Berechnung von Anfragen Dieses Kapitel f gt die vorgestellte Bereitstellung von gewichteten Zeichenketten IContent Provider und die Berechnung von Deskriptoren DescriptorFactory im Entwurf der Klas se QueryService zur Berechnung von Anfragen f r die externen Suchmaschinen zusammen Das UML Klassendiagramm dieser Klasse ist in der Abbildung 7 9 wiedergegeben Die Berechnung der Suchanfragen f r die integrierten Suchmaschinen ist eine Dienstleis tung die an einer zentralen Stelle im Assistenten bereitgestellt werden soll Daher ist abseh bar dass nur eine einzige Instanz dieser Klasse QueryService im System existieren wird Diese Eigenschaft soll im Entwurf durch Anwendung des Singleton Entwurfsmusters veran kert werden Das Singleton Entwurfsmuster beschreibt die Privatisierung des Konstruktors und die Bereitstellung des einzigen Objektes einer Klasse ber eine statische Methode ge tInstance getInstance kann ohne eine Referenz auf eine Instanz der Klasse aufger
138. rzeugnisse ex terner Programme z B Webseiten oder Word Dokumente die zu einer Aufgabenstellung geh ren ber den zur Aufgabe geh renden LAssi Desktop erreicht werden In der LAssi Plattform wird folglich nicht nur die Aufgabenstellung an sich sondern auch ihr Bearbeitungszustand durch einen LAssi Desktop abgebildet Die Lernmaterialien und wei terf hrenden Quellen sowie die Zwischen und Endprodukte der Sch ler k nnen eindeutig dieser Aufgabenstellung zuordnet werden Daher erscheint es sinnvoll den aktuell ge ffneten LAssi Desktop des Sch lers als dessen Suchprofil zu nutzen 4 2 2 Herleitung des L sungsansatzes Die gef hrten Interviews haben ergeben dass f r die Sch ler eine Herausforderung beim Durchsuchen des WWW im Finden von Suchbegriffen und im Formulieren von Suchanfragen besteht Die bestm gliche Entlastung der Sch ler besteht in der vollst ndigen Automatisie rung der Anfragengenerierung unter Erzielung von f r einen Sch ler gut brauchbarer Treffer Dies k nnte beispielsweise durch einen in die LAssi Plattform eingebetteten Assistenten er ledigt werden welcher Suchbegriffe vorschl gt und aus diesen in Syntax einer ausgew hlten Suchmaschine auch Anfragen formuliert Um Suchbegriffe durch einen solchen Assistenten finden zu lassen wird die Erf llung zweier Voraussetzungen ben tigt e Existenz einer Menge von Kandidaten f r Suchbegriffe e Ein Auswahlverfahren f r Suchbegriffe aus der Kandidatenme
139. s Dokumentinhalt und den URL des Dokuments Der Clus terGenerator sammelt die Dokumentinhalte in der Map documents deren Schl ssel der Dokument URL und deren Wert die Menge von gewichteten Textinhalten darstellt Falls ein bereits hinzugef gtes Dokument wieder entfernt werden soll ist die Methode remove zu verwenden welche die Inhalte zur bergebenen URL aus der Map documents l scht Die Methode clear l scht die gesamte Map Nach Aufruf der Methode generateClusters wird die Map ber die Methode applyQ an das Objekt der IClusteringFunction implemen tierenden Klasse gereicht Diese Methode gibt die gewichteten Strings der Map direkt in eine erzeugte Instanz der Klasse DescriptorFactory um die Spaltenbezeichnung der Merkmals matrix X zu erhalten Der URL wird als Dokumentidentifikator verwendet denn das Resultat des Clustering Prozesses ist eine Menge von Mengen von URLs Durch diese Abstraktion von den Hit Objekten welche in der Clusteransicht dargestellt werden sollen ist ein Objekt der Klasse ClusterGenerator in der Lage beliebige andere Dokumente zu clustern Diese Klasse kann daher unkompliziert wiederverwendet werden Ein Objekt welches eine Instanz des ClusterGenerator nutzt muss eine Abbildung vom URL auf die eigentlichen Doku mentobjekte besitzen damit die abstrakten URL Cluster auf konkrete Dokumentobjektcluster abgebildet werden k nnen Ein Objekt der Kl
140. s zu bereits besuchten und im Browser Cache zwischengespeicherten Webseiten durch den Browser wenig weil nicht erkennbar ist in Zusammenhang mit welcher Aufgabe eine Webseite besucht worden ist Es ist kein seltener Fall dass eine Webseite zu einer Aufgabe absolut unpassend ist aber essenzielle Informationen f r die erfolgreiche Bearbeitung einer anderen Aufgabenstellung enth lt 13 3 2 L sungsans tze von Suchmaschinen 3 2 1 Vorschlagen alternativer Anfragen Ein Kernproblem der Sch ler ist die Formulierung von guten Anfragen H ufig werden Suchbegriffe in falscher Schreibweise eingegeben Die Web Suchmaschine Google versucht dieses Problem durch eine leistungsf hige Rechtschreibpr fung zu kompensieren welche den Benutzer auf den m glichen Tippfehler aufmerksam macht und zus tzlich einen Verbesse rungsvorschlag anbietet Der Einfachheit halber ist dieser Vorschlag direkt in der Anfragesyn tax als Web Link formuliert worden sodass der Benutzer ihn einfach per Mausklick in seine Anfrage bernehmen kann siehe Abbildung 3 1 Das System schl gt nach Formulierung der Anfrage Hmbur korrekt den Begriff Hamburg vor Es wird aber nur ein einziger Vorschlag unterbreitet Web Bilder Groups Google Suche Das Web Web Meinten Sie Hamburg Abbildung 3 1 Rechtschreibpr fung der Suchmaschine Google Ein weiterer Ansatz zur Erleichterung der Formulierung von Suchanfragen ist das Vor
141. schla gen lexikographisch hnlicher Begriffe w hrend der Eingabe der Suchanfrage Die Suchma schine Google hat diesen Ansatz in Form der aktuell noch in einer Testphase befindlichen Software Google Suggest implementiert Die Abbildung 3 2 zeigt Google Suggest w hrend der Eingabe der Suchanfrage Hamburg Zus tzlich zu den vorgeschlagenen Suchanfragen gibt Google Suggest die erwartete Anzahl der Treffer zu diesen Suchanfragen aus Web Images Video News Maps more hamburg 53 200 000 results hamburger 8 340 000 results hamburger recipes 495 000 results hamburgers 1 240 000 results hamburger recipe 305 000 results Abbildung 3 2 Vervollst ndigung einer Suchanfrage durch Google Suggest Ein interessanter Ansatz zur Verbesserung der Trefferausbeute des Benutzers ist das Vor schlagen vollst ndig neuer Suchbegriffe Inhaltliche Zusammenh nge von Suchbegriffen k nnen Google Suggest ist erreichbar unter http www google com webhp complete 1 amp hl en 14 3 2 L sungsans tze von Suchmaschinen z B auf Basis statistischer Korrellationsanalysen in einer Trainingsmenge von Dokumenten einem sog Korpus aufgedeckt werden Eine ausgereifte Implementierung dieses Ansatzes stellt die Suchmaschine Web de SmartSearch dar deren Suchbegriffsvorschl ge f r die An frage Hamburg auszugsweise in der Abbildung 3 3 dargestellt sind WEB DE SmartSearch Universit t Hamburg Studierende Fakult t D
142. schritt Garnele Natantia Gr ne Zwerggarnele Rote Zwerggarnele Neocaridina denticulata Fire Zwerggarnele amp Nordseegarnele Wikipedia Haltung und Zucht von Zwerggarnelen z B Bienen amp Ringelhand Garnele Kristallrote Zwerggarnelen Caridina cf cantonensis C amp Garnele Wikipedia amp Garnelenaquarium amp Garnele Abbildung A 4 Hauptfenster des Assistenten nach abgeschlossener Recherche Der Assistent stellt dir zwei verschiedene Ansichten f r die Schalen bereit die Herkunftsan sicht und die Clusteransicht Du kannst die Ansicht f r die aktuelle Trefferschale ber die zwei Registerkarten mit den Beschriftungen Herkunftsansicht und Clusteransicht ausw hlen Die Herkunftsansicht zeigt dir eine bersicht der befragten Suchmaschinen ber die der As sistent Treffer recherchiert hat Der jeweiligen Suchmaschine sind ihre Treffer untergeordnet So kannst du schnell erkennen woher ein Treffer stammt Du solltest z B Treffer der LAssi Suchmaschine immer als erstes anschauen Vielleicht kannst du ja deine L sung aus einer anderen Aufgabenstellung in die aktuelle Aufgabe einbringen In der Abbildung A 4 sind Treffer in der LAssi Suchmaschine und in Yahoo gefunden worden Standardm ig ist die Herkunftsansicht ausgew hlt Die Abbildung A 5 zeigt die zweite Ansicht einer Trefferschale die Clusteransicht Ein Cluster ist eine Gruppe von Treffern Alle Treffer in einem Cluster sind sich inh
143. sind aufwendig zu pflegen Eine Alternative ist das Porter Stemming Verfahren welches zur Laufzeit gemeinsame Grundformen von Token anhand grammatikalischer Regeln der Sprache aus der das Token stammt berechnet Das Problem ist hier dass bekannt sein muss aus welcher Sprache ein Token stammt um den korrekten Regelsatz f r den Algorithmus ausw hlen zu k nnen Gut einsetzbar w re hingegen ein Verfahren welches unabh ngig von der Kenntnis der konkreten Sprache die hnlichkeit zweier Token messbar quantifiziert Anhand dieser hn lichkeit kann dann entschieden werden ob eines der zwei Token durch das andere repr sentiert werden kann Diese Anforderung wird durch das n Gram Verfahren in Kombination mit dem Dice Quotienten umgesetzt Dieses Verfahren spaltet jedes der zwei zu vergleichenden To ken in Subtoken mit der L nge n Zeichen sogenannte n Gramme Alle Subtoken eines Token werden in einer Menge erfasst sodass nach Abschluss der Subtoken Bildung zwei Mengen von n Grammen existieren Diese zwei Mengen werden als Parameter Ta und T in die Dice Funktion gegeben 2 Ta A Tpl Tal T Dieses Verfahren soll anhand eines kleinen Beispiels veranschaulicht werden Betrachtet d Ta Ts 7 1 werden die Zeichenketten a garnele und b nordseegarnele fiir n 2 Bigramme Als Mengen ergeben sich T ga ar rn ne el le und 7 no or rd ds se ee ga ar rn ne el le mit der Schnittmenge T N T
144. ss nicht unterbrechen Die Filterleistung des Assistenten bewerteten die Sch ler im Durchschnitt mit 7 8 Punkten auf einer Skala von 1 bis 10 Punkten 10 Punkte seien die bestm gliche Bewertung Die Steu erbarkeit des Assistenten in verschiedene inhaltliche Richtungen erhielt durchschnittlich 7 0 Punkte Besonders negativ ist den Sch lern auch aufgefallen dass der Assistent f r LAssi Desktops mit vielen LAssi Materialien Treffer zu bereits abgeschlossenen Teilaufgaben liefert Die LAssi Materialien zu abgeschlossenen Teilaufgaben enthalten meistens eine besonders um fangreiche Menge an Texten Daher beeinflussen diese Materialien die statistischen Verfahren zur Berechnung von Suchbegriffen in der aktuellen Implementierung stark Interessant ist au erdem gewesen dass einige Sch ler sich spezielle Recherche Desktops angelegt haben Auf diesen Desktops befand sich eine einzige LAssi Karteikarte die Suchbe griffe in der Form enthalten hat wie sie auch direkt in die Web Formulare der Suchmaschinen eingegeben werden k nnen Auf diese Weise konnten die Sch ler das Bewertungssystem f r Treffer ohne die Ber cksichtigung der LAssi Materialien auf dem LAssi Desktop ihrer aktuel len Aufgabenstellung nutzen Die Vorstellung den Assistenten trainieren zu k nnen hat die Sch ler in hohem Ma e zu seiner Nutzung motiviert Daher nutzten sie den Assistenten auch f r Recherchen die sie ber die Web Formulare der Suchmaschinen h tten t tigen
145. sse ProgressMonitorService erzeugt Sobald diese einen neuen Monitor erzeugt hat informiert sie ihren Beobachter Objekt der Klasse AgentProgressView ber den neuen Monitor und bergibt ihn an den Beobach ter Die AgentProgressView ist das Fenster welches den Agentenfortschritt anzeigt Sie ordnet jedem Monitor ein Objekt der Klasse ProgressComposite zu welches f r die Dar stellung des Monitorzustands in der AgentProgressView verantwortlich ist Die Darstellung eines Monitors entspricht einem Kasten mit Fortschrittsbalken Statuszeile und Abbrechen Knopf wie in der Abbildung 8 2 Das ProgressComposite soll als Beobachter des Monitors seinen Zustand optisch abbilden Daher meldet es sich an dem bergebenen Monitor ber die Methode addMonitorStateChangedListener als Beobachter an Ein beschriftetes Beispiel f r ein ProgressComposite Objekt zeigt die Abbildung 8 4 MainTask WorkUnits Recherchiere in Yahoo ProgressComposite Abbrechen Recherchiere in Speichere Treffer aus Yahoc WorkedUnits SubTask oder ErrorMessage Abbildung 8 4 Komponenten eines ProgressComposite Objektes Vor dem Beginn seiner Recherche initialisiert der Suchagent sein Monitor Objekt ber die Methode setMainTask Diese Methode erwartet als Parameter eine Bezeichnung des Mo nitors Parameter name und die Anzahl der Arbeitsschritte die vom Statusbalken angezeigt werden soll
146. st Du wirst beobachten dass sich die Darstellung dieses Treffers in der jeweiligen Trefferansicht ndert Vor dem ffnen wird die Schrift des Treffertitels fett und nach dem ffnen normal angezeigt Vielleicht kennst du ein hnliches Verhalten von deinem E Mail Programm Es gibt dort gelesene und ungelesene Mails Genauso verh lt es sich auch mit Treffern es gibt gelesene und ungelesene Treffer Auf diese Weise siehst du schnell welche Treffer du noch sichten musst Wenn du mit der rechten Maustaste auf einen Treffer klickst dann erscheint ein Kontext men Dieses Men beinhaltet weitere Operationen die du auf dem Treffer ausf hren kannst z B das Markieren eines Treffers als gelesen bzw ungelesen Au erdem kannst du den Treffer auch aus der aktuellen Trefferschale l schen Der Assistent fragt dich anschlie end ob du den Treffer wirklich l schen m chtest Wenn du diese Sicherheitsabfrage bejahst wird der Treffer unwiderbringlich aus der Trefferschale entfernt Bitte beachte dass der Assistent dir diesen Treffer f r den aktuellen LAssi Desktop nie wieder anzeigen wird Zu anderen Desktops wird der Treffer aber wieder gefunden es sei denn du hast ihn auch dort gel scht Du kannst den Assistenten in seinen zuk nftigen Recherchen steuern indem du Treffer in die Schale f r hochwertige Treffer bzw in die Abfallschale verschiebst M chtest du beispiels weise mehr zur Nordseegarnele wissen so verschiebst du den gefundenen Wikipe
147. stenten haupts chlich in dessen Steuerung e Der Sch ler kann die Unterst tzung durch den Assistenten ein und abschalten Sobald der Assistent Treffer recherchiert hat benachrichtigt er den Sch ler e Der Sch ler kann die inhaltliche Richtung zuk nftiger Recherchen des Assistenten steu ern Dazu bewertet er erzielte Treffer Der Assistent besitzt eine gewisse Autonomie da der Sch ler ihn nur starten und beenden kann Der Assistent recherchiert im Hintergrund Treffer f r den Sch ler und informiert ihn wenn eine bestimmte Anzahl Treffer erzielt oder alle m glichen Suchanfragen gestellt worden sind Dies hat den Vorteil dass der Sch ler durch den Assistenten nicht in seiner Arbeit be eintr chtigt wird Die Recherchen des Assistenten sollen in bestimmten zeitlichen Abst nden erfolgen welche durch den Sch ler zu spezifizieren sind 24 4 2 Entwicklung eines L sungsansatzes Durch die Bewertungen des Sch lers erhalten die Treffer einen der folgenden qualitativen Zust nde e Zu ber cksichtigender hochwertiger Treffer Zu ber cksichtigende hochwertige Treffer helfen dem Sch ler bei der L sung eines bestimmten Teilbereiches seiner Aufgabenstellung Der Assistent ber cksichtigt Tref fer mit diesem Zustand bei der Auswahl zuk nftiger Suchbegriffe Ein hochwertiger Treffer ist nur solange zu ber cksichtigen wie er zur inhaltlichen Rechercherichtung des Sch lers geh rt Sobald der Sch ler eine andere Recher
148. t den Sch lern an dieser Stelle nur die M glich keit erst die Wikipedia Artikel als einzige n tzliche Treffer auszuwerten und auf Basis dieser Auswertung eine neue Anfrage an Google zu richten Diese k nnte zum Beispiel die lateini schen Fachbegriffe bestimmter Garnelenarten erhalten welche zu einer sehr pr zisen Treffer ausbeute f hren Allerdings ist die Formulierung derlei Anfragen den Sch lern erst m glich wenn sie bereits ber eine Informationsgrundlage verf gen Interessant ist au erdem dass die Anfrage Garnele statt Garnelen bei Google zu einer wesentlich besseren Trefferausbeu te gef hrt h tte aber keiner der Sch ler diese Anfrage formuliert hat Die Bezeichnungen der LAssi Desktops der Sch ler enthielten den Begriff Garnele hingegen fast berall Die Sch ler verwenden bei der Formulierung von Flie texten viele Begriffe in bestimmten For 87 9 4 Funktionaler Vergleich mit einer Suchmaschine am Beispiel Google men z B F llen bei Nomen die eine hohe Trefferausbeute bei Google erzielen w rden Diese Begriffe geben sie in dieser Form aber selten in das Web Formular von Google ein Nachdem die Sch ler beispielsweise den Desktop Die Garnele angelegt haben beginnt der Assistent sofort mit seinen Recherchen Das Resultat der ersten Recherche enth lt deutlich mehr n tzliche Treffer zu Garnelen als die erste Ergebnisseite von Google weil hier Treffer zu konkreten Garnelenarten pr sentiert
149. t die Rolle des Subjektes ein und die AgentProgressView die Rolle des Beobachters Zum Erzeugungs zeitpunkt des Fensters AgentProgressView meldet sich dieses an der Singleton Instanz ber die Methode addAgentStatusListener als Beobachter an Sobald ein neuer Recherche durchgang beginnt also direkt vor der Erzeugung der neuen Suchagenten wird die Metho de newRunsStarted der AgentStatusView vom AgentManager aufgerufen Die Imple mentierung der Methode in der Klasse AgentStatus View l scht alle ProgressComposite Instanzen aus der Map welche ein Monitor Objekt einem ProgressComposite Objekt zu ordnet und zeichnet sich anschlie end neu Auf diese Weise werden alle Darstellungen der ProgressComposite Objekte aus dem Fenster entfernt 8 3 Implementierung der Trefferansichten Der Assistent bietet dem Sch ler zwei Sichten auf die Inhalte einer Trefferschale die Herkunfts und die Clusteransicht Jeder Ansicht ist je eine Registerkarte im Hauptfenster des Assistenten zugeordnet worden sodass der Sch ler komfortabel zwischen den Ansichten umschalten kann siehe Abbildung 8 6 71 8 3 Implementierung der Trefferansichten Herkunftsansicht Clusteransicht Assistentenfortschritt v LALAssi Umgebung 2 v siThailand DIWirtschaftszweige in Thailand UJHistorisches zu Thailand b wi Meerestiere in der Nahrungskette v rYahoo 15 amp Garnele Natantia amp Nashorngarn
150. t sinnvoll den gesamten Verarbeitungsprozess zusammengefasst in einer Klasse DescriptorFactory bereitzustellen deren Instanzen zur Berechnung von Such und Filter begriffen sowie von Spaltenbezeichnungen der Clustermatrix und Clusterlabels verwendet werden k nnen Ein Objekt dieser Klasse sollte mit einer Bewertungsfunktion f r Token pa rameterisierbar sein um selbige austauschen zu k nnen In der Abbildung 7 7 ist das UML Klassendiagramm der DescriptorFactory angegeben Die Klasse DescriptorFactory beinhaltet den Tokenizer und den Optimizer Zur Initialisie rung ben tigt ein Objekt der Klasse zus tzlich einen Rator also eine Bewertungsfunktion f r Token Die Klassen der Bewertungsfunktionen m ssen die Schnittstelle TRatorFunction im plementieren Die DescriptorFactory erh lt ihre Bewertungsfunktion ber ihren Konstruk tor Ein Dokument z B der Inhalt einer LAssi Karteikarte wird dem Tokenizer in der De scriptorFactory als Parameter weightedStrings ber die Methode add gereicht Der Wert dieses Parameters kann direkt von einem IContent Objekt ber die Methode getWeighted Strings abgerufen werden Der Parameter url der Methode add wird zur Bef llung der Spalte Dokumente der Tokenrelation des Optimizers siehe Tabelle 7 1 ben tigt Die Klassen TfRator und TfIdfRator welche die Bewertungsfunktionen f r Token ent 49 7 3 Aufbereitung u
151. tProvider void F sinletonInstance new QueryService lt lt static gt gt getInstance QueryService computePosDescriptors void computeNegDescriptors void return singletonInstance getQueries List lt List lt Descriptors gt gt getFilters List lt List lt Descriptors gt gt clearPosDescriptors void clearNegDescriptors void getURLsOfAnalysedContents Set lt String gt configure rator IRatorFunction void LassiMaterialContent Abbildung 7 9 UML Diagramm der Klasse QueryService 52 7 4 Berechnung von Anfragen die Inhalte aller IContent Instanzen aller Contentprovider an die zugeh rige Descriptor Factory bergeben Anschlie end berechnet die DescriptorFactory die Kandidatenliste aus den bereitgestellten gewichteten Zeichenketten Abschlie end wird ber ein Iterator Objekt die Kandidatenliste traversiert und in einer eigenen Liste Attribut posDescriptors gespei chert Bisher ist gekl rt worden wie Such und Filterbegriffe berechnet werden Offen ist noch wie aus diesen Begriffen Anfragen formuliert werden Ein Suchbegriff entspricht einem De skriptor ein Filterbegriff hingegen einem negierten Deskriptor Eine beispielhafte Anfrage A welche das Auftreten der Deskriptoren garnelen amrum und lebensraum wattenmeer und den Ausschluss des Deskriptors rezept realisiert K nnte in Pseudosyntax wie folgt lau ten A garnelen
152. taltet werden Der Sch ler legt einen neuen LAssi Desktop mit der Bezeichnung Die Garnele an Er recherchiert mit dem Assistenten ber vier Durchg nge zehn Treffer pro Durchgang Nach jedem Durchgang werden geringwertige und hochwertige Treffer als solche vom Sch ler bewertet Die weitere Rechercherichtung wird vom Sch ler ber hochwertige zu ber cksichtigende Treffer gesteuert Der Assistent soll pro Durchgang konstant mit einer Bewertungsfunktion f r Token arbeiten absolute H ufigkeit oder TF IDF Als Suchdienst verwendet der Assistent die Suchmaschine Yahoo weil er f r dieses System ein gro es Verbesserungspotential erschlie en kann 81 9 2 Bewertung anhand eines Fallbeispiels ber die Web Formulare von Google und Yahoo werden folgende Sch leranfragen gestellt ohne Anf hrungszeichen Garnele Anfrage 1 Garnelen Anfrage 2 e Garnele rezepte preis Anfrage 3 e Garnelen rezepte preis Anfrage 4 Zu den Anfragen 3 und 4 sei gesagt dass die Sch ler ber die Filterbegriffe versucht haben die ungew nschten Rezepte und Einkaufsangebote zu filtern Au erdem ist zu ber cksichti gen dass die Sch ler erst nach einer Einweisung in den logischen NICHT Operator in der Lage waren diese Suchanfragen zu formulieren Da in einem Durchgang des Assistenten der Inhalt von drei Treffern nicht abgerufen werden konnte aufgrund der Nicht Erreichbarkeit der Webserver werden nur die erst
153. tematiken UND crangonidae UND pandalidae Diese An fragen sind meist so streng dass sie keine oder nur sehr wenig Treffer liefern Die Treffer der abgeschw chten Anfragen passen meist nicht zum aktuell bearbeiteten Themengebiet z B der Systematik Crangonidae Die Suchbegriffe K nnen also nur bei wenig umfangreichen LAssi Desktops aus dem gesamten Desktopinhalt sinnvoll gewonnen werden Zur L sung beider Probleme m sste der Assistent die Themengebiete bzw Teilaufgaben 89 9 5 Fazit des aktuellen LAssi Desktops kennen Au erdem m sste er wissen welche LAssi Materialien zu welcher Teilaufgabe geh ren und an welcher Teilaufgabe der Sch ler gerade arbeitet Auf dem LAssi Desktop k nnten Themengebiete mit dem vorgestellten und implementierten Clustering Verfahren k Means berechnet werden Jeder Cluster w rde dabei als Themenge biet interpretiert Als aktuell vom Sch ler bearbeitetes Themengebiet K nnte derjenige Clus ter herangezogen werden der die meisten zuletzt bearbeiteten LAssi Materialien beinhaltet Die Qualit t der Suchbegriffe k nnte noch erh ht werden wenn auch die hochwertigen zu ber cksichtigenden Treffer in die Clusterberechnung einbezogen w rden berschreitet die Anzahl der Materialien eines Clusters einen Schwellwert so muss dieses Cluster durch Be rechnung von Subclustern in seine Themengebiete unterteilt werden Die Suchbegriffe sind dann aus dem Subcluster mit den meisten zuletzt bearbeiteten LAssi M
154. ten dass die h ufigsten Kandidaten einer Menge von Dokumenten die gemeinsamen Kandidaten der Dokumente repr sentieren also nicht charakteristisch f r einzelne Dokumente sind Dies kann sich in bestimmten Problem stellungen als nachteilhaft erweisen z B bei der Berechnung von Spaltenbezeichnungen einer Merkmalsmatrix f r ein Clustering Verfahren Diese Verfahren ben tigen f r brauchbare Er gebnisse Kandidaten die die Dokumente gut voneinander abgrenzen Zur Ber cksichtigung der Gewichtung der Position eines Kandidaten im Dokument wird diese multiplikativ mit der absoluten H ufigkeit verkn pft sodass sich f r die Bewertung des Kandidaten j ber n Dokumente ergibt n dp h i tf j i weight j i p 6 1 i 1 p 1 Die Funktion tf j i liefert die absolute H ufigkeit des Kandidaten j im Dokument i und die Funktion weight j i p das Gewicht der Position p des Kandidaten j im Dokument i dp sei die Anzahl der gewichteten Positionen des jeweiligen Dokumentes Die Begriffe der Beispielkarteikarten w rden wie folgt bewertet h Garnelen 6 0 1 4 0 2 14 0 Punkte und h Garnelenzucht 6 0 1 4 0 1 10 Punkte Daher wird der Begriff Garnele dem Begriff Garnelenzucht vorgezogen 2siehe 12 Seite 26 40 6 2 tf idf H ufigkeitsansatz 6 2 tf idf H ufigkeitsansatz Das tf idf Verfahren ist von Gerard Salton entwickelt worden und findet sowohl in der Litera tur als auch in der Praxis gro en An
155. ten entf llt wenn der Assistent selbst mit den vom Sch ler genutzten Suchmaschinen kommuniziert Das bedeutet er muss seine Anfragen an die Suchmaschine stellen und deren Treffer empfangen Diese L sung hat zwar den Nachteil dass f r jede Suchmaschine ein Adapter in den Assis tenten integriert werden muss welcher die Kommunikation beider Systeme Assistent und Suchmaschine abwickelt Aber da die Menge der von den Sch lern genutzten Suchmaschi nen endlich und sehr klein ist kann dieser Nachteil vernachl ssigt werden Durch die Such maschinenintegration k nnte zus tzlich generisch f r alle Treffer aller vom Sch ler genutzten Suchmaschinen eine einzige Trefferdarstellung z B in der beschriebenen Clusterform ange boten werden Au erdem ist es dem Assistenten m glich durch verschiedene Suchanfragen doppelt gelieferte Treffer auszusortieren und vom Sch ler bewertete Treffer auszublenden sodass sich dieser auf die Sichtung der unbekannten Treffer konzentrieren Kann 23 4 2 Entwicklung eines L sungsansatzes Der Assistent k nnte dem Sch ler au erdem viel Zeit ersparen wenn er diesen an bereits erworbenes Wissen erinnert Dazu k nnte der Assistent auf die LAssi Desktops also die Auf gabenstellungen des Sch lers zur ckgreifen Der Sch ler k nnte dieses von ihm selbst be reits aufbereitete und verstandene Wissen nutzen und eine weitere Recherche w re gar nicht erforderlich Au erdem ist dieses Wissen f r den Sch
156. tent die Zeichenketten unm glich selbst auslesen sondern ist auf Konvertoren angewiesen Au erdem ist es dem Assistenten nicht m glich der Position einer Zeichenkette im Dokument eine Gewichtung zuzuordnen die deren semantische Rolle repr sentiert Beispielsweise sollen Token des Titels einer LAssi Karteikarte st rker gewichtet werden als Token aus den Texteintr gen im Rumpf der Kar teikarte Die Gewichtung von Positionen in einem Dokument soll wie bereits angedeutet in 43 7 2 Bereitstellung von LAssi Desktop und Schaleninhalten der Berechnung der H ufigkeitsstatistik der Token ber cksichtigt werden Daher m ssen diese Konvertoren von dem Entwickler bereitgestellt werden der ein neues Format in das System einf hrt z B durch ein neues LAssi Material lt lt interface gt gt IConentProvider getNumberOfContents int iterator Iterator lt IContent gt DesktopContentProvider HitContentProvider Abbildung 7 2 UML Klassendiagramm f r die Schnittstelle IContentProvider Ein Konvertor entspricht im Assistenten einem IContentProvider Die Abbildung 7 2 enth lt das zugeh rige UML Klassendiagramm Eine Instanz von IContentProvider ist zust ndig f r die Bereitstellung der Textinhalte einer Menge von Dokumenten z B der Inhalte eines LAssi Desktops oder einer Trefferschale Die Methode getNumberOfContents liefert die Anzahl der Elemente dieser Menge Diese Anzahl wird f r die B
157. ter kannst du angeben wieviele Filterbegriffe aus der Abfallschale berechnet werden sollen Au erdem ist es hier m glich anzugeben wie hnlich sich zwei W rter sein m ssen um als gleich zu gelten Beispiel F r die Begriffe Kinder und Kindes wird eine hnlichkeit von 80 berechnet Wenn du den entsprechenden Schieberegler auf 80 einstellst dann nutzt der Assistent einen der Begriffe als Suchbegriff ansonsten beide Optionsgruppe Suchanfragen In dieser Optionsgruppe sind alle Einstellungsm glichkeiten zusammengefasst die deinen Assistenten bei der Auswahl von Suchbegriffen beeinflussen e Im Kasten Finden von Suchbegriffen kannst ausw hlen mit welchem mathemati schen Verfahren dein Assistent die Suchbegriffe ausw hlt Das obere Verfahren nimmt einfach die Begriffe die in allen deinen LAssi Materialien und den Treffern der hoch wertigen Schale vorkommen Das untere Verfahren w hlt hingegen die Begriffe aus die in einem Material h ufig und in den restlichen sehr selten vorkommen Im Kasten Identifizierung von hnlichen Suchbegriffen kannst angeben ob der Assistent versuchen soll den gemeinsamen Stamm zweier Begriffe zu erkennen Der Kinder und des Kindes wird dann beispielsweise als Kind erkannt Du musst be achten dass dein Assistent in diesem Fall den Begriff Kind auch als Suchbegriff nutzt Im Kasten Anzahl der Suchbegriffe in einer Anfrage kannst du einstelle
158. ter den Treffern des dritten Recherchedurchganges befinden sich erneut sieben f r den Sch ler sehr n tzliche Links zur Zweggarnele Der gro e Mehrwert des Assistenten besteht darin dass der Sch ler ihn intiutiv ber die Bewertung von Treffern in verschiedene Rechercherichtungen steuern kann ohne dabei ei ne einzige Anfrage zu formulieren Desweiteren archiviert der Assistent die Treffer ber die Schalen automatisch f r den Sch ler Dieser beh lt aufgrund der optischen Hervorhebung von ungelesenen Treffern auch ber umfangreiche Trefferschalen die bersicht 88 9 5 Fazit 9 5 Fazit Sowohl das Fallbeispiel als auch die Befragung der Sch ler zeigen dass der gew hlte Ansatz mit guten Leistungen die Recherchesituation der Sch ler optimiert Die Sch ler finden durch die Unterst tzung mehr hochwertige Treffer als ber die Web Formulare von Google und Yahoo Au erdem arbeiten sie aufgrund der Trainierbarkeit ihres Assistenten hochmotiviert mit der Software Die Garnele LAssi Desktop I j 1 Lebensr ume Wirtschaftliche Nutzung Systematiken LAssi Materialstapel Nordsee Ostsee Garnelenzucht Aquaristik Crangonidae Pandalidae LAssi Materialien Abbildung 9 6 Beispiel f r den Inhalt eines LAssi Desktops Der gew hlte Ansatz birgt aber noch viel Potential Die Sch ler berichteten dass ihr As sistent ihnen bei umfangreichen LAssi Desktops viele Treffer zu bereits bearbeiteten Teilauf gaben ihrer Aufgabe
159. tzt Der Sch ler bernimmt anschlie end die vom Assistenten ausgegebe ne Suchanfrage in das Anfrageformular einer Suchmaschine und startet deren Suchprozess Schritt B Er sichtet und bewertet die erzielten Treffer Schritt C An dieser Stelle muss der Sch ler entscheiden ob er einen weiteren Vorschlag f r eine Anfrage durch den Assisten ten einholen oder den Recherchevorgang abbrechen m chte um die erzielten Treffer in seine L sung der Aufgabenstellung einzupflegen Entscheidet sich der Sch ler f r einen weiteren Vorschlag so muss er dem Assistenten die Treffer und deren Bewertungen bereitstellen Dazu k nnten die brauchbaren und unbrauchbaren Treffer z B auf dem LAssi USB Stick je 22 4 2 Entwicklung eines L sungsansatzes nach Bewertung in eines von zwei Verzeichnissen gespeichert werden Diese Archivierung der Treffer wird durch Schritt D abgedeckt Die Inhalte dieser zwei Verzeichnisse werden vom Assistenten in Schritt E ausgelesen und analysiert um Kandidaten f r die Berechnung von Suchanfragen in Schritt A zu erzeugen Mit erneutem Beginn des Schrittes A schlie t sich der Kreislauf der Prozesses Da der Assistent die Inhalte des aktuellen LAssi Desktops bei der Auswahl der Suchbegriffkandidaten ber cksichtigt kann der Assistent die Qualit t sei ner Vorschl ge auf Basis von Dokumenten oder LAssi Materialien verbessern die er nicht selbst gefunden hat Auf diese Weise basieren die Vorschl ge f r Such
160. ufen werden weil sie als statische Methode an die Klasse und nicht an deren Objekte gebunden ist Innerhalb dieser Methode wird gepr ft ob bereits eine Instanz der Klasse existiert Sollte das der Fall sein so liefert die Methode diese ansonsten eine neu erzeugte Instanz zur ck siehe UML Listing der Methode getInstance Der QueryService berechnet die Suchbegriffe auf Basis der Inhalte vom LAssi Desktop und den hochwertigen zu ber cksichtigenden Treffern Die Filterbegriffe werden von ihm aus den Inhalten der geringwertigen Treffer berechnet Die Contentprovider welche die ge wichteten Zeichenketten bereitstellen werden dem QueryService ber die Methoden add PositiveContentProvider und addNegativeContentProvider bereitgestellt Aus positiven Contentprovidern werden Such und aus negativen Contentprovidern Filterbegriffe berech net Ein Objekt der Klasse DesktopContentProvider ist daher ein positiver Contentprovider Instanzen der Klasse HitContentProvider sind immer an eine einzige Trefferschale gebun den Daher existieren zwei Instanzen dieser Klasse im System Eine f r die hochwertigen zu ber cksichtigenden positiver Contentprovider und eine f r die geringwertigen Treffer nega tiver Contentprovider Zur Abmeldung der Contentprovider vom QueryService existieren entsprechende remove Methoden Die Methode configure des QueryService erzeugt zwei D
161. unden Alle Treffer sollen vom Sch ler direkt in einem geeigneten Viewer oder Editor ge ffnet werden k nnen z B von einem Webbrowser im Falle einer Webseite Au erdem muss es m glich sein dass der Sch ler einen Treffer auch endg ltig aus dessen Schale l schen kann Ein gel schter Treffer darf vom Assistenten nicht erneut gefunden werden Damit der Sch ler bei umfangreichen Schalen nicht die bersicht ber bereits gesichtete und ungesichtete Tref fer verliert soll ein Treffer als gelesen oder ungelesen angezeigt werden vergleichbar mit gelesenen und ungelesenen Mails in E Mail Clients Angenommen der Sch ler hat die Unterst tzung seines Assistenten angefordert und igno riert aber dessen Hinweise auf recherchierte Treffer so f gt der Assistent immer mehr Treffer in die Sammelschale ein Dies f hrt zu unn tig hohem Speicherverbrauch da die Schalen auf dem LAssi USB Stick persistiert werden Zudem ist eine umfangreiche Sammelschale nur zeitintensiv f r den Sch ler auszuwerten vor allem weil er Zeit in die Sichtung von Treffern investieren muss die sich auf einen weit zur ckliegenden Bearbeitungsstand der Aufgabe be ziehen Daher erscheint es sinnvoll die maximale Anzahl von Treffern in einer Schale zu beschr nken Aber was soll passieren wenn eine Schale voll ist Es w re m glich den As sistenten in diesem Fall zu beenden und erst dann wieder zu starten wenn der Sch ler die Sammelschale geleert hat Diese Va
162. uss daran werden der Entwurf und die Implementierung dieses Systems beschrieben Abschlie end wird mit Hilfe vorab vorgestellter Kennzahlen und zus tzlich anhand einer Befragung von Sch lern der Modellklasse das Potential des gew hlten Ansatzes bewertet Nach der Darstellung von Anregungen f r weitergehende Entwicklungs ans tze wird abschlie end eine Zusammenfassung und ein Ausblick gegeben 11 3 Analyse der Rechercheunterst tzung von Sch lern Dieses Kapitel analysiert die Situation von Sch lern bei ihren Recherchen im World Wide Web WWW Dazu werden zuerst die Ergebnisse von freien Sch lerinterviews vorgestellt Das anschlie ende Kapitel untersucht die Ans tze von g ngigen Suchmaschinen zur L sung der Sch lerprobleme Abschlie end werden diese L sungsans tze kurz diskutiert 3 1 Sch lerprobleme bei Recherchen im WWW Zur Analyse der aktuellen Recherchesituation von Sch lern sind in einer achten LAssi Modell schulklasse der freie Interviews sowohl im Klassenverband als auch in Kleingruppen von drei bis vier Sch lern durchgef hrt worden Die Interviews haben ergeben dass die Sch ler zur Informationsbeschaffung f r die Bearbeitung von Aufgabenstellungen fast ausschlie lich das World Wide Web WWW durchsuchen In seltenen F llen wird auch die Schulbiblio thek konsultiert 19 von 22 Sch lern gaben an pro Tag f nf oder mehr Suchanfragen an eine WWW Suchmaschine abzusenden Hierf r nutzen sie haupts chlich die
163. v stabil erwiesen Yahoo konnte mit den pr ziseren Anfragen seinen Precision Wert um 8 auf 67 erh hen Google hingegen nur von 42 auf 44 Die Fehlerraten haben sich entsprechend gemindert So erreicht Yahoo eine Fehlerrate von 23 vorher 30 und Google von 55 vorher 57 Auch hier muss erg nzt werden dass die Qualit t der Treffer von Google erst auf den letzten zwei Ergebnisseiten stark gesunken ist Die Messreihen zeigen exemplarisch dass der implementierte Assistent den Sch lern mehr hochwertige Treffer liefern konnte als Google oder Yahoo zu ihren Anfragen erzielten Nat rlich gibt es Szenarien in denen der Assistent schlechter abschneidet als Google oder Yahoo Un geachtet dessen konnte das Potential des Assistenten demonstriert werden Abschlie end ist zu sagen dass Google oder Yahoo genau dann eine gro e Menge hochwertiger Treffer lie fern k nnen wenn die Sch ler pr zise Suchbegriffe in das Web Formular der Suchmaschinen eingeben z B den lateinischen Fachbegriff der Nordseegarnele crangon crangon Zur As soziation derlei pr ziser Suchbegriffe ist aber ein umfangreiches Vorwissen notwendig ber 83 9 3 Bewertung anhand eines Schuleinsatzes Fehlerrate Precision 09 0 8 0 7 06 0 5 0 4 Fehlerrate Precision 0 3 0 2 0 1 Assistent Assistent Yahoo Google Assistent Assistent Yahoo Google TF IDF TF TF IDF TF Abbildung 9 2 Gemittelte Messwerte f r Fehler
164. wei Extrempo len Die linke Ausrichtung des Reglers repr sentiert die Benutzerpr ferenz f r Einkaufsan gebote Shopping und die rechte Ausrichtung f r inhaltlich gehaltvolle Dokumente Re 3Web de SmartSearch ist erreichbar unter http suche web de search webhp 4vel 2 Seite 4 ff gt Yahoo Mindset ist erreichbar unter http mindset research yahoo com 15 3 2 L sungsans tze von Suchmaschinen searching Diese Pole sind fest von MindSet definiert und unabh ngig von der eingegebe nen Suchanfrage Die im Index von MindSet erfassten Dokumente sind ebenfalls fest einem der beiden Extrempole mit einem bestimmten Polabstand zugeordnet Wie Yahoo diese Pol abst nde genau ermittelt ist nicht dokumentiert Die angezeigten Treffer werden nach Re levanz zur eingegebenen Suchanfrage bewertet und absteigend sortiert angezeigt wie es f r Suchmaschinen blich ist Die Ausrichtung des Reglers repr sentiert den gew nschten Polab stand der wahrscheinlich f r den Benutzer hochwertigen Treffer Nach Bet tigung des Reglers ndert sich die Anordnung der angezeigten Treffer in Echtzeit F r die Anfrage Hamburg ist das Ergebnis von Yahoo Mindset stark reduziert in der Abbildung 3 4 dargestellt FF researching 1 1 Hamburg Wikipedia the free encyclopedia www hamburg de League and the fact that Hamburg is a City State and one situated on the southern tip of Jutland en wikipedia org wiki Hambu
165. werden siehe Abbildung 9 4 Die Sch ler haben nun die M glichkeit durch einfache Trefferbewertungen ber ein Kontextmen mehr Informationen zu einem Themengebiet zu erhalten Angenommen der Sch ler m chte weitere Informatio nen zur Gattung Neocaridina der Zwerggarnelen haben klickt er einfach mit der rechten Maustaste auf den Treffer Neocaridina Zwerggarnelen und verschiebt diesen Treffer in die Schale der hochwertigen zu ber cksichtigenden Treffer Das Ergebnis des folgenden Recherchedurchgangs gibt die Abbildung 9 5 wieder Herkunftsansicht clusteransicht Agentenfortschritt v Yahoo 10 amp K lle Zoo GmbH in Stuttgart Heilbronn Karlsruhe und Ludwigshafi ZOO amp amp Co Die Amano Garnele Neocaridina japonica amp Garnelen amp wirbellose nrw Bilder Garnelen Caridina Neocaridina Crystal rec Rote Nashorn A Haltung und Zucht von Zwerggarnelen Die Serrata Gruppe Caridina oder Neocaridina amp http www beepworld de members95 faszination wirbellose lzuch amp FishLight XIV Abbildung 9 5 Rechercheergebnisse im zweiten Durchgang des Assistenten Unter diesen Treffern befindet sich lediglich ein unpassender Treffer auf denen Verkaufs angebote f r S sswassergarnelen zu finden sind Dieser Treffer wird ebenfalls ber das Kon textmen in die Schale der unerw nschten Treffer verschoben Auf diese Weise soll das Er scheinen von derlei Treffern zuk nftig unterbunden werden Un
Download Pdf Manuals
Related Search
Related Contents
5300 Series TECSource User`s Manual Disque Abrasif 3M™ SCOTCH-BRITE™ SPP HP LaserJet 3020, 3030 user guide - DEWW Eminent e-Alarm ELECTRICAL INSTRUMENTS - General Tools And Instruments 取扱説明書 ジャッキ エア 油圧式 20tоn 品番: 44501200 型式 VS-G SERIES INSTALLATION & MAINTENANCE GUIDE Pelco cs73m-d Car Amplifier User Manual Copyright © All rights reserved.
Failed to retrieve file