eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingzaawansowane aiRe: zaawansowane ai
  • Data: 2012-04-17 20:01:47
    Temat: Re: zaawansowane ai
    Od: " M.M." <m...@N...gazeta.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    <f...@N...gazeta.pl> napisał(a):

    > M.M. <m...@N...gazeta.pl> napisał(a):
    >
    > > <f...@N...gazeta.pl> napisał(a):
    > >
    > > > > > majac ta procedure moge zapuszczac ja np dla wszystkich osmiu
    > > > > > sasiednich pol krowy i kierowac ja na to pole ktore jest najmniej
    > > > > > animozyjne (co wymagaloby malego sortowania :( - nie chce mi sie
    > pisac)
    > > > > Nawet bardzo małego sortowania, wystarczy wybrać jedno najlepsze :)
    > > > >
    > > >
    > > > niby tak, z tym ze jak kilka bedzie rownie najlepszych to nie
    > > > mozna zawsze wziac pierwszego z lewej, trzeba zbudowac małą listkę
    > > > i uczciwie w niej zalosować - z podobnymi problemami wiazal sie
    > > > pierwszy odrzucony przeze mnie pomysl, ->
    > > >
    > > > skanujesz okolice i szukasz najblizszej postaci do omijania
    > > > po czym idziesz w przeciwna do niej strone,
    > > >
    > > > jesli bylaby tylko jedna to prosta rzecz, ale jesli bylyby np
    > > > trzy najblizsze (np w ringu 2), to co wtedy ?
    > > >
    > > > 1) trzeba ew budowac liste i losowac - wole unikac budowania
    > > > takich list,
    > > > 2) nawet jesli zbuduje liste i wylosuje A to nie znaczy ze unikajac
    > > > A krowa nie pojdzie prosto w kierunku B
    > > >
    > > > wersja z wagowym zliczaniem jakosci pol do wejscia na nie wydaje sie
    > > > miec lepszą jakosc krowa powinna chodzic znacznie rozumniej
    > >
    > > Krowa jest na każdym polu przez jakiś czas. W danej chwili z każdego
    > > pola ma jakieś korzyści. Np. w danej chwili krowa ma takie potrzeby:
    > >
    > > struct Krowa {
    > > float pragnienie;
    > > float głód;
    > > float seks;
    > > float bezpieczeństwo_cielaka;
    > > float bezpieczeństwo_swoje;
    > > };
    > >
    > > Potrzeby zmieniają się albo wg reguły losowej albo deterministycznej.
    > > Krowa np. planuje 30 przyszłych tików gry i chce maksymalizować
    > > zaspokojenie swoich potrzeb. Każde pole dostarcza jej tych
    > > potrzeb:
    > > struct Pole {
    > > float woda;
    > > float pokarm;
    > > float odległość_do_samca;
    > > float odległość_od_drapieżników;
    > > float odległość_od_ludzi;
    > > };
    > >
    > > Analogicznie cechy pola zmieniają się albo losowo, albo deterministycznie.
    > >
    > > Krowa chce tak zaplanować swoje 30 ruchów aby maksymalizować sumę korzyści
    > > płynących z przebywania na nich. Korzyści mogą być wg wzoru:
    > > korwa.pragnienie * pole.woda + krowa.głód * pole.pokarm ...
    > > krowa.bezpieczenstwo_swoje * ( pole.odleglosc_od_ludzi +
    > > pole.odleglosc_od_drapieznikow ) ...
    > >
    > > Któreś z pól które krowa może zbadać swoimi zmysłami albo odtworzyć jego
    > > stan w swojej pamięci zapewni największe korzyści. Więc dla bieżących
    > > potrzeb krowy któreś z otaczających pól będzie najlepsze. Ale po drodze
    > > krowa też może sobie skubać trawkę, też musi czuć się bezpieczna, więc
    > > liczy się nie tylko pole docelowe, ale cała podróż. Czyli krowa szuka
    > > najlepszej trasy i wybiera pierwsze pole które prowadzi tą trasą.
    > >
    > > Jakimś algorytmem zachłannym można taką trasę wyliczyć i krowa może
    > > zrobić krok w jej kierunku. Potem kwestia dobrania parametrów, żeby
    > > potrzeby krowy i zasoby na polach sensownie się zmieniały i powinno
    > > działać lepiej niż zwykle się wymaga w takich grach.
    >
    > to jest za trudne do realizacji - u mnie krowa nie planuje 30
    > ruchow do przodu (inaczej wygrywala by pewnie w szachy z kasparowem)
    > ani nie calkuje wszystkich mozliwych tras pod wzgledem korzysci ;-)-
    Nie trzeba wszystkich całkować ani nie trzeba tego robić super
    dokładnie. Zastanawiam się nad takim przykładem: Jest sadzawka z
    której wypływa strumyk. Sadzawka z jednej strony jest otoczona
    stromym brzegiem, a z drugiej łagodnym. Przy tym brzegu łagodnym
    krowa może się bez problemu napić. Przy tym stromym też
    może, ale wpadnie do wody i zanim dopłynie do brzegu to jest
    pewne prawdopodobieństwo że się utopi, albo ją zje krokodyl. Soczysta
    trawa rośnie przy brzegu stromym. W dalszej odległości od sadzawki
    jest las z wilkami które mogą krowę zjeść. Na strumyku jest mostek
    którym krowa może przejść, ale często przechodzą nim ludzie których
    się boi. W dodatku w różnych miejscach przy brzegu sadzawki ludzie
    mogą rozpalać ogniska. Jak zrobić sensowne zachowanie krowy bez
    całkowania tras po korzyściach? Najkrótsza droga do celu nic nie
    da, bo krowa wlezie w ognisko, albo wpakuje się na mostek między
    ludzi :) Spanie gdy chce się jej bardziej spać niż jeść da taki
    efekt że zaśnie w ognisku :)

    Pozdrawiam


    --
    Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: