|
|
Aktuelle Beiträge
|
25.11.2003 - 11:48 Uhr |
#3758 By
withoutBorders |
(pMsg,
reply) |
Kann dir gern Material dazu geben wenn es dich interessiert. Aber damit ASIMO funzt müssen im moment noch mehr bedingungen erfüllt sein als zumutbahr sind
|
|
|
25.11.2003 - 20:45 Uhr |
#3766 By
ngl]hacker |
(pMsg,
reply) |
die videos sind aber schon ziemlich beeindruckend... wenn das ding es schafft auf einer ebene umzulenken, dann wird sicher bald auch unebenes gelände drin sein...
|
|
|
25.11.2003 - 23:26 Uhr |
#3771 By
stealthUser |
(pMsg,
edit,
reply) |
aber das kann der nur wenn die strecke genau xxx.schieß mich tot ist und absolut nichts dazwischen kommt sagen wir wind
|
|
|
26.11.2003 - 8:49 Uhr |
#3772 By
scl:end: |
(pMsg,
reply) |
den seine bewegungsabläufe sind doch so weit ich weiß auch vorprogrammiert... nichts mit wirklich selber laufen... aber gut sieht es schon aus... wenn da jetzt noch jemand ordentlich intelligenz reinsetzt, wird es interessant %ok%
|
|
|
26.11.2003 - 14:07 Uhr |
#3774 By
ngl]hacker |
(pMsg,
reply) |
wie siehst eigentlich mit der "einfachen" 4-gewinnt KI aus?... .. praktisch einen gegner zu bauen, der von keinem gesteuert wird und der sich dann an die spitze der 4-gewinnt spieler schlägt... was meint ihr?
|
|
|
26.11.2003 - 14:45 Uhr |
#3775 By
withoutBorders |
(pMsg,
reply) |
prinziepiell gut man braucht nur genügend trainingsdatensätze und zeit zum coden aber das ist ja kein problem...bis auf die zeit vieleicht %g% aber wer mal lange weile hat viel spaß %ok%
|
|
|
27.11.2003 - 12:09 Uhr |
#3786 By
ngl]hacker |
(pMsg,
reply) |
ich habe datensätze in folgendem format: 74269165724 (züge der personen im wechsel) und wer gewonnen hat 1,2 oder 3-draw.. .. wichtig iss halt die viel gepriesene "vorverarbeitung", in der man festlegt, welche spielzüge das neuronale netz lernen soll: Nämlich die, [b]wo es gewinnen kann[/b]. Also muss man die Datensätze immer so umbauen, dass die Züge des Gewinners als array angegeben werden und damit füttert man das neuronale netz.
hier 2 beispiele: [url=http://www.ngl2000.com/index.php?mod=stack4&gameid=1473]spiel 1473[/url] [url=http://www.ngl2000.com/index.php?mod=stack4&gameid=1456]spiel 1456[/url]
datenbank dazu: [i]sd_id 1473 | 1456 sd_uid1 50 | 73 sd_uid2 64 | 5 sd_field 000000000100000011200002210000112000012222 | 000000000000100011120002112000122120212122 sd_replay 445355433354736 | 43655544733665247366 sd_status 4 | 3 (3=spieler1won, 4=spieler2won, 5=draw) sd_score1 -2 | 7 sd_score2 2 | -7 sd_lastupt 1069694141 | 1069410633[/i]
|
|
|
27.11.2003 - 14:10 Uhr |
#3787 By
withoutBorders |
(pMsg,
reply) |
also ich denk man müsste eine 42 dimensionale+1 dimensionale+ n dim rückkopplung (mit n element Z) eingabeschicht machen (die eine dim für ne bewertung) und eine 7 dim ausgabeschicht. als trainigsdatensätze muß man auch phasen eines spieles haben,wobei der weitere Spielverlauf partiell rückgekoppelt wieder als input diehnt. es müsste dann auch so etwas wie ein zeitfesnser sein, Außerdem zu überlegen währe ob man nicht direkt die rückkopplung dierekt auf die bewertung zurückführt. Man könnte natürlich auch zur Bewertung einen stochastischen aspekt betrachten was vieleicht den einsatz von Hidden-Markov Neuronen berechtigt. Oder man macht lieber einen ansatz über eine SOFM. Freue mich auf Feedback. Dann gutes schaffen %ok%
|
|
|
27.11.2003 - 19:43 Uhr |
#3796 By
ngl]hacker |
(pMsg,
reply) |
[b]Was ist ein neuronales netz eigentlich?[/b] Ein neuronales netz ist wie eine schaltung, die viele Eingänge und einen Ausgang hat und dazwischen liegen ganz viele Widerstände , die den Strom bremsen können und somit den Strom am Ausgang verändern können.
An die Eingänge der Schaltung legt man die Felder des 4-gewinnt-spieles. Der Strom, der jetzt aus dem Ausgang herauskommt gibt an, in welches Feld das neuronale Netz den Stein werfen würde. Am Anfang würde das ganz viele Fehler geben (da die Widerstände alle zufällig viel Strom durchlassen).
[b]Der Lernvorgang[/b] ist nun dazu da, diese Widerstände im Netz so zu verändern, dass am Ausgang der Schaltung immer die richtige Zahl 1...7 herauskommt (ein Wurf des Steines).
[b]Was passiert beim Lernen?[/b] Man legt eine Spielszene an die Eingänge der Schaltung und schaut was am Ausgang herauskommt (z.B. Ausgang sagt: [b]in Feld 1 [/b]den Stein werfen). Man kennt die Antwort ( z.B. [b]richtig wäre [/b]den Stein in Feld 5 zu werfen). Nun [b]"bestraft"[/b] man die Widerstände in Abhängigkeit vom Fehler 5-1 = 4 (die Schaltung hätte 4 Felder vorbeigeschossen. Je größer der Fehler, umso mehr verkleinert/vergrößert man die Widerstände.
Je öfter man diese Bestrafung durchführt, desto geringer der Fehler. Irgendwann trifft das Netz auch wirklich das Feld 5 (=die richtige Position).
[b]Folgerung:[/b] Man könnte denken das Netz kann nach dem Lernvorgang [b]perfekt spielen(?)[/b]. [b]falsch![/b] Es gibt soooo viele Züge, die das Netz nicht gelernt hat (man kann dem Netz nicht alle möglichen Spielzüge geben und sagen, was richtig wäre -> mehr als 10.000.000 Möglichkeiten). Die [b]gute Sache [/b]ist aber: Das Netz kann aber interpolieren. D.h. es findet für [b]jede Situation [/b]eine halbwegs "schlaue" Lösung. Und das ist es was wir wollen: [i]Es verhält sich wie ein Mensch. Manchmal recht dumm, dann wieder recht schlau.[/i]
Editiert
am 27.11.2003 - 19:44 Uhr
|
|
|
27.11.2003 - 22:40 Uhr |
#3807 By
withoutBorders |
(pMsg,
reply) |
hack das kann ich so net stehenlassen sorry, also prinzipiell hast du ja recht wenn man es stark vereinfacht betrachtet nur ist es halt etwas schwerer für ein nn eine logik zu finden da es halt einen haufen unlinearitäten enthält. man kann es es auch nur beschränkt als regelkreis betrachten außer vieleicht einfache perzeptrons. aber wenn man etwas kompexere strukturen ala SOFM oder HMM betrachtet kann man das net mehr so einfach sagen. Was man eigendlich ereichen will ist ja mit möglichst wenig aufwand struktur usw. eine möglichst gute generalisierungseigenschaft ereichen. d.h. ein richtiges verhalten auf völlig unbekannte eingaben,das ist nicht immer interpolation da sich die ausgaben oft überhaupt nicht als funktion beschreiben lassen.
probiers mal aus da sind manchmal sachen dabei da kannste interpolieren wie ein blöder das wird nix.%g%
|
|
|
28.11.2003 - 1:10 Uhr |
#3809 By
ngl]hacker |
(pMsg,
reply) |
krasser fachslang also nochmal klartext.. (versuch)
man könnte ein programm bauen, das für jede spielsituation in dem 4 gewinnt spiel genau eine antwort weiss.. das programm wäre riesengroß.. das suckt.. deswegen bau man ein programm mit ein paar veränderbaren parametern, dass den ähnlichen sinn erfüllt und deswegen besser ist, weil es viel viel kleiner ist !%g%
.. oki und jetzt nochmal voll speziell meine idee dazu:
das netz hat 42 perceptronen (widerstände) in einer schicht für die 42 felder des spielfeldes.. dann gibt es eine 2. schicht mit 7 perceptronen (jeweils 0..1 als wertebereich) wobei jedes perceptron für die "richtige" spalte (1..7) steht.. das perceptron, dass den wert 1 hat oder am nächsten dran ist(1 ist maximum eines perceptrons) wird als richtige lösung genommen...
.. lalalaaa..
was soll das ding nun eigentlich lernen und was nicht:
[b]1.schritt[/b]: alle train-datensätze bewerten bzw. raten (3mgl.: spiel unentscheiden-0, spiel einfach gewonnen-1, spiel durch zwickmühle gewonnen-2!!). soll heißen: ein spiel mit zwickmühle ist in jedem zug, der in diesem spiel gemacht wurde, stark zu gewichten: denn zwickmühlen sind gut! 2.schritt: für jedes spiel: würde ich für jeden gemachten spielzug das netz trainieren... [i][b]wichtig dabei:[/b] - 1. spieler hat gewonnen -> also trainieren wir jeden ungeraden spielzug mit positiven werten.. da der 2. spieler verloren hat trainieren wir jeden geraden spielzug mit negativen werten - Manche Spieler gewinnen, obwohl sie auf dem weg dahin durch dummen zufall fast verloren hätten. so was passiert, wenn der gegner eine 3er reihe übersieht. kommt zwar selten vor, aber wenn das passiert würde ich für den entsprechenden ausgang negativ anpassen..[/i]
Mit je mehr anspruchsvollen Spielen (die zocker sind hier gefragt) man das Netz trainiert umso mehr geniale züge wird es machen... .. jetzt müßte man nur noch eine klasse (in php) schreiben, die perceptronen simuliert.. das dürfte gar nicht mal so schwer sein.. %ok%
Editiert
am 28.11.2003 - 1:22 Uhr
|
|
|
28.11.2003 - 10:36 Uhr |
#3813 By
scl:end: |
(pMsg,
reply) |
find ich cool, dass der hacker auch versucht, den sachverhalt den laien klar zu machen %ok%
|
|
|
28.11.2003 - 19:27 Uhr |
#3823 By
withoutBorders |
(pMsg,
reply) |
aber mich fürs hacker auf leichte defizide aufmerksam machen %love%
|
|
|
29.11.2003 - 15:31 Uhr |
#3830 By
ngl]hacker |
(pMsg,
reply) |
leute die darum betteln ge-[+]-t zu werden sucken%g%
|
|
|
29.11.2003 - 17:30 Uhr |
#3833 By
stealthUser |
(pMsg,
edit,
reply) |
du hast damit angefangen %baeh% deine seite suckt schon wieder %motz%
|
|
|
29.11.2003 - 19:55 Uhr |
#3838 By
ngl]hacker |
(pMsg,
reply) |
warte nur bist du ausversehen mal auf einen q3 server landest ;P %hrhr%
|
|
|
29.11.2003 - 20:09 Uhr |
#3839 By
scl:end: |
(pMsg,
reply) |
wenn ihr euch streitet bekommt keiner ein [+] %grummel%%baeh%%gg%%hrhr%%ql%
|
|
|
30.11.2003 - 20:12 Uhr |
#3850 By
ngl]hacker |
(pMsg,
reply) |
ich bin für den bau eines amari-netzes... mit nichtlinearer ausgabefunktion.. %motz% weil ich das morgen im praktika lernen werde wie es geht %;)% %wall%
|
|
|
30.11.2003 - 20:55 Uhr |
#3852 By
stealthUser |
(pMsg,
edit,
reply) |
na ganz einfach ist einfach die realisierung einer Differenzialgleichung und nem Netz also fast %gg%
|
|
|
01.12.2003 - 19:24 Uhr |
#3866 By
ngl]hacker |
(pMsg,
reply) |
wir hatten neuro-inf praktikum heute.. jetzt bin ich mir ganz sicher, dass man ein zeitlich und räumlich schlaues netzwerk bauen kann...
man lässt das netz neben einem spielfeld auch die ganzen spielfelder davor mit lernen... d.h. wir brauchen etwa 5-6mal so viele inputs und würden ein paar mehr schichten zum verarbeiten brauchen.. alles klar?
|
|
|