Künstliche Intelligenz

Künstliche Intelligenz.
Ein großer Name nicht? Eine Intelligenz, von Menschen erschaffen – künstlich erstellt, nicht aus Natürlichen entsprungen.
Was genau ist eine KI (~ Künstliche Intelligenz), was sind Beispiele, wie kann man eine solche Programmieren und vielleicht mit am wichtigsten, was sind praktische Anwendungsmöglichkeiten?

Was genau ist eine KI?

Als allgemeine Definition wird hierbei geliefert:

ein Forschungsgebiet, in dem versucht wird, Mechanismen zu entwerfen, mit denen Maschinen oder Computer intelligentes Verhalten entwickeln können.

Eine recht umfassende und schöne Definition. Ich will hierbei nichts mehr hinzufügen.

Kleinere Beispiele:

Um nicht zu viel vorweg zu nehmen, für den späteren Punkt „praktische Anwendungsmöglichkeiten“ greife ich hier meinen Beitrag „Einen Schach Bot programmieren“ auf.
Denn auch hier muss der Computer aufgrund von vielen Vergleichen und Berechnungen „entscheiden“ welchen Zug er zieht. Wobei jeder Computerspiel Gegner auch aus einer KI besteht. Aber wie gesagt, später mehr.

Wie kann man eine solche Programmieren?

Hierfür nehme ich Java C++, da hier, finde ich, eine schnelle Systemnahe Programmiersprache von Nöten ist.

Ziel der KI:
Letzten Endes soll die KI sprechen lernen. Jedoch soll die KI so sprechen wie ich. Also soll sie mit dem Worten, die ich wahrscheinlich benutzen würde, auf Fragen antworten.

Umsetzung:
/*Da dies wieder einer der vielen Beiträge ist, welche ich Nachts am Smartphone   *schreibe, kann ich keine Code Beispiele bringen, welche ich aber evtl bald   *haben werde. Was ich mir vorstelle ist ein Lernprozess. Die KI soll erst mal eine *Frage, dann eine Antwort entgegen nehmen. Um unnötige Server Anbindungen *zu verhindern, schreibe ich alles mit einem Filestream in eine Textdatei. */

Tja von wegen unnötige Server Anbindung! Ich wurde darauf hingewiesen, dass das eine sehr schlechte Idee ist, deshalb wäre eine neue Option das ausweichen auf SQL. Die Abfrage dürfte deutlich schneller funktionieren, als mit einer Textdatei. Einen Versuch war es ja Wert 😉

Das Programm darf nach dem Auslesen aussuchen, welche Antwort besser zu mir passt (Falls eine Frage mehrfach gestellt wurde Versteht sich).

Der Lernprozess findet so statt, dass ich als psittacus, mit dem Programm schreiben muss, damit es etwas lernen kann. Wie ein Lehrer, der Schülern Dinge beibringen soll(te).

Praktische Anwendungsmöglichkeiten:

Eine künstliche Intelligenz ist vielseitig einsetzbar und wird auch noch später hoch gefragt sein.

In der Computerspiele Welt, muss der Gegner wissen, wohin er laufen muss und wen er abschießen muss bzw. Darf.

Ich würde auch die Werbung von Google dazunehmen. Irgendwer muss auch angepasste Werbungsvorschläge bringen. Beispielsweise bekomme ich viel Werbung über Computer, aber niemals Werbung über Einhornbettwäsche, obwohl mich diese selbstverständlich auch stark interessiert. Spaß beiseite, diese Auswertung macht auch ein Programm und keine Billigfachkraft.

Man stößt nach langem überlegen auf viele Beispiele. Ich kann und will nicht alle hier nennen.

Danke, das ihr so weit gelesen habt,

gez. psittacus.

*EDIT*

Nachdem ich mehrfach darauf hingewiesen wurde, dass das Abspeichern in Textdateien sinnlos ist, musste ich mir eingestehen, dass dieser von mir wohl recht unzureichend durchdachter Gedanke verbessert werden muss.

4 Gedanken zu „Künstliche Intelligenz

  1. Hallo,
    klingt auf jeden Fall interessant 😉 Nur solltest du besser nicht nur eine Datei nehmen, um die Daten zu speichern sonder besser auf eine DB zurückgreifen – alleine wegen der Geschwindigkeit 😀 Außerdem dauert es sehr lange bis einzelne große Dateien geöffnet werden….

    1. Ja klar. Aber Datenbanken in C++ einzubinden habe ich bisher noch nie verwendet und muss es mir erst aneignen. Deswgeen habe ich vorerst auf simple Textdatein zurück gegriffen. Haha und ja mit der Geschwindigkeit gebe ich dir natürlich recht, aber solange es nur beim öffnen so plange dauert, ist das zu verkraften! 😀

      1. Es dauert aber nicht nur beim Öffnen so lange. Da eine KI im Normalfall lernfähig ist, wächst ihre Datenbasis immer weiter. Öffnest du eine Datei, wird diese entweder komplett oder zeilenweise in den RAM geladen. Bei ersterem geht dir irgendwann der RAM aus. Bei zweiterem wächst die Reaktionszeit immer weiter an, da die Anzahl der Zeilen wächst. Daher würde ich dir auch dringend empfehlen dich mit Datenbanken, DB-Design usw. zu befassen, bevor du dich an eine KI wagst, die mehr als nur vorgegebene Lösungswege verfolgen soll. Bei einem Projekt, das ich derzeit unterstütze, ist die Datenbasis der KI mittlerweile so weit gewachsen, dass wir Cloud-Instanzen zuschalten müssen, damit sie diese überhaupt noch in einer angemessenen Zeit abarbeiten kann. Die KI selbst hält nur noch einen Index der zur Verfügung stehenden DB-Server sowie von ihr selbst entworfene „Micro-Abbildungen“ der auf den Servern vorhandenen Daten vor. So weiss sie auf welche Instanz sie zugreifen muss um auf zu einer Aufgabenstellung gehörende Datensätze Zugriff zu erhalten. Und selbst das frisst jede Menge Ressourcen, da sie die Daten ständig neu organisiert um sie an ihre „Probleme“ besser anzupassen.

        Im Übrigen ist eine systemnahe Sprache keineswegs notwendig, wenn die verwendete Sprache in der Lage ist ihre Algorithmen komplett im RAM zu halten.

        1. Habe das ganze nun auch Überarbeitet und editiert 🙂 War natürlich dumm von mir zu denken, ich könnte alles da rein schreiben…Naja das kommt davon, wenn man manche Dinge nicht 100% durchdenkt!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.