eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › zaawansowane ai
Ilość wypowiedzi w tym wątku: 49

  • 21. Data: 2012-04-17 16:56:26
    Temat: Re: zaawansowane ai
    Od: " M.M." <m...@N...gazeta.pl>

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

    > zażółcony <r...@c...pl> napisał(a):
    >
    > > W dniu 2012-04-17 16:10, f...@N...gazeta.pl pisze:
    > > >>
    > > >> Nie wiem... zasymulować to może magnesami i tarciem? Wrogowie to
    > > >> magnesy odpychające, zielone pastwiska to magnesy przyciągające. Do
    > > >> tego uwzględnić tarcie (wystarczy statyczne) aby krowa nie rozpędzała
    > > >
    > > > za to dobrze ze poruszasz temat pastwisk, tez rozwazalem pola
    > > > z trawa przyciagajace krowe, ale chwilowo staram sie wyklepac
    > > > jakos 'ogolne ai' z ktorego krowa jest jednym z przypadkow (cowarda),
    > > >
    > > > oprogramowanie samej krowy jednak tez mnie interesuje np
    > > > koncepcja by krowa po wejsciu w tryb pragnienia skierowala sie
    > > > w poszukiwaniu wody - problemem by bylo okreslic algorytm
    > > > poszukiwania wody ale mozna po prostu podac krowie stale wspolrzedne
    > > > np rzeki i skierowac tam krowe przez A* lub prostrzy lokalny
    > > > sposob docierania do punktu (mysle by nie uzywac A* (choc mam juz
    > > > napisany bo lata temu uzywalem) tylko opracowac jakis uproszczony
    > > > lokalny algorytm typu skieruj sie w lini prostej do celu jesli
    > > > przeszkoda na drodzewylosuj pole w bok (albo wylosuj pole randem
    > > > kilka tur) - chodzi o taki algorytm ktory dzialalby chocby
    > > > dla przypadkow prostych przeszkud po drodze na trudniejszych moglby
    > > > ew krowe zwodzic - zna ktos taki lokalny algorytm ktory by
    > > > dzialal?
    > >
    > > I tu znów polecam algorytm zapachu. Możesz zaimplementować
    > > kilka różnych zapachów, jedne są dla krowy atrakcyjne, inne
    > > wręcz odrażające. W największym uproszczeniu masz tylko dwa zapachy
    > > - zapach jedzenia(wody) i zapach wroga. Ale możesz mieć ich więcej,
    > > np. zapach nagrzanego byka, który ma w sobie zarówno coś z
    > > atrakcyjności, jak i smaczek niebezpieczeństwa :) a krowa musi
    > > podejmować decyzję - co ważniejsze :)
    > >
    > > Całkiem serio mówię :)
    >
    > to z bykiem to mi sie za bardzo nie podoba ;-) to jest
    > dobre jako konepcja symulowania zapachu ale jako podloze
    > do danej sytuacji z krowa zbyt kosztowne (mam duza mape +
    > duzo postaci szukam stosunkowo dobrze dzialajacych uproszczen

    Cele krowy padają blisko niej. A więc jak dowolną metodą wyznaczasz
    trasę, to kontrolujesz odległość. Jeśli odległość przekroczy
    pewną wartość, to nie szukasz dalej. Zadanie okazało się zbyt
    trudne dla krowy, a algorytm nie musi męczyć się z ogromną
    mapą:)
    Pozdrawiam


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


  • 22. Data: 2012-04-17 17:00:00
    Temat: Re: zaawansowane ai
    Od: "Jordan Szubert" <u...@j...us.to>

    Dnia 17-04-2012 o 16:38:11 <f...@n...gazeta.pl> napisał(a):

    [...]
    > mam duzo postaci >10 tys i duza mape > 1000x1000
    > i updatowanie dla kazdej z nich mapy zapachu by troche
    > trwalo (co prawda jest to chyba (*)koszt porownywalny z
    > rozgladaniem sie, gdzie kazda postac przy kazdym rozejrzeniu
    > sie musi przeczytac np do 400 sasiadujacych pol - to ujdzie
    > ale jest to lekkie obciazenie)

    nie widze powodu, by mapa zapachow nie była jedna: pole pachnie goblinem
    tak samo, a tylko krowa innaczej na to reaguje, niz goblinka

    [...]
    --
    Jordan Szubert


  • 23. Data: 2012-04-17 17:01:43
    Temat: Re: zaawansowane ai
    Od: " " <f...@N...gazeta.pl>

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

    > <f...@N...gazeta.pl> napisał(a):
    >
    > > niestety widze ze wylozenie o co mi chodzi zajeloby mi
    > > wiecej nizbym chcial na to przeznaczac,
    > Cóż no tak to już jest. Wielokrotnie przerywam post w połowie,
    > bo zdaję sobie sprawę że nikt nie zrozumie jeśli nie włożę w
    > niego tyle pracy ile wymaga.
    >
    >
    >
    > > w zadnym razie nie chodzi mi o algorytm na ruch - to jest
    > > skwantowane na siatce kwadratowych pol.
    > Może być ruch. Kilka klatek fizyki na jedną klatę graficzną i
    > potem skwantyzowane współrzędne x i y można rzutować na siatkę.
    >
    > > na niektorych stoja
    > > drzewa, inne sa puste, jest tez tam krowa, krowa moze
    > > przejsc sobie w jeden z osmiu kierunkow (lewo-prawo-gora-dol
    > > i na ukosy),
    > Jeśli wlezie na drzewo to można zrenderować kawałek siatki na
    > której stroi krowa pod drzewem :D
    >
    > > krowa spokojnie moze sie poruszac ruchami browna bo nie
    > > jest glowna postacia
    > Nie może poruszać się ruchami browna bo jest za ciężka i ma
    > za dużą bezwładność w stosunku do siły jakie oddziałują na
    > jej ciało :D Krowa gdy jest stara to majestatycznie łazi w tę i
    > w nazad. A więc musi mieć w grze swój wyimaginowany cel. Cel
    > czasami porusza się w jakimś kierunku. Krowa jest przyciągana
    > do celu. W ten sposób powoli będzie ruszała, osiągała prędkość
    > swojego marszu, a w pobliżu celu spowalniała. Cel porusza
    > się zgodnie z preferencjami krowy. Oddala się od wilków czy tam
    > czego a kieruje się ku soczystej trawce, a co jakiś czas ku
    > sadzawce albo rzeczce. Ponadto można dodać efekty stada, wtedy
    > krowa byłaby przyciągana siłą wypadkową do innych krów i swojego
    > celu.
    >
    > > (postac glowna jest
    > > poruszana przez gracza z klawiatury i moze byc akurat o
    > > kilometr alej) tylko epizodycznym botem, a cala gra jest
    > > skwantowana na kwadratowej siatce
    > Obliczenia można robić na floatach i potem rzutować na
    > skwantowaną powierzchnię, nie ma problemu.
    >
    >
    > > chodzi tylko o to by krowa nie zblizala sie w swoim brownowskim
    > > ruchu do niektorych innych postaci typu np goblin i inne
    > > (ten system relacji miedzy krowa a innymi tez trzeba jakos
    > > okreslic oprogramowac, moze byc na intach floatacjh albo enumach
    > > - i tez jestem ciekaw jak ktos by to zrobil,
    > Ja bym dał zestaw sił dla każdej pary obiektów. Ponadto jakby
    > obiekt tego wymagał dałbym mu cele. Cele obiektu to takie
    > obiekty które by oddziaływały tylko z nim. Cele bym rzucał
    > zgodnie to tu, to tam, np. dla krowy bym rzucał na trawę albo
    > koło wodopoju, sprawdzałbym czy cel nie jest zbyt blisko wilków.
    >
    >
    > > chodzi o algorytm (procedure) po jakiej krowa wybieralaby gdzie
    > > isc a gdzie nie, pierwsza wersja zakladala ze krowa sie rozejrzy
    > > w promieniu 10 pol, znajdzie najblizsza postac (co niesie ze soba
    > > trudnosc zwiazana z tym ze rownie odleglych postaci moze byc >1
    > > -( i co wtedy budowac liste i losowac jedna znich - to na maksa
    > > klopotliwe )-
    > To jest proste. Kłopotów w implementacjach takich rzeczy to są
    > dopiero KŁOPOTY :D. Nie da rady oprogramować jedną pętlą i
    > jednym wzorem świata w którym jest 1000 różnych obiektów, a
    > każda para obiektów (ba, czasami n obiektów) wyzwala jakieś
    > specyficzne akcje.
    >
    > > dlatego wlasnie pytam o kwestie dokladnej implementacji)
    > > - jesli ta postac budzi krowia nieufnosc skierowac sie w przeciwnym
    > > kierunku niz ta postac - ale jest to algorytm niezbyt dobry teraz
    > > klepie troche lepszy ale nie wiem czy i jego nie da siepoprawic
    > No a jaki klepiesz?
    >
    > Pozdrawiam
    > Aha...
    > Do wyznaczania trasy to jest przeszukiwanie grafu w szerz plus
    > jakiś chaos - krowy chyba nie zawsze wybierają optymalne trasy.
    > Jeśli krowa nie może wleźć na skały, albo jeśli musi ominąć
    > koniecznie to drzewo, to po ustaleniu celu można jej przypisać
    > ciąg elementów siatki na jakie ma kolejno włazić. Gdy cel
    > zmieni położenie, to ciąg elementów siatki trzeba policzyć na
    > nowo. Ale... coś mi się zdaje że dobrze wiesz o tym wszystkim :)

    dlatego m in nie chce uzywac A* - deaktualizuje sie, pozatym chce
    uzywac maksymalnie prostych rzeczy by sie nie pogubic,

    obecny pomysl jest taki, dla danego pola czytam sasiadow
    (np tylko ring 1,2,3 by nie bylo za duzo okolicy do zczytywania)
    i zliczam z wagami (w zaleznoci od ringa) znajdujace sie tam
    postaci do ktorych krowa czuje lekka animozje badz silny strach
    - to daje wspolczynnik jakosci pola;

    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)

    lub ew postapic prosciej i losowac pole brownem - wyliczac
    animozyjnosc jesli mala kierowac krowe (jest szybsze) -
    jesli duza, losowac jeszcze pare razy porownujac animozyjnosci
    i zapamietujac to pole z najmniejsza animozyjnoscia i na nie kierowac
    krowe - niedlugo bede testowac czy to dziala w praktyce






















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


  • 24. Data: 2012-04-17 17:06:42
    Temat: Re: zaawansowane ai
    Od: " " <f...@N...gazeta.pl>

    Jordan Szubert <u...@j...us.to> napisał(a):

    > Dnia 17-04-2012 o 16:38:11 <f...@n...gazeta.pl> napisa=B3(a):
    >
    > [...]
    > > mam duzo postaci >10 tys i duza mape > 1000x1000
    > > i updatowanie dla kazdej z nich mapy zapachu by troche
    > > trwalo (co prawda jest to chyba (*)koszt porownywalny z
    > > rozgladaniem sie, gdzie kazda postac przy kazdym rozejrzeniu
    > > sie musi przeczytac np do 400 sasiadujacych pol - to ujdzie
    > > ale jest to lekkie obciazenie)
    >
    > nie widze powodu, by mapa zapachow nie by=B3a jedna: pole pachnie goblin=
    > em =
    >
    > tak samo, a tylko krowa innaczej na to reaguje, niz goblinka
    >
    chodzi o to by zapach krowy nie mieszal sie z zapachem goblina
    - ogolnie zapachow musialoby byc conajmniej kilkanascie
    w uproszczonej wersji




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


  • 25. Data: 2012-04-17 17:09:52
    Temat: Re: zaawansowane ai
    Od: " M.M." <m...@N...gazeta.pl>

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

    > Jordan Szubert <u...@j...us.to> napisał(a):
    >
    > > Dnia 17-04-2012 o 16:38:11 <f...@n...gazeta.pl> napisa=B3(a):
    > >
    > > [...]
    > > > mam duzo postaci >10 tys i duza mape > 1000x1000
    > > > i updatowanie dla kazdej z nich mapy zapachu by troche
    > > > trwalo (co prawda jest to chyba (*)koszt porownywalny z
    > > > rozgladaniem sie, gdzie kazda postac przy kazdym rozejrzeniu
    > > > sie musi przeczytac np do 400 sasiadujacych pol - to ujdzie
    > > > ale jest to lekkie obciazenie)
    > >
    > > nie widze powodu, by mapa zapachow nie by=B3a jedna: pole pachnie goblin=
    > > em =
    > >
    > > tak samo, a tylko krowa innaczej na to reaguje, niz goblinka
    > >
    > chodzi o to by zapach krowy nie mieszal sie z zapachem goblina
    > - ogolnie zapachow musialoby byc conajmniej kilkanascie
    > w uproszczonej wersji
    Może da się to jakoś skompresować? Np. 10 zapachów atomowych i
    krowę przyciąga zapach pod warunkiem że suma pierwszego i iloczynu
    trzeciego z siódmym ma dużą wartość? Wtedy zamiast tylu zapachów
    ile jest obiektów wystarczy dać 10 składowych.
    Pozdrawiam




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


  • 26. Data: 2012-04-17 17:34:47
    Temat: Re: zaawansowane ai
    Od: " M.M." <m...@N...gazeta.pl>

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

    > M.M. <m...@N...gazeta.pl> napisał(a):
    >
    > > <f...@N...gazeta.pl> napisał(a):
    > >
    > > > niestety widze ze wylozenie o co mi chodzi zajeloby mi
    > > > wiecej nizbym chcial na to przeznaczac,
    > > Cóż no tak to już jest. Wielokrotnie przerywam post w połowie,
    > > bo zdaję sobie sprawę że nikt nie zrozumie jeśli nie włożę w
    > > niego tyle pracy ile wymaga.
    > >
    > >
    > >
    > > > w zadnym razie nie chodzi mi o algorytm na ruch - to jest
    > > > skwantowane na siatce kwadratowych pol.
    > > Może być ruch. Kilka klatek fizyki na jedną klatę graficzną i
    > > potem skwantyzowane współrzędne x i y można rzutować na siatkę.
    > >
    > > > na niektorych stoja
    > > > drzewa, inne sa puste, jest tez tam krowa, krowa moze
    > > > przejsc sobie w jeden z osmiu kierunkow (lewo-prawo-gora-dol
    > > > i na ukosy),
    > > Jeśli wlezie na drzewo to można zrenderować kawałek siatki na
    > > której stroi krowa pod drzewem :D
    > >
    > > > krowa spokojnie moze sie poruszac ruchami browna bo nie
    > > > jest glowna postacia
    > > Nie może poruszać się ruchami browna bo jest za ciężka i ma
    > > za dużą bezwładność w stosunku do siły jakie oddziałują na
    > > jej ciało :D Krowa gdy jest stara to majestatycznie łazi w tę i
    > > w nazad. A więc musi mieć w grze swój wyimaginowany cel. Cel
    > > czasami porusza się w jakimś kierunku. Krowa jest przyciągana
    > > do celu. W ten sposób powoli będzie ruszała, osiągała prędkość
    > > swojego marszu, a w pobliżu celu spowalniała. Cel porusza
    > > się zgodnie z preferencjami krowy. Oddala się od wilków czy tam
    > > czego a kieruje się ku soczystej trawce, a co jakiś czas ku
    > > sadzawce albo rzeczce. Ponadto można dodać efekty stada, wtedy
    > > krowa byłaby przyciągana siłą wypadkową do innych krów i swojego
    > > celu.
    > >
    > > > (postac glowna jest
    > > > poruszana przez gracza z klawiatury i moze byc akurat o
    > > > kilometr alej) tylko epizodycznym botem, a cala gra jest
    > > > skwantowana na kwadratowej siatce
    > > Obliczenia można robić na floatach i potem rzutować na
    > > skwantowaną powierzchnię, nie ma problemu.
    > >
    > >
    > > > chodzi tylko o to by krowa nie zblizala sie w swoim brownowskim
    > > > ruchu do niektorych innych postaci typu np goblin i inne
    > > > (ten system relacji miedzy krowa a innymi tez trzeba jakos
    > > > okreslic oprogramowac, moze byc na intach floatacjh albo enumach
    > > > - i tez jestem ciekaw jak ktos by to zrobil,
    > > Ja bym dał zestaw sił dla każdej pary obiektów. Ponadto jakby
    > > obiekt tego wymagał dałbym mu cele. Cele obiektu to takie
    > > obiekty które by oddziaływały tylko z nim. Cele bym rzucał
    > > zgodnie to tu, to tam, np. dla krowy bym rzucał na trawę albo
    > > koło wodopoju, sprawdzałbym czy cel nie jest zbyt blisko wilków.
    > >
    > >
    > > > chodzi o algorytm (procedure) po jakiej krowa wybieralaby gdzie
    > > > isc a gdzie nie, pierwsza wersja zakladala ze krowa sie rozejrzy
    > > > w promieniu 10 pol, znajdzie najblizsza postac (co niesie ze soba
    > > > trudnosc zwiazana z tym ze rownie odleglych postaci moze byc >1
    > > > -( i co wtedy budowac liste i losowac jedna znich - to na maksa
    > > > klopotliwe )-
    > > To jest proste. Kłopotów w implementacjach takich rzeczy to są
    > > dopiero KŁOPOTY :D. Nie da rady oprogramować jedną pętlą i
    > > jednym wzorem świata w którym jest 1000 różnych obiektów, a
    > > każda para obiektów (ba, czasami n obiektów) wyzwala jakieś
    > > specyficzne akcje.
    > >
    > > > dlatego wlasnie pytam o kwestie dokladnej implementacji)
    > > > - jesli ta postac budzi krowia nieufnosc skierowac sie w przeciwnym
    > > > kierunku niz ta postac - ale jest to algorytm niezbyt dobry teraz
    > > > klepie troche lepszy ale nie wiem czy i jego nie da siepoprawic
    > > No a jaki klepiesz?
    > >
    > > Pozdrawiam
    > > Aha...
    > > Do wyznaczania trasy to jest przeszukiwanie grafu w szerz plus
    > > jakiś chaos - krowy chyba nie zawsze wybierają optymalne trasy.
    > > Jeśli krowa nie może wleźć na skały, albo jeśli musi ominąć
    > > koniecznie to drzewo, to po ustaleniu celu można jej przypisać
    > > ciąg elementów siatki na jakie ma kolejno włazić. Gdy cel
    > > zmieni położenie, to ciąg elementów siatki trzeba policzyć na
    > > nowo. Ale... coś mi się zdaje że dobrze wiesz o tym wszystkim :)
    >
    > dlatego m in nie chce uzywac A* - deaktualizuje sie, pozatym chce
    > uzywac maksymalnie prostych rzeczy by sie nie pogubic,
    >
    > obecny pomysl jest taki, dla danego pola czytam sasiadow
    > (np tylko ring 1,2,3 by nie bylo za duzo okolicy do zczytywania)
    > i zliczam z wagami (w zaleznoci od ringa) znajdujace sie tam
    > postaci do ktorych krowa czuje lekka animozje badz silny strach
    > - to daje wspolczynnik jakosci pola;
    >
    > 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 :)

    Z tego może zrobić się bardzo ciekawy problem. Jeśli gdzieś w
    pobliżu jest dobre pole na którym krowa by się chciała znaleźć
    to jeszcze nie wszystko. Do jednego pola może wieźć wiele tras, a
    przemarsz wymaga czasu i wysiłku. Np. na jednej z tras może płonąć
    ognisko, a na drugiej być wąski mostek przez rzekę który także
    odstrasza krowę. Więc krowa może podążyć ku gorszemu celowi jeśli
    do tego gorszego celu będzie wiodła trasa przez w miarę korzystne i
    niestraszne miejsca. By trzeba maksymalizować sumę korzyści jakie
    napotka krowa na kolejnych polach swojej trasy, a ostatnie pole,
    w którym będzie krowa najdłużej, trzeba by sumować z odpowiednio
    dużą wagą.

    Trzeba te pola przeiterować wiele razy i sprawdzać czy da
    się osiągnąć większą sumę korzyści na każdym z pól. Z każdą poprawą
    trzeba zapamiętać trasę która przyczyniła się do poprawy. Jeśli w
    danej iteracji nie da się już poprawić żadnej korzyści, to trzeba
    podać trasę która prowadzi do pola z największą sumą korzyści. Nie
    mam pojęcia czy to da optymalne rozwiązanie, czy tylko zachłanne.
    Ale do gry powinno wystarczyć. Podobnym algorytmem budowałem bazę
    końcówek do gry w warcaby, w tamtym zastosowaniu dawało to rozwiązanie
    optymalne. Pewnie ten algorytm ma jakąś mądrą nazwę, ale nie znam jej.

    Pozdrawiam





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


  • 27. Data: 2012-04-17 17:36:51
    Temat: Re: zaawansowane ai
    Od: " " <f...@N...gazeta.pl>

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

    > <f...@N...gazeta.pl> napisał(a):
    >
    > > Jordan Szubert <u...@j...us.to> napisał(a):
    > >
    > > > Dnia 17-04-2012 o 16:38:11 <f...@n...gazeta.pl> napisa=B3(a):
    > > >
    > > > [...]
    > > > > mam duzo postaci >10 tys i duza mape > 1000x1000
    > > > > i updatowanie dla kazdej z nich mapy zapachu by troche
    > > > > trwalo (co prawda jest to chyba (*)koszt porownywalny z
    > > > > rozgladaniem sie, gdzie kazda postac przy kazdym rozejrzeniu
    > > > > sie musi przeczytac np do 400 sasiadujacych pol - to ujdzie
    > > > > ale jest to lekkie obciazenie)
    > > >
    > > > nie widze powodu, by mapa zapachow nie by=B3a jedna: pole pachnie
    goblin=
    > > > em =
    > > >
    > > > tak samo, a tylko krowa innaczej na to reaguje, niz goblinka
    > > >
    > > chodzi o to by zapach krowy nie mieszal sie z zapachem goblina
    > > - ogolnie zapachow musialoby byc conajmniej kilkanascie
    > > w uproszczonej wersji
    > Może da się to jakoś skompresować? Np. 10 zapachów atomowych i
    > krowę przyciąga zapach pod warunkiem że suma pierwszego i iloczynu
    > trzeciego z siódmym ma dużą wartość? Wtedy zamiast tylu zapachów
    > ile jest obiektów wystarczy dać 10 składowych.
    > Pozdrawiam
    >

    wtedy krowa musialaby dokonywac rozkladu zapachu;
    mozna symulowac zpach (jak i np fale dzwiekowe polecen dowodcow
    w czasie bitwy itd) ale na razie szukam prostych procedur o
    duzym potencjale modelujacym, zapach jest dobry sam w sobie
    ale dla celow zapachowych - tutaj wole sie opierac na widzialosci
    i to uproszczonej bo nie obejmuje zaslaniania (w starej wersji
    roguelika mielam liczone zaslanianie teraz chce sie skupic na
    sednie prostych procedur ai)









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


  • 28. Data: 2012-04-17 17:52:50
    Temat: Re: zaawansowane ai
    Od: " " <f...@N...gazeta.pl>

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

    > <f...@N...gazeta.pl> napisał(a):
    >
    > > >
    > > > Nie wiem... zasymulować to może magnesami i tarciem? Wrogowie to
    > > > magnesy odpychające, zielone pastwiska to magnesy przyciągające. Do
    > > > tego uwzględnić tarcie (wystarczy statyczne) aby krowa nie rozpędzała
    > >
    > > za to dobrze ze poruszasz temat pastwisk, tez rozwazalem pola
    > > z trawa przyciagajace krowe, ale chwilowo staram sie wyklepac
    > > jakos 'ogolne ai' z ktorego krowa jest jednym z przypadkow (cowarda),
    > >
    > > oprogramowanie samej krowy jednak tez mnie interesuje np
    > > koncepcja by krowa po wejsciu w tryb pragnienia skierowala sie
    > > w poszukiwaniu wody - problemem by bylo okreslic algorytm
    > > poszukiwania wody
    > Hmmm
    > 1) pamięć gdzie poprzednio była się napić
    > 2) zapach niesiony wiatrem
    > 3) z wzniesienia daleko widać, ale nie wiem czy krowy wchodzą na wzniesienia
    > aby rozejrzeć się za wodą :)

    moze dalo by sie zrobic -
    if(nalezyDoWzgorza(postac[i].x, postac[i].y))
    percepcja_zasieg_widzialnosci*=10;


    > A to jest dzika krowa, czy taka u chłopa w zagrodzie? :D
    >
    > > np rzeki i skierowac tam krowe przez A*
    > Raz chcesz prosty algorytm, a drugi raz od razu a-star.
    > Dla promienia 10 pól nie rzucałbym się na A*. W grze
    > GO rozwiązałem ten problem przez zapamiętanie ID obecnego
    > przeszukiwania grafu. Dzięki temu nie musiałem całej
    > planszy zerować i potem zaznaczać że dane pole siatki
    > było odwiedzone. Zakładałem że przeszukań będzie mniej
    > niż 2^32 i testowałem:
    > if( ! siatka.odwiedzony < globalny_id_przeszukiwania )
    > siatka.odwiedzony = globalny_id_przeszukiwania;
    > Dla małego breanch-factor i dla małych promieni działało
    > rewelacyjnie.
    >
    > > lub prostrzy lokalny
    > Dla promienia 10 pól zdecydowanie jakiś prostszy.
    >
    >
    > > sposob docierania do punktu (mysle by nie uzywac A* (choc mam juz
    > > napisany bo lata temu uzywalem) tylko opracowac jakis uproszczony
    > > lokalny algorytm typu skieruj sie w lini prostej do celu jesli
    > > przeszkoda na drodzewylosuj pole w bok (albo wylosuj pole randem
    > > kilka tur) - chodzi o taki algorytm ktory dzialalby chocby
    > > dla przypadkow prostych przeszkud po drodze na trudniejszych moglby
    > > ew krowe zwodzic - zna ktos taki lokalny algorytm ktory by
    > > dzialal?
    > Przeszukiwanie grafu wszerz.

    o jakim grafie ty mowisz? ja nie mam zadnych grafow tylko mape
    ktorej okolice czytam, nie bardzo wiem do czego uzywa sie grafow
    w programoaniu np programow do gry w warcaby czy tic tac toe
    - nie zajmowalem sie tym, za to kiedys klepalem dosyc duzo roguelika
    (ktory jest wlasnie tilowym erpegiem z botami) i mam w tym troche
    doswiadczenia (swietnie sie programuje takie rzeczy ijest tu
    duzo ciekawych tematow - kiedys indziej napisze o tym wiecej)











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


  • 29. Data: 2012-04-17 18:02:31
    Temat: Re: zaawansowane ai
    Od: " M.M." <m...@N...gazeta.pl>

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

    > o jakim grafie ty mowisz? ja nie mam zadnych grafow tylko mape
    > ktorej okolice czytam, nie bardzo wiem do czego uzywa sie grafow
    > w programoaniu np programow do gry w warcaby czy tic tac toe
    > - nie zajmowalem sie tym,
    To przypomnij sobie czasy gdy pisałeś A* :D


    > za to kiedys klepalem dosyc duzo roguelika
    > (ktory jest wlasnie tilowym erpegiem z botami) i mam w tym troche
    > doswiadczenia (swietnie sie programuje takie rzeczy ijest tu
    > duzo ciekawych tematow - kiedys indziej napisze o tym wiecej)
    Ja za to nie wiem co to jest tilowy erpeg :)

    Pozdrawiam


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


  • 30. Data: 2012-04-17 18:11:05
    Temat: Re: zaawansowane ai
    Od: " " <f...@N...gazeta.pl>

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













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

strony : 1 . 2 . [ 3 ] . 4 . 5


Szukaj w grupach

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: