6

Ich bin auf der Suche nach C und C++ Implementierungen von künstlichen Intelligenzalgorithmen in Spielen nützlich. Einige von denen ich am meisten interessiere, sind Verstärkungslernalgorithmen, genetische Algorithmen und neurale Netze. Andere sind jedoch auch interessant.Künstliche Intelligenz Bibliotheken

Ich habe gefunden dlib.net, die einige sehr faszinierende Machine Learning-Algorithmen hat, aber diese scheinen nicht besonders auf Spiele ausgerichtet.

Die Lizenzen, die ich verwenden kann, sind die Boost-Softwarelizenz, die Zlib/Libpng-Lizenz und die öffentliche Domäne. Alle Empfehlungen von Bibliotheken, die unter eine dieser Lizenzen fallen, würden sehr geschätzt.

+0

A kurze Notiz. Zu diesem Zeitpunkt benutzen fast keine Spiele und definitiv keine großen, kommerziellen, neurale Netze, genetische Algorithmen usw. als ihre KI-Basis. Sie sind viel zu langsam und komplex. Untersuchen Sie Graphentheorien, Entscheidungsbäume, Zustandsmaschinen und dergleichen. – Xargos

+0

Ich bin auch an all diesen Dingen interessiert. Ich suche wirklich nur einen guten Ausgangspunkt, um weiter zu experimentieren. Haben Sie Tipps für Tutorials, Bibliotheken mit den oben genannten Lizenzen oder andere relevante Ressourcen? –

Antwort

-1

Selbst wenn Sie eine Bibliothek wollten, würde ich Ihnen wärmstens empfehlen, künstliche Intelligenz selbst zu programmieren. Es ist vielleicht nicht so einfach, aber Programmieren bedeutet (meiner Meinung nach) nicht, die Arbeit anderer Leute zu benutzen. Sein

Eine kurze Einführung in das Studium der AI kann here.. (benötigt einige Sekunden zum laden ..)

Wenn Sie mit dem Gedanken der Programmierung auf dem eigenen assimilieren kann nicht gefunden werden, hörte ich über „Kynapse“ ein sehr nettes AI SDK für Middleware-Programme.

Ich hoffe, das hilft irgendwie

+5

meinst du implizieren, dass die Verwendung von Komponenten von Drittanbietern für bestimmte Aufgaben irgendwie die Person hinter dem gegebenen Produkt weniger von einem Programmierer macht? Beim Programmieren geht es um das Codieren und Lösen von Problemen, und eine der Möglichkeiten, ein Problem zu lösen, besteht darin, das von anderen erworbene Wissen und Wissen zu verwenden, um ein besseres Endergebnis zu erzielen (besonders wenn der dritte pardy-Code gut getestet und ausgereift ist). . Natürlich muss es ein Gleichgewicht geben, aber das Rad neu zu erfinden ist nicht unbedingt der beste Kurs, selbst wenn Sie am Ende mehr Code selbst schreiben und dadurch mehr lernen. –

+2

: 3 ja, ich meine das. vielleicht mache ich es falsch, jedes Detail selbst zu programmieren, aber ich bin gerade 18 geworden. Meine verbleibende Zeit auf der Erde scheint lang genug zu sein, um das Rad neu zu erfinden – TheOneAndOnly

+3

Ich glaube nicht, dass du falsch liegst, weil du Code auf deinem Code schreibst besitzen. Ganz im Gegenteil. Aber du liegst falsch, andere zu beurteilen, weil sie einen anderen Weg von deinem Weg gehen wollen, vorausgesetzt sie haben einen guten Grund, Code wiederverwenden zu wollen. Ich habe gute und stichhaltige Gründe, daher sind Ihre Bemerkungen unbegründet und unnötig. –

3

AI ist ein riesiges Feld, so einfach zu sagen „nützlich in Spielen“ bedeutet nicht, zu viel. Dies ist wahrscheinlich nicht genau das, was Sie suchen, aber Sie können möglicherweise etwas aus Alchemie zu verwenden:

"Alchemy ist ein Softwarepaket, das eine Reihe von Algorithmen für statistische relationales Lernen und probabilistische Logik Inferenz, basierend auf der Markov-Logik Darstellung Alchemy Sie eine breite Palette von KI-Anwendungen auf einfache Weise entwickeln kann, einschließlich:. Collective Klassifizierung Link-Vorhersage Entity Resolution Social network Modellierung Informationsextraktion“

http://alchemy.cs.washington.edu/