DoubleBuffer

Programerska zajednica
It is currently Mon Apr 23, 2018 10:13 pm

Board index » Tehnička strana » Matematika & fizika

All times are UTC + 1 hour




Post new topic Reply to topic  [ 16 posts ]  Go to page Previous  1, 2
Author Message
PostPosted: Thu Oct 03, 2013 2:33 pm 
Offline
Veliki brat malih trokuta
User avatar

Joined: Tue Sep 01, 2009 10:14 pm
Posts: 498
Location: Zagreb
Denis wrote:
A zašto ne pokušaš ubaciti da se hrana kvari? Tako bi mogao asimptotski rast, fino postaviš limit maksimalne hrane i fino. Ili ako hrana već može rasti neograničeno, onda logaritamski, da raste, ali jaaako sporo.

Eh, imao sam slične ideje al sam ih odbacio. Malo mi je trebalo vremen da napravim excelicu i još jednom provjerim svoje zaključke. Uglavnom, ideje su se vrtile oko tog da nakon određene granice svaki dodatni farmer proizvodi manje hrane. Ograničavanje i prigušivanje baš količine hrani mi nije palo na pamet. Budem probao nešt i u tom smjeru.

Ono što sam do sad probao su ove tri varijante:

1. 1/x^2 prigušenje
Image
Učinkovitost svakog farmera (h(x)) nakon limita opada s kvadratom udaljenosti od granice. Za farmera na samoj granici x = 1 a za i-tog nakon granice x = 1 + i/L gdje je L granica. e_min i e_max su minimalna i maksimalna učinkovitost farmera.

2. sqrt(x) prigušenje
Image
Nakon granice L farmeri više ne proizvode hranu samostalno nego podupiru prvih L da proizvode s većom učinkovitošću. Utjecaj potpore raste s korjenom količine. Radnici se dodaju u potporu dokle god je njihov doprinos veći od e_min jedinica hrane. Preostali ostaju kod kuće kao vrtlari i proizvode e_min jedinica hrane.

Nešt slično sam vidio u Master of Orion 3 gdje svaka regija u koloniji može uposliti određenu količinu ljudu. Ako bi na koloniji bilo više ljudi nego "radnih mjesta" onda bi učinkovitost svih regija bila uvećana ovakvom formulom (korjen od 1 + "višak"). Nažalost u RH to tako ne funkcionira.

3. Linearni segmenti
Ono što sam opisao u prošlom postu, do granice L vrijedi e_max, nakon nje e_min.

Image
Ovako ove tri metode izgledaju bok uz bok. Apscisa (x os) je maksimalna učinkovitost farmera a ordinata broj slobodnih radnika (oni koji mogu graditi brodove i istraživati tehnologije). Različite linije su različite veličine populacija. Granica L u svim slučajevima je L=10. Normalna situacija je crvena linija (pop = 100). Kada bi igrač izgradio "nebodere" koji povećavaju limit populacije za 50% ili 100% bio bi na žutoj odnosno zelenoj liniji. Plava linija je u principu slučaj kada kada je populacija = 100 ali L = 20 što bi odgovaralo primjeni tehnologije podzemnih farmi.

Sudeći po ovim dijagramima, linearni segmenti za sad najbolje izražavaju potrebu za praćenjem porasta stanovništva s poboljšanjem poljoprivrede. Horizontalni pomak žute linije u odnosu na crvenu (kad bi se obje spustile na istu vertikalu) je najbolji pokazatelj tog efekta.

_________________
Nexus 64213 blog - IKON: moja verzija JSONa
Stareater blog - lijepe slike kak napreduje kod


Top
 Profile  
 
PostPosted: Thu Oct 03, 2013 7:41 pm 
Offline
Sajentist on djuti!
User avatar

