Frage

Ich arbeite für ein Marktforschungsunternehmen im Online-Bereich. Wir haben ein Jahr lang alle unsere Zyklen Ausgaben für immer und ein halbes Gebäude das nächste große Ding in diesem Raum in Bezug auf Profilierung unserer Befragten (über die Zeit) besser legen Sie sie in verfügbaren Umfragen. Etwas, das einer unserer Forscher uns für viele Male gefragt hat (zu Recht) ist ein Werkzeug, das den Wert dieses neuen Profilierungssystem und vorhersagen, das Ergebnis von Verbesserungen erweisen, um es viele Algorithmen und Regeln ist, welche Version eines Regelsatzes zu zeigen, hat ein besseres Ergebnis.

Das Ziel ist, in der Lage sein einen Splitter unserer Profilierungssystem zu übernehmen (eine statische Scheibe Q & A-Daten für eine bestimmte Zeit - Geschlecht:. Männlich / weiblich, Getränke: Cola / pepsi / mt.dew, Einkommen: etc) und führen Sie Benutzeragenten durch unser Profilierungssystem (künstlich Software-Roboter oder Agenten entwickelt), um zu sehen, was die interaktiven Ergebnisse wären. Da die Q & A-Daten, die die gleiche wäre, wären die User Agents Fähigkeiten Antworten wählen die gleichen, und nur die Algorithmen und Regeln hinter, wie die Profiler Werke verändern würde - dies theoretisch würde es uns ermöglichen, zu dem Ergebnis etwaiger Änderungen im Voraus zu bestimmen, unser System. Dieses Ergebnis würde uns erlauben, dann den Nachweis Änderungen, bevor Sie die Änderungen in unserem Produktionssystem schieben. Die Hoffnung wäre, dass wir leichten Fehler fangen konnten, bevor in die Wildnis freigibt. Aber das würde uns auch erlauben, Änderungen an die Logik zu testen für Optimierungen im Profiler zu jagen.

Meine Frage: (C # /. NET meist) Für jemanden wie mich, die wirklich nur in der Web-Anwendung Raum gearbeitet hat, wo ich in den Aufbau User Agents zu erhalten schauen, um zu beginnen, die mit einer außerhalb zu interagieren können System wie mein Profilierungssystem? Ich muß speziell wissen, wie 1000 (eintausend) Mittel drehen und haben sie mit meinem Profilierungssystem (über einen bestimmten Zeitraum) interagieren, indem Sie die Fragen beantworten zu können, die sie durch die Profilierung System präsentiert werden, basierend auf Eigenschaften , die dynamisch auf dem User-Agenten definiert, bei der Initialisierung.

Ein Beispiel dafür ist, dass ich einige schwarze Agenten benötigen, einige chinesische Agenten, einige männliche Agenten, einige weibliche Agenten, einige alte Mittel, einige neue Mittel, einige religiöse Mittel, einige, die Cola trinken, usw. und alle von ihnen zusammengemischt am geeignetsten, um die Welt ähneln. Wir haben bereits die demographischen Zusammenbruch unserer Bevölkerung, so dass wir leicht 10% schwarze Männer drehen kann, 60% weiße Frau zu Hause bleiben Mütter und alle anderen Darstellungen unserer Bevölkerung.

Meine ersten Gedanken für ein System wie dieses zu schaffen war die Kraft meiner XBOX 360 zu verwenden, und einige gut durchdachte Agenten, die eine Person aus einer objektorientierten Welt mit einigen zusätzlichen Eigenschaften ähneln zu sein die Lage, einige Fragen zu beantworten, intelligent ... und an anderen erraten.

mit meinem Kollegen im Sprechen, wurde vorgeschlagen, dass ich einige der künstlichen Intelligenz Frameworks da draußen, und eine 1000 CPU-Grafikkarte (wir haben eine bereits) einig super böse schnelle Leistung von Lasten von Benutzeragenten zu erhalten. Wo jeder CPU ist ein Agent ... (so etwas wie diese).

Gibt es jemand da draußen mit Erfahrung in dieser Art der Sache? Proofing Probleme mit einem fiktiven Modell der Welt?

War es hilfreich?

Lösung

sagen Sie „mit einem externen System interagieren“ - was ist die Schnittstelle zu diesem System, und wie funktioniert es eine Person verwenden? Ist es über das Web? Wenn ja, dann verschwenden Sie Ihre Zeit über GPU-Optimierungen zu denken und dergleichen, da Ihr Leistungsengpass wird das Netzwerk, auch über einen LAN. In einem solchen Fall laufen können Sie auch nur die Agenten der Reihe nach. Auch wenn Sie effektiv gleichzeitig 1000 Agenten erzeugen könnten (vielleicht auf mehrere Rechner), sind die Chancen hoch, dass Sie nur den Zielserver in einer zufälligen Denial-of-Service-Attacke lahmlegen, so ist es kontraproduktiv. Allerdings, wenn Sie die Möglichkeit haben, diese Schnittstelle zu ändern, direkte Kommunikation zwischen Prozessen zu ermöglichen, könnten Sie angesichts der massiven Parallelität Ansatz zurückgehen. Aber dann 1000 ist keine große Zahl der Rechenbedingungen. Es ist wahrscheinlich, würden Sie mehr Zeit damit, den Algorithmus laufen parallel ausgeben, als Sie, indem es auf diese Weise sparen würde.

Wie für ‚künstliche Intelligenz-Frameworks‘, ich glaube nicht, es ist etwas ganz so vage, dass Sie helfen würde. AI und intelligente Agenten ist eine massive Feld - das Buch Künstliche Intelligenz: Ein moderner Ansatz der ein Standard Einführungstext auf intelligenten Agenten ist über 1000 Seiten lang und enthält vielleicht 20 oder 30 völlig unabhängige Techniken, von denen viele für Ihr Problem anwenden könnte, von denen viele nicht. Wenn Sie mehr klar, welche Aufgaben angeben kann, hat der Agent ausführen, und die gibt es auf dem hat, um diese Entscheidungen zu treffen, eine anständige Technik möglich wird, Kommissionierung. In der Tat kann es sich herausstellen, dass Ihr Problem nicht AI erfordert überhaupt, wenn Sie eine klare Zuordnung zwischen Agenten Demografie und Entscheidungsfindung haben - Sie sehen nur die Antwort aus der Tabelle zu verwenden, die Sie zuvor gemacht. Deshalb ist es wichtig, herauszufinden, was Problem, das Sie eigentlich zuerst zu lösen versuchen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top