Der Durchbruch - Erzeugung künstlicher allgemeiner Intelligenz



  • MoonKnightTL schrieb:

    Das ist immerhin eine ziemlich gute Idee. Es gibt im Moment noch keine Go-Programme (Brettspiel Go), die so stark spielen, wie die stärksten menschlichen Spieler. Wenn man die Kompetitoren dadurch selektiert, dasss man sie gegeneinander Go spielen lässt, wird man sehr starke Go-Programme erhalten.

    Gut, ich will sehen.



  • otze schrieb:

    und der Suchraum des GA muss hinreichnd komplex sein - was er nicht ist.
    und der GA darf nicht in lokale minima laufen - was er wird
    und du musst den Algorithmus lang genug laufen lassen - was du nicht kannst

    wenn das funktionieren würde, würden wir es tun.

    Das fasst es gut zusammen, wobei man Punkt 2 wohl noch umgehen kann indem man zufällig auch "minderwertige Wesen" am leben lässt.

    Punkt 3 ist Mmn der Knackpunkt an dem es scheitert.
    Evtl. schafft Quantencomputing durch enorme parallele Rechenleistung in Zukunft abhilfe.



  • InfoMinfo schrieb:

    Das fasst es gut zusammen, wobei man Punkt 2 wohl noch umgehen kann indem man zufällig auch "minderwertige Wesen" am leben lässt.

    Das tut man eh. Sonst hat man ruck zuck keine Diversivität mehr im Gen-Pool. Das Problem bleibt dummerweise trotzdem. Irgendwann ist die Entscheidung gefallen, daß Leben auf der Erde was mit Aminosären zu tun hat und die sind inzwischen so gut, daß keiner mehr mit was anderem ankommen kann.

    InfoMinfo schrieb:

    Punkt 3 ist Mmn der Knackpunkt an dem es scheitert.
    Evtl. schafft Quantencomputing durch enorme parallele Rechenleistung in Zukunft abhilfe.

    Jo. Aber dann könnte man mit weniger Bits das beste Genom auch direkt suchen, fürchte ich.



  • MoonKnightTL schrieb:

    Wenn die Ideen nicht neu wären, würde es denkende Maschinen schon längst geben[...]

    Oder aber die Tatsache, das die Ideen bereits alt sind _und_ das es immer noch keine denkenden Maschinen gibt ist der Beweis dafür das diese Ideen nicht funktionieren...



  • MoonKnightTL schrieb:

    Das ist immerhin eine ziemlich gute Idee. Es gibt im Moment noch keine Go-Programme (Brettspiel Go), die so stark spielen, wie die stärksten menschlichen Spieler. Wenn man die Kompetitoren dadurch selektiert, dasss man sie gegeneinander Go spielen lässt, wird man sehr starke Go-Programme erhalten.

    Aber dann hast du wiederum nur Programme, die auf eine sehr spezielle Aufgabe "eingeschränkt" sind. Schachcomputer sind auch nicht intelligent... sie sind nur eben sehr gut spezialisiert auf genau ein Problem. Nämlich den Sieg beim Schach 😉



  • loks schrieb:

    MoonKnightTL schrieb:

    Wenn die Ideen nicht neu wären, würde es denkende Maschinen schon längst geben[...]

    Oder aber die Tatsache, das die Ideen bereits alt sind _und_ das es immer noch keine denkenden Maschinen gibt ist der Beweis dafür das diese Ideen nicht funktionieren...

    So würde ich das nicht sagen. Es wurde nur bisher keine Lösung gefunden, die die derzeitigen Kriterien für "Intelligenz" erfüllt. Aber das hat nichts zu bedeuten. So arbeitet die Wissenschaft schon seit 2000 Jahren. Kommt Zeit kommt Rat.


  • Mod

    It0101 schrieb:

    So würde ich das nicht sagen. Es wurde nur bisher keine Lösung gefunden, die die derzeitigen Kriterien für "Intelligenz" erfüllt. Aber das hat nichts zu bedeuten. So arbeitet die Wissenschaft schon seit 2000 Jahren. Kommt Zeit kommt Rat.

    Trotzdem muss man nicht immer den gleichen alten, kalten Kaffee probieren, ob er inzwischen heiß geworden ist. Die Idee in ihrem derzeitigem Zustand funktioniert ganz eindeutig nicht und es ist schon eine revolutionäre Neuheit nötig, damit es sich lohnt, sich das noch einmal anzusehen. Ein paar aufgeschnappte Ideen über genetische Algorithmen und die flotte Idee, diese auf einen schwammig definierten Begriff loszulassen, sind kein guter Ansatz. Zudem wurde hier im Thread sogar erklärt, warum das nicht funktioniert, und nicht bloß darauf aufmerksam gemacht, dass die Idee uralt ist (und wir trotzdem nicht einmal den Ansatz einer KI haben).



  • Die Entwicklung einer allgemeinen künstlichen Intelligenz ist einfach. Habe ich schon gemacht, aber ich hab den Code wieder gelöscht, weil ich ja nicht daran schuld sein will, dass die Menschheit von Rototern ausgelöscht wird.



  • SeppJ schrieb:

    Ein paar aufgeschnappte Ideen über genetische Algorithmen und die flotte Idee, diese auf einen schwammig definierten Begriff loszulassen, sind kein guter Ansatz.

    Das wollte ich damit auch nicht sagen 😃
    Ich habe mich im Studium relativ viel mit GenAlg beschäftigt um zu wissen, wofür man die Dinger sinnvoll einsetzen kann, und wofür sie mehr oder weniger unbrauchbar sind. In meinen ganz wahnsinnigen Zeiten habe ich damit sogar mal Sudokus gelöst 😃

    Ich wollte eigentlich nur sagen, dass man die Idee einer KI nicht komplett verwerfen sollte, auch wenn mir derzeit kein tauglicher Ansatz einfällt. Aber wenn man bedenkt wieviel Forschungszeit auch heute noch in das Verständnis des Gehirns und seiner Neuronen investiert wird, dann wird es eines Tages auch Fortschritt hinsichtlich einer KI geben. Ich habe meine DA über (optische) Musterkennung im Gehirn geschrieben und bin daher optimistisch, dass man mit der biologisch plausiblen Nachbildung von Neuronen durchaus noch deutlich mehr machen kann und eines Tages auch eine KI erschaffen kann.


  • Mod

    It0101 schrieb:

    Ich wollte eigentlich nur sagen, dass man die Idee einer KI nicht komplett verwerfen sollte, auch wenn mir derzeit kein tauglicher Ansatz einfällt.

    Ich wollte das auch nicht sagen, dass man nicht weiter forschen sollte (im Gegenteil!), bloß dass man sich nicht als Hobbyprogrammierer die Hoffnung machen sollte, den Durchbruch durch Kombination von zwei Wikipediaartikeln zu erreichen.



  • In dem Punkt würde ich dir zustimmen 😃



  • Also, da ihr so vile von euren Gegenargumenten haltet, werde ich mir mal die Mühe machen, sie zu widerlegen.
    Also, zu diesen Malbolge-Programmen sehe ich keinen Zusammenhang. Weiterhin:

    otze schrieb:

    und der Suchraum des GA muss hinreichnd komplex sein - was er nicht ist.
    und der GA darf nicht in lokale minima laufen - was er wird

    Den Suchraum habe ich glaube ich gar nicht spezifiziert. Aber wenn man bei dem Beispiel des Roboters bleibt, der laufen lernen soll, dann sind die Bedingugnen denke ich schon erfüllt.

    otze schrieb:

    und du musst den Algorithmus lang genug laufen lassen - was du nicht kannst

    Also nicht verwechseln, es geht hier nicht um das P-NP-Problem. Wenn wir eine allgemeine künstliche Intelligenz erschaffen könnten, deren einziges Manko ist , dasss sie etwas langsam läuft, wäre das schon ein sensationeller erfolg. Zudem sei darauf hingewiesen, dass der Mensch auch nicht sonderlich schnell lernt. Es braucht wochenlange Übung um ihm das Ein-mal-Eins beizubringen, während Computer das total schnell können.



  • MoonKnightTL schrieb:

    Zudem sei darauf hingewiesen, dass der Mensch auch nicht sonderlich schnell lernt. Es braucht wochenlange Übung um ihm das Ein-mal-Eins beizubringen, während Computer das total schnell können.

    Der Mensch lernt in der Zeit aber noch tausend andere Sachen. Beim Computer zählt die Multiplikation einfach zu den Sachen, die ihm bei der Herstellung mitgegeben wurden. Das lernt er nicht.


  • Mod

    MoonKnightTL schrieb:

    otze schrieb:

    und der Suchraum des GA muss hinreichnd komplex sein - was er nicht ist.
    und der GA darf nicht in lokale minima laufen - was er wird

    Den Suchraum habe ich glaube ich gar nicht spezifiziert. Aber wenn man bei dem Beispiel des Roboters bleibt, der laufen lernen soll, dann sind die Bedingugnen denke ich schon erfüllt.

    Anders gesagt: Du hast nicht einmal darüber nachgedacht, ob das ein Problem sein könnte. Selbst jetzt scheint dir nicht klar zu sein, was das Problem ist, wenn dein Gegenargument ist, dass du den Suchraum nicht spezifiziert hast und meinst, das Gegenargument zähle daher nicht. Spezifizier doch mal. "Denke ich" ist bei deiner nicht vorhandenen Praxiserfahrung mit GA kein gutes Argument. otze hat nämlich Erfahrung.

    Außerdem tust du dir selber keinen Gefallen, auf dem Gebiet des Laufenlernens ein Strohmannargument zu gewinnen zu versuchen. Laufenlernen hat mit Intelligenz gar nichts zu tun. Außerdem sind wir hier alle alte Internethasen und durchschauen Strohmannargumente und werten den, der versucht sie zu benutzen, gleich erst einmal ab. Denn wenn er das nötig hat, dann hat er wohl keine Argumente und wenn er denkt, er käme damit durch, hält er uns wohl für doof 👎 .

    otze schrieb:

    und du musst den Algorithmus lang genug laufen lassen - was du nicht kannst

    Also nicht verwechseln, es geht hier nicht um das P-NP-Problem. Wenn wir eine allgemeine künstliche Intelligenz erschaffen könnten, deren einziges Manko ist , dasss sie etwas langsam läuft, wäre das schon ein sensationeller erfolg. Zudem sei darauf hingewiesen, dass der Mensch auch nicht sonderlich schnell lernt. Es braucht wochenlange Übung um ihm das Ein-mal-Eins beizubringen, während Computer das total schnell können.

    Wieder scheinst du bloß ein bisschen Wikipediawissen anzubringen (hier: Lange Laufzeit). P-NP ist wieder ein Nebenschauplatz, der überhaupt nichts mit dem Problem zu tun hat. Dein Problem ist auch nicht, wie schnell oder langsam das KI-Programm läuft, dein Problem ist, dass dein KI-Programm gar nicht erst entwickelt wird, da der GA ewig lange laufen wird. Dies unter der Voraussetzung, dass du die anderen genannten Probleme überhaupt schon gelöst bekommen hast. Was dir nicht gelingen wird.

    Also, zu diesen Malbolge-Programmen sehe ich keinen Zusammenhang.

    Dann guck dir das noch einmal genauer an, guck dir an was Malbolge ist, wie sich wohl die Schwierigkeit deines Vorhabens zur Schwierigkeit von Malbolge verhält und lies dir durch, wie die real existierenden Programme entstanden sind (wo der GA scheiterte) und denk darüber nach, warum der GA scheiterte. Wenn du dann immer noch keinen Zusammenhang siehst, dann kann ich dir auch nicht weiter helfen. Vielleicht kannst du ein Programm schreiben, welches mittels GA eine KI entwickelt, die volkards Argument versteht.



  • Achja, das sollte ich vielleicht noch sagen:

    otze schrieb:

    und der GA darf nicht in lokale minima laufen - was er wird

    Also bleiben wir bei dem Beispiel des Laufen lenrnenden Roboters. Der Roboter wird nicht sofort lossprinten. Man muss ihm das Laufen ggf. Stück für Stück beibringen. Also erstmal soll er sich überhaupt bewegen. Tut er das, wird er dafür belohnt. Also die Lebensenergie der aktiven Kompetitioren wird erhöht. Wenn er das geschafft hat, geht es darum, bestimmte Bewegungen zu belohnen, die für das Laufen hilfreich sein könnten. Bis er schließlich laufne kann.
    Zu den Malbolge-Programmen sthet in der wikipedia, es soll unmöglich sein, sinnvolle Programme damit zu schreiben. aslo die Programmiersprache Malbolge soll so schwer sein dass Hello World schon total kkompliziert zu schreiben ist. Wahrscheinlich geht es also darum, dass GP Schwierigkeiten damit hat, den ersten Schritt durchzuführen und simple Programme wie Hello World zu entstehen zu lassen. aber auch hier muss man wieder so vorgehen, wie ich es schon beschrieben habe, Schritt für Schritt. Man muss die Kompetitoren bereits für Teilerfolge belohnen. Wenn der Mensch Malbolge lernt, dauert es ja auch seine Zeit und er lernt es nicht, indem er durch Probieren zum Hello World in Malbolge kommt. 'Sondern er eignet sich die Sprache ja auch Stück für Stück an. Liest sich Stück für Stück an, wie die Sprache zu nutzen ist.



  • MoonKnightTL schrieb:

    Achja, das sollte ich vielleicht noch sagen:

    otze schrieb:

    und der GA darf nicht in lokale minima laufen - was er wird

    Also bleiben wir bei dem Beispiel des Laufen lenrnenden Roboters. Der Roboter wird nicht sofort lossprinten. Man muss ihm das Laufen ggf. Stück für Stück beibringen. Also erstmal soll er sich überhaupt bewegen. Tut er das, wird er dafür belohnt. Also die Lebensenergie der aktiven Kompetitioren wird erhöht. Wenn er das geschafft hat, geht es darum, bestimmte Bewegungen zu belohnen, die für das Laufen hilfreich sein könnten. Bis er schließlich laufne kann.

    Du beschreibst nur die Sachen die klar und einfach sind und nicht die wichtigen Details. Wie soll das alles bewertet werden? Woher weiß man welche Bewegung gut fürs Laufen sein soll? Willst du die Zielbewegung schon vorher als Lösung hinterlegen und dann vergleichen? Was soll dann noch künstliche Intelligenz sein? Beschreib mal detailliert wie du feststellst, wenn ein Kompetitior gut gelaufen ist und wie die und von wem seine Lebensenergie erhöht wird.



  • Taschengelderhöhung schrieb:

    MoonKnightTL schrieb:

    Achja, das sollte ich vielleicht noch sagen:

    otze schrieb:

    und der GA darf nicht in lokale minima laufen - was er wird

    Also bleiben wir bei dem Beispiel des Laufen lenrnenden Roboters. Der Roboter wird nicht sofort lossprinten. Man muss ihm das Laufen ggf. Stück für Stück beibringen. Also erstmal soll er sich überhaupt bewegen. Tut er das, wird er dafür belohnt. Also die Lebensenergie der aktiven Kompetitioren wird erhöht. Wenn er das geschafft hat, geht es darum, bestimmte Bewegungen zu belohnen, die für das Laufen hilfreich sein könnten. Bis er schließlich laufne kann.

    Du beschreibst nur die Sachen die klar und einfach sind und nicht die wichtigen Details. Wie soll das alles bewertet werden? Woher weiß man welche Bewegung gut fürs Laufen sein soll? Willst du die Zielbewegung schon vorher als Lösung hinterlegen und dann vergleichen? Was soll dann noch künstliche Intelligenz sein? Beschreib mal detailliert wie du feststellst, wenn ein Kompetitior gut gelaufen ist und wie die und von wem seine Lebensenergie erhöht wird.

    Also, das Laufen könnte man z.B. unterteilen in Hinstellen und loslaufen. Hinstellen z.B. in Hüfte hochbewegen und Rumpf hochbewegen.
    Bewertete wird das ganze im Hauptprogramm. Bei Hüfte hochbewegen werden z.B. die Koordinaten der Hüfte gegenüber dem Boden verglichen und je nachdem der Roboter belohnt oder nicht. Belohnt wird, indem eine Funktion der Klasse aufgerufen wird, die die Kompetitoren verwaltet. Diese Funktion schaut dann, welche Kompetitoren aktiv sind und erhöht deren Lebensenergie.



  • Was ist dann noch die große Intelligenz zum läufen lernen, wenn du schon vorgibst, dass "Hüfte hochbewegen" gut ist? Das ist doch nur noch vorgegebene Lösung mit GA suchen.



  • MoonKnightTL schrieb:

    Taschengelderhöhung schrieb:

    MoonKnightTL schrieb:

    Achja, das sollte ich vielleicht noch sagen:

    otze schrieb:

    und der GA darf nicht in lokale minima laufen - was er wird

    Also bleiben wir bei dem Beispiel des Laufen lenrnenden Roboters. Der Roboter wird nicht sofort lossprinten. Man muss ihm das Laufen ggf. Stück für Stück beibringen. Also erstmal soll er sich überhaupt bewegen. Tut er das, wird er dafür belohnt. Also die Lebensenergie der aktiven Kompetitioren wird erhöht. Wenn er das geschafft hat, geht es darum, bestimmte Bewegungen zu belohnen, die für das Laufen hilfreich sein könnten. Bis er schließlich laufne kann.

    Du beschreibst nur die Sachen die klar und einfach sind und nicht die wichtigen Details. Wie soll das alles bewertet werden? Woher weiß man welche Bewegung gut fürs Laufen sein soll? Willst du die Zielbewegung schon vorher als Lösung hinterlegen und dann vergleichen? Was soll dann noch künstliche Intelligenz sein? Beschreib mal detailliert wie du feststellst, wenn ein Kompetitior gut gelaufen ist und wie die und von wem seine Lebensenergie erhöht wird.

    Also, das Laufen könnte man z.B. unterteilen in Hinstellen und loslaufen. Hinstellen z.B. in Hüfte hochbewegen und Rumpf hochbewegen.
    Bewertete wird das ganze im Hauptprogramm. Bei Hüfte hochbewegen werden z.B. die Koordinaten der Hüfte gegenüber dem Boden verglichen und je nachdem der Roboter belohnt oder nicht. Belohnt wird, indem eine Funktion der Klasse aufgerufen wird, die die Kompetitoren verwaltet. Diese Funktion schaut dann, welche Kompetitoren aktiv sind und erhöht deren Lebensenergie.

    Mooment.
    Nachdem Du den Roboter intelligent gebaut hast mit Beschleunigungssensoren, Beinen mit mehrern Bewegungsachsen, Aktoren, die schnell und stark genug erscheinen, Energieversorgung, Prozessor und einem Rahmenprogramm, das nur noch ein paar Parameter ausgefüllt braucht! ⚠
    Ja, dann kannste einen GA drauf loslaufen lassen, der für die Fuzzy-Steuerung bessere Bereichsgrenzen findet.

    <ironie>Die KI wird natürlich doppelt so gut, wenn Du zwei Wikipedia-Artikel kombiniertst (also eine Kreuzung in GA-Sprech). Perfekt eignen sich genetische Algorithmen und neuronale Netze als Eltern. Die Crux an den Netzen ist nämlich genau auch, daß sie überhaupt nicht lernen, wenn man sie wo einsetzt, wo sie nicht passen. Und beide setzt man gerne ein, wenn man überhaupt nicht weiter weiß, als Notnagel, und als Zugeständnis.
    Also einfach weiterhin, weil absolut nicht zu vermeiden, den Roboter intelligent bauen mit Beschleunigungssensoren, Beinen mit mehrern Bewegungsachsen, Aktoren, die schnell und stark genug erscheinen, Energieversorgung, Prozessor und einem Rahmenprogramm, das nur noch ein paar Parameter ausgefüllt braucht. Und zwar wird es alle Sensoren und alle Aktuatoren über ein neuronales Netz verbinden. Und jetzt kommt der Clou: Das Netz wird nicht durch Rückkopplung oder so einen Schmarrn lernen, was ja eh nicht klappt, die Netztopologie und die Gewichte werden einfach als Genom dargestellt und ein genetischer Algorithmus wird sie verbessern.</ironie>



  • KI ist seit langem eine nicht erreichte Zielvorstellung. Man kann schon viele motorische Intelligenz erfolgreich simulieren.
    Ich hoffe aber stark, dass es vollständig und mit einer höherer Intelligenz als von uns Menschen auch für nicht-motorische Dinge nicht gelingen wird.
    Alles weitere sieht man sich gerne in Fernsehfilmen an!

    Zombie lässt grüssen! 🙂


Anmelden zum Antworten