Joined: Tue Aug 26, 2008 9:35 pm
Posts: 2618
Ne znam, ja bih na tvom mjestu radije išao na ograničavanje održivosti hrane, nego na smanjivanje učinkovitosti farmera. Sad ne znam koliko ti je zeznuto ubaciti da se hrana kvari po vremenu, možeš direktno u proizvodnji primjeniti kvarenje (ako nemaš kao resurs ukupnu hranu, nego koristiš prihod hrane kao resurs). I to bi ti se skaliralo sukladno sa stupnjom tehnologije.

Iako se sad tu javlja problem da će na početku biti teško, a kasnije lagano. Jer, na početku nemaš tehnologiju čuvanja hrane, pa ti se masa toga kvari. Kasnije znaš kako čuvati, a ujedno ju možeš i u većem broju proizvoditi. Eventualno neki cap na frižider tehnologiju staviti. Nešto tipa:

Image

Za koeficijent k staviš nešto da ti digne ovo na skalu koja ti odgovara. Možeš eventualno napraviti ovo:

Image

Onda imaš alfa i beta takve da si možeš taj dio arctg skalirati kako ti odgovara.

Možda još eventualno napraviti preko diferencijalne tako da ti se ubrzanje (ili usporenje u tvom slučaju) mjenja po nekom zakonu koji ti odgovara. Sad ovisi što ti treba, mogao bi napraviti da ti akceleracija opada ovisno o trenutnom stanju, ili o udaljenosti koju si koristio, ili oboje. Od prilike:

y'' = F(y[, x])

S tim baš možeš precizno podesiti model kako ti odgovara. Koristio si diff prvog stupnja u prošlom postu, ali mislim da bi mogao dobiti prirodniji rezultat s ovako nečim. Ili nađi neku krivulju koja ti se sviđa, pa je prilagodi. Ne znam točno što bih rekao. Nisam dobro upoznat sa samim modelom igre, tako da mogu samo grubo pokušati pomoć oko balansa.


Top
 Profile  
 
PostPosted: Thu Oct 03, 2013 8:41 pm 
Offline
Veliki brat malih trokuta
User avatar

Joined: Tue Sep 01, 2009 10:14 pm
Posts: 498
Location: Zagreb
Denis wrote:
Ne znam, ja bih na tvom mjestu radije išao na ograničavanje održivosti hrane, nego na smanjivanje učinkovitosti farmera. Sad ne znam koliko ti je zeznuto ubaciti da se hrana kvari po vremenu, možeš direktno u proizvodnji primjeniti kvarenje (ako nemaš kao resurs ukupnu hranu, nego koristiš prihod hrane kao resurs)...

Lijepo si se raspisao (eh, i dobre stare sigmoide) al upravo ovo u zagradi je slučaj u Zvjezdojecu. Hrana se ne gomila neg se sva troši isti turn, tj. farmeri proizvode taman toliko kolko kolonija pojede taj turn.

Sam koncept kvarenja hrane mi nije uvjerljiv jer je skladištenje i transportiranje je relativno u odnosu na proizvodnju. Čak i u 1990. (otprilike tehnološka razina s kojom igrač počinje). Mislim, boljim očuvanjem hrane se više dobiva na kvaliteti obroka nego li na broju prehranjenih usta. Nažalost u Zvjezdojecu nisam mislio stavljat mjeru zadovoljstva stanovništva. Jedino di bi kvaliteta hrane mogla ući u igru je natalitet.

No, dobra strana tvog koncepta je da dio tehnologija može doći iz područja sociologije (bolja organizacija transporta i trgovine). Koncept može zaživiti u igra kao bonus na učinkovitost farmera. BTW, zašto ne bi na svom mjestu išao na smanjivanje učinkovitosti farmera?

Denis wrote:
y'' = F(y[, x])

S tim baš možeš precizno podesiti model kako ti odgovara. Koristio si diff prvog stupnja u prošlom postu, ali mislim da bi mogao dobiti prirodniji rezultat s ovako nečim. Ili nađi neku krivulju koja ti se sviđa, pa je prilagodi. Ne znam točno što bih rekao. Nisam dobro upoznat sa samim modelom igre, tako da mogu samo grubo pokušati pomoć oko balansa.

