-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: " M.M." <m...@N...gazeta.pl>
Newsgroups: pl.comp.programming
Subject: Re: zaawansowane ai
Date: Tue, 17 Apr 2012 16:42:05 +0000 (UTC)
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 75
Message-ID: <jmk6gt$i5q$1@inews.gazeta.pl>
References: <jmhnji$fi6$1@inews.gazeta.pl> <jmi22j$19n$1@inews.gazeta.pl>
<jmj41g$euf$1@inews.gazeta.pl> <jmj8cs$poh$1@inews.gazeta.pl>
<jmjk3l$rd8$1@inews.gazeta.pl> <jmjmm3$5aq$1@inews.gazeta.pl>
<jmjnm0$7ua$1@inews.gazeta.pl> <jmjp8b$c8l$1@inews.gazeta.pl>
<jmjs0a$ke8$1@inews.gazeta.pl> <jmjva6$2t$1@inews.gazeta.pl>
<jmk0kn$37h$1@inews.gazeta.pl> <jmk2in$7ua$1@inews.gazeta.pl>
<jmk4mp$d4q$1@inews.gazeta.pl>
NNTP-Posting-Host: localhost
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: 8bit
X-Trace: inews.gazeta.pl 1334680925 18618 172.20.26.245 (17 Apr 2012 16:42:05 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Tue, 17 Apr 2012 16:42:05 +0000 (UTC)
X-User: mariotti
X-Forwarded-For: 89.229.34.123
X-Remote-IP: localhost
Xref: news-archive.icm.edu.pl pl.comp.programming:196832
[ ukryj 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/
Następne wpisy z tego wątku
- 17.04.12 19:16
- 17.04.12 19:29
- 17.04.12 20:01 M.M.
- 17.04.12 20:29 Jordan Szubert
- 17.04.12 21:20 M.M.
- 19.04.12 17:03
- 19.04.12 17:49 zażółcony
- 20.04.12 10:26 zażółcony
- 20.04.12 10:50 Jordan Szubert
- 20.04.12 13:45 A.L.
- 20.04.12 20:00 M.M.
- 21.04.12 00:14 M.M.
- 04.05.12 15:59 zażółcony
- 04.05.12 16:26
- 04.05.12 16:54 zażółcony
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-11-25 Karty przedpłacone (podarunkowe) Google Play - pytanie do korzystających
- 2024-11-26 wina Tóska
- 2024-11-26 Rewolucja/Rewelacja!
- 2024-11-25 grupa ożyła ;)
- 2024-11-24 Być jak Clint
- 2024-11-24 Rura kanalizacja konceptu Franke = problem
- 2024-11-25 Wrocław => Lead Java EE Developer <=
- 2024-11-25 Warszawa => Business Development Manager - Network and Network Securit
- 2024-11-25 Kraków => Programista Full Stack (.Net Core) <=
- 2024-11-25 Lublin => Senior PHP Developer <=
- 2024-11-25 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=
- 2024-11-25 Warszawa => ECM Specialist / Consultant <=
- 2024-11-25 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-11-25 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2024-11-25 Lublin => Inżynier Serwisu Sprzętu Medycznego <=