-
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
- 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
- Ada 2022 Language Reference Manual to be Published by Springer
Najnowsze wątki
- 2024-10-19 Warszawa => Software Engineer .Net <=
- 2024-10-19 Warszawa => Senior SAP HANA Developer <=
- 2024-10-19 Warszawa => Specjalista Helpdesk <=
- 2024-10-19 PUE ZUS -- administracyjna nuda...
- 2024-10-18 Marsz niepodleglosci
- 2024-10-18 Pożar parkingu w Luton
- 2024-10-18 Łódź => Spedytor Międzynarodowy <=
- 2024-10-18 Gdańsk => Technical Lead ( (Java Background)) <=
- 2024-10-18 Warszawa => Head of International Freight Forwarding Department <=
- 2024-10-18 uwazajmy na haczyki w umowach
- 2024-10-18 Warszawa => Account Manager - Usługi rekrutacyjne <=
- 2024-10-18 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2024-10-18 Gdańsk => Software .Net Developer <=
- 2024-10-18 Warszawa => Junior Rekruter <=
- 2024-10-18 Warszawa => Key Account Manager <=