Ovo mi je malo preopćenito, što staviti s desne strane diff jednadžbe? Diferencijalne jednadžbe su zgodan konstrukt za reć "trebam funkciju koja se ponaša tako" no ja si još nisam iskristalizirao kako je to točno ponašanje. Stara kineska poslovica kaže "dobar requirement je pola implementacije" pa ću skladno tome još poradit na definiranju željenog ponašanja.

_________________
Nexus 64213 blog - IKON: moja verzija JSONa
Stareater blog - lijepe slike kak napreduje kod


Top
 Profile  
 
PostPosted: Thu Oct 03, 2013 10:15 pm 
Offline
Sajentist on djuti!
User avatar

Joined: Tue Aug 26, 2008 9:35 pm
Posts: 2618
Čisto mi "zdravoseljački" nema smisla. Koje je opravdanje da im se smanji učinkovitost? Ako je kvaka u ograničenju plodnog tla, opet moraš paziti na pravilo trudne žene (1 žena = 9 mjeseci do bebe; 9 žena = instant beba?).

Sad opet ne znam kako rukuješ s ljudima. Jesu li ljudi entiteti kao npr. u Dwarf Fortressu, ili se koristi magija statistike? Ako je ovo prvo, mogao bi srediti da samo najbolji farmeri mogu raditi na raspoloživom tlu. Bi li tad farmer postajao lošiji vremenom? Umiru li ljudi? Npr. tad vi se mogla ubaciti neka dinamika gdje ne možeš maksimiziati proizvodnju, jer bi ostao bez sposobnih radnika, što bi te bacilo u proizvodnu krizu (pogledaj npr kako 17ogodišnje cikade uruše populaciju predatora, ima vjerojatno na wikipediji, a imaš i scishow video o tome); efektivno postavljaš cap na proizvodnju, ali ga ne siliš.

Što se tiče desne strane diff jednadžbe, nemam pojma :zubo:
Možda bi ti se isplatilo napraviti malo detaljniju analizu tog svog modela? Ako bi imao kompletniju sliku, možda bi ti se željeno ponašanje nametnulo. Iako bi to vjerojatno bio dosta overkill, bio bi siguran da je igra izbalansirana.

Vjerojatno sad pretjerujem, ali nemaš možda impelmentiran sustav bolesti? Da ti x% output padne, jer je neka bolest inficirala hranu. Iako, opet bi to bio problem što bi bio kaos jedan potez; to opet povlači gomilanje hrane... Slažem se, kvarenje se ne slaže baš dobro sa resursom kako si ga zamislio, barem nije neko očito rješenje.


Top
 Profile  
 
PostPosted: Fri Oct 04, 2013 11:44 am 
Offline
Veliki brat malih trokuta
User avatar

Joined: Tue Sep 01, 2009 10:14 pm
Posts: 498
Location: Zagreb
Denis wrote:
Čisto mi "zdravoseljački" nema smisla. Koje je opravdanje da im se smanji učinkovitost? Ako je kvaka u ograničenju plodnog tla, ...

Nije stvar u ograničenju plodnosti tla nego u ograničenju površine tla. Ljude moš udomljavat po vertikali dok se s njivama možeš širiti po samo po horizontali. A površina planeta je ograničena. Limit u gore opisanim mojim modelima je sva površina koja se može obraditi kroz površina koju jedan poljoprivednik obrađuje (u prosjeku). Posebne tehnologije bi omogućavale "vertikalizaciju" poljoprivrede.

Denis wrote:
... opet moraš paziti na pravilo trudne žene (1 žena = 9 mjeseci do bebe; 9 žena = instant beba?).

Kvaka kod tog argumenta je prešućena pretpostavka da ni jedna ženi nije već u 9. mjesecu trudnoće. Statistički 9000000 žena -> x instant beba. Uz pretpostavku da je pol populacije žensko, svaka žena u prosjeku rodi 3 djeteta tokom života i očekivana životna dob 70 godina onda imaš mortalitet od 1/70 ~ 1.4% i natalitet od 0.5 * 3/70 ~ 2.1%. Ak je populacija kolonije 5 milijardi ljudi, iduće godine ćeš biti 107 milijuna beba. A u Zvjezdojecu je 1 turn = 1 godina (Zemljina godina).

