eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingzaawansowane aiRe: zaawansowane ai
  • Data: 2012-04-17 18:42:05
    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):

    > > > 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.

    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: