Kann ein Programm dazulernen?



  • rage_quit schrieb:

    schon mal aufgefallen das menschen etwas erst verstehen wenn man das was man ihnen sagen möchte wiederholt? und der durchschnitts iq leider nicht bei 120 sondern <=100 liegt

    die verteilung des iqs zeigt ganz deutlich das man mit einem hohen iq durchaus intelligent sein kann... aber die masse nicht versteht was man ihnen sagen möchte. bei solchen sachen zählt leider masse statt klasse... pech für euch 👎

    Ehm... was sollte das jetzt? 😕
    Manche Menschen benutzen Foren nicht, um themenbezogene konstruktive, sondern zusammenhanglose destruktive Einträge zu posten.



  • Die Frage ist wohl, ab wann ein Programm "vernünftig" spricht. Umzusetzen kann man das zur Zeit keinesfalls, jedenfalls nicht unter überschaubarem Aufwand. Würde man ein neuronales Netz originalgetreu simulieren, bräuchte man viiiel mehr Transistorenplatz als das Netz selbst, also müsste man selbst ein solches Netz bauen. Der Nachteil davon läge dann aber beim Risiko "machthungriger" oder jedenfalls emotional schwer berechenbarer Roboter (wie fühlt sich ein neuronales Netz, wenn es weiß, dass es nur zur Vergnügung dienen soll) oder was auch immer...
    Man müsste also einen Kompromiss finden aus simulierter Intelligenz und emotionaler Eingrenzung... dafür müsste das Bootstrapping in der Informatik aber noch ein bisschen fortschreiten, damit das realisierbar wird.



  • Kann ein Programm dazulernen?

    Jo, wenn es entsprechend programmiert wird.



  • Also ich hab mal in ner Doku so nen Roboter von den Chinesen gesehen. Dem hat man einen Gegenstand hingestellt und dann ist er von sich aus darauf zugefahren, hat den Gegenstand in die "Hand" genommen und von allen Seiten angeschaut. Dann hat sich der Roboter den Gegenstand "germerkt". Das nächste mal, als er den Gegenstand vorgesetzt bekam, hat er ihn wiedererkannt. Wenn er sich z.B. einen Stuhl hingestellt hat und beim nächsten mal einen etwas anderen Stuhl, der ganz andere Maße hatte, hat er ihn trotzdem als Stuhl erkannt. Das fand ich dann schon sehr beeindruckend



  • Finn schrieb:

    Also ich hab mal in ner Doku so nen Roboter von den Chinesen gesehen.

    Das waren bestimmt die Japaner, nicht die Chinesen.



  • endline schrieb:

    Finn schrieb:

    Also ich hab mal in ner Doku so nen Roboter von den Chinesen gesehen.

    Das waren bestimmt die Japaner, nicht die Chinesen.

    Es gibt sogar ein Dorf in China, in dem ein Mann lebt, der auf seinem eigenen mechanischen Roboter seine Einkäufe erledigt - habe ich zumindest mal im Fernsehen entdeckt.



  • Hi schrieb:

    Jo, wenn es entsprechend programmiert wird.

    👍 Und wenn man damit etwas anfangen kann! :p



  • Für mich ist ein wirklich intelligentes Programm z.B. ein Programm, das ein anderes Programm generieren kann, das intelligenter ist als es selbst (d.h. dieses muss wiederrum ein intelligenteres Programm generieren können usw.)



  • Apropro: Ich und ein Kollege haben mal überlegt, was die "perfekte" Software wäre. Wir sind zum folgenden Entschluss gekommen, welche Funktionalität es beherrschen müsste:

    Man tippt ein Lastenheft in beliebiger Sprache in ein Word-Dokument ein. Dort sind alle Anforderungen an die Software enthalten und dokumentiert. Die Applikation erkennt automatisch die Sprache dieser Datei und ergründet dessen Anforderungen. Anschließend durchläuft es verschiedene Algorithmen, die die "Herrstellungsart" der Software ergründet.
    Beispielsweise entscheidet sich die Anwendung, die zu generierene Software mit openGL zu gestalten. Dann lädt und installiert sie alle möglichen Dateien etc. Anschließend programmiert die Anwendung die zu planende Software, dessen Funktionalitäten im Lastenheft festgehalten sind.

    Das Ergebnis: eine fertige Installations.exe, die nur noch ausgeführt werden muss, um das gewünschte Programm zu installieren.

    Oh mein Gott, würde ich so eine Anwendung entwickeln, wären 10000 Softwareentwickler arbeitslos^^



  • keine Panik, das geht nicht 🙂



  • otze schrieb:

    keine Panik, das geht nicht 🙂

    Rein theoretisch geht es schon - nur ich denke, dass wir diesen Augenblick nicht mehr erleben werden.



  • Nö geht nicht, weil du dazu erstmal nen Menschen erfinden mußt, der das Lastenheft eindeutig verfasst. Heutzutage sind die alle noch widersprüchlich und unvollständig (wenn überhaupt vorhanden).



  • satanfreze schrieb:

    Rein theoretisch geht es schon - nur ich denke, dass wir diesen Augenblick nicht mehr erleben werden.

    Ne, also rein theoretisch geht sowas schonmal nicht. Aber vielleicht ist es zumindest für interessante Spezialfälle möglich.



  • wxSkip schrieb:

    Für mich ist ein wirklich intelligentes Programm z.B. ein Programm, das ein anderes Programm generieren kann, das intelligenter ist als es selbst (d.h. dieses muss wiederrum ein intelligenteres Programm generieren können usw.)

    Dann guckst Du hier: http://www.idsia.ch/~juergen/gmsummary.html

    Ein universeller Problemlöser, der an sich selbst beweisbare, optimale Verbesserungen vornimmt.



  • satanfreze schrieb:

    Rein theoretisch geht es schon - nur ich denke, dass wir diesen Augenblick nicht mehr erleben werden.

    1. Sprache ist inhärent Mehrdeutig.
    2. Problemstellungen können beliebig komplex sein. Ein Beispiel wäre das Problem: "Das Programm soll am Ende in der Lage sein P!=NP zu Beweisen, oder zu widerlegen."



  • otze schrieb:

    satanfreze schrieb:

    Rein theoretisch geht es schon - nur ich denke, dass wir diesen Augenblick nicht mehr erleben werden.

    1. Sprache ist inhärent Mehrdeutig.
    2. Problemstellungen können beliebig komplex sein. Ein Beispiel wäre das Problem: "Das Programm soll am Ende in der Lage sein P!=NP zu Beweisen, oder zu widerlegen."

    Das stimmt. Aber würde man als Vorraussetzung nehmen, dass man eindeutige, klare Informationen in das Lastenheft einträgt. Ebenfalls unlogische oder unwahre Informationen sollten dort nicht eingetragen sein.
    Nur weil es heutzutage noch unseren Horizont übersteigt, heißt es ja nicht, dass es niemals umsetzbar wäre.



  • Jester schrieb:

    Ne, also rein theoretisch geht sowas schonmal nicht. Aber vielleicht ist es zumindest für interessante Spezialfälle möglich.

    Ich weiß nicht, ob ich deine Aussage richtig interpretiert habe, aber wieso soll das nicht gehen? Dass es doch geht, dafür sind Lebewesen der (pardon) lebende Beweis.
    Die Frage, ob Menschen jemals in der Lage sein werden, etwas vergleichbares nachzubauen, ist wieder eine andere Frage, die der theoretischen Machbarkeit aber keinen Abbruch tut.



  • Athar schrieb:

    Ich weiß nicht, ob ich deine Aussage richtig interpretiert habe, aber wieso soll das nicht gehen? Dass es doch geht, dafür sind Lebewesen der (pardon) lebende Beweis.

    Nein. Es gibt meistens eine große Diskrepanz zwischen dem, was der Kunde möchte und dem was im Lastenheft steht. Es ist fast immer zusätzliche Information vonnöten, um den Inhalt des Lastenheftes korrekt interpretieren zu können. Und selbst dann hagelt es Fehler. Bereits die Anforderung ein eindeutiges Lastenheft zu schreiben ist damit völlig utopisch. Auch ist es bei der Umsetzung nicht klar, ob es einen Algorithmus gibt, der die Anforderungen am Ende in ein Programm umsetzen kann.

    Für spezialfälle wird das sicherlich mal gehen, wenn man das Problem in einer bestimmten eineindeutigen Art formulieren kann und alle Teilproblemstellungen bereits gelöst sind. Aber das ist am Ende nichts anderes, als sich ein Programm aus Komponenten zusammenzuklicken. Sowas gibt es aber bereits zuhauf.



  • Die Frage ist nicht eindeutig gestellt. Was soll denn das Programm selbst lernen können, sich selbst optimieren, Codierfehler bereinigen, geänderte Bedingungen oder Anforderungen einfügen, häufige Benutzerfehler eliminieren oder was? 😕

    Natürlich kann man ein Programm schreiben, das aus seinem Sourcecode einen neuen erstellen kann und dann gleich eine neue EXE macht. Vorstellen kann man sich nahezu alles. Ist jetzt aber nicht mein Ding zum weiteren Nachdenken! :p

    @otze: Sowas wäre toll - eine Programmierhilfe, was der Kunde gewollt, der Programmierer aber nicht voll verstanden hat. Wie macht man das?



  • Das ist äußerst interessant: viele hier beziehen die Ungenauigkeit der Beschreibungen in dem Lastenheft, geschaffen durch den Menschen selbst, mit ein, sodass die Software Schwierigkeiten bekommen könnte, die Aussagen komplett und exakt zu interpretieren.

    Wie wäre es, wenn die Anwendung den Gedankengang der Planung ebenfalls übernimmt? Das heißt, die Anwendung "erahnt" die Bedürfnisse des Anwenders und erschafft eine dementsprechende Software, die diese Bedürfnisse befriedigt.

    Auch wenn wieder Leute losschreien, dass dies doch total unmöglich sei: für die Homosapiens die vor 70.000 Jahren lebten war es auch unvorstellbar, Häuser aus Holz zu bauen - jetzt ragen Wolkenkratzer mit bis zu 800 Metern Höhe in den Himmel.


Anmelden zum Antworten