Denis wrote:
Sad opet ne znam kako rukuješ s ljudima. Jesu li ljudi entiteti kao npr. u Dwarf Fortressu, ili se koristi magija statistike?

Koje si 4X-eve i grand strategije igrao? Master of Orion, Sword of the Stars, Galactic Civilizations, Civilization, Total War? Imam filing da si zamišljaš nešt tipa Settlersi il SimCity di je praktički svaki stanovnik posebno prikazan. Skala u Zvjezdojecu je takva da se pojedinci ne vide, igrač upravlja s par stotina planeta, tako da magija statistike.

Denis wrote:
Što se tiče desne strane diff jednadžbe, nemam pojma :zubo:
Možda bi ti se isplatilo napraviti malo detaljniju analizu tog svog modela? Ako bi imao kompletniju sliku, možda bi ti se željeno ponašanje nametnulo.

Slobodno pitaj, a možeš i skinut zadnju verziju pa pogledat (imat ćeš više pitanja neg odgovora al ćeš bar imat konkretna pitanja. Al mislim da bi bilo bolje otvorit novi thread za to.

Denis wrote:
Iako bi to vjerojatno bio dosta overkill, bio bi siguran da je igra izbalansirana.

Jedan od argumenata u korist linearnih segmenata je da ih je lagano objasnit igraču. No to je soft requirement.

Denis wrote:
Vjerojatno sad pretjerujem, ali nemaš možda impelmentiran sustav bolesti? Da ti x% output padne, jer je neka bolest inficirala hranu. Iako, opet bi to bio problem što bi bio kaos jedan potez; to opet povlači gomilanje hrane... Slažem se, kvarenje se ne slaže baš dobro sa resursom kako si ga zamislio, barem nije neko očito rješenje.

OK, ak bi išli da x% outputa otpada (razni uzroci, bolesti, kvarenje, vremenske nepogode, korupcija, itd.), kako bi se taj postotak računao? One atan sigmoide bi tu pasale ali što bi bio parametar funkcije? Aspolutna veličina kolonije, omjer veličine populacije i planeta, nešto treće?

_________________
Nexus 64213 blog - IKON: moja verzija JSONa
Stareater blog - lijepe slike kak napreduje kod


Top
 Profile  
 
PostPosted: Fri Oct 04, 2013 2:38 pm 
Offline
Sajentist on djuti!
User avatar

Joined: Tue Aug 26, 2008 9:35 pm
Posts: 2618
Nisam mislio na plodnost, nego općenito, ograničenje nad plodnim tlom, nekakvo. Nevažno, shvatio si od prilike što mislim.

Što se tiče grand strategija, mislim da je najveći Civ. Nisam zapravo ništa konkretno zamišljao, to vjerojatno i je razlog nekonzistentnosti pitanja.

Što se tiče smanjivanja outputa, nemam pojma :zubo:
Trebalo bi uzet u obzir tehnologiju obrade, neki random faktor uspješnosti godine (zbog elementarnih nepogoda i sl. viših sila), neki faktor ekologije ako ga imaš i sl. Tipa, na planetu teške industrije uzgoj hrane neće ići dobro zbog zagađenosti, dok će na očuvanom planetu ići bolje. Možda i tip planeta (neki planeti su bolji za uzgoj od drugih). Budem jednom prilikom bacio detaljniji pogled na to što si napravio do sad. Da imaš zadovoljstvo naroda, mogao bi i to (počnu odbijati hranu koja je ispod određene kvalitete/s određenog planeta koji je teže zagađen i sl). Iako to sad opet malo zalazi u Settlerastu domenu.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 16 posts ]  Go to page Previous  1, 2

Board index » Tehnička strana » Matematika & fizika

All times are UTC + 1 hour


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group