"Kai Antweiler" <[EMAIL PROTECTED]> writes: >> >> The calculation of the decaying averages AT, HT, and G should probably >> >> use factors other than 0.9. Determining the best factors to use will >> >> require experimentation. >> > >> > We could also experiment with other control structures. >> > Steph mentioned a PID controller (for something else) a while ago. >> > http://en.wikipedia.org/wiki/PID_controller >> >> Do we have someone available to program such things who would >> understand them? > > Leo and I have studied math. > >> I worry about the maintainability of the extra >> program complexity. Would the improvement in the calculated values >> make a big enough difference to justify the extra program complexity? > > This probably depends on how you compute it. > Taking average is a form of integration. > And a differential quotient can be approximated by a difference quotient: > (f(x+h) - f(x)) / h
Okay, it sounds like you understand it well enough to maintain it. Good news. Maybe bad news for you, because this means you (or Leo) get to program it. :-) ☺ While we are waiting for you to program it, what do you think of just using the simple method I proposed, namely NewAverage = (OldAverage * 0.9 + NewData * 0.1)? >> > Right now the values might jump a bit depending on how high the "running" >> > levels >> > are for the arriving glob. (Especially when a few explorers get hungry.) >> > We could flatten this a bit by using the globs speed as well as time. >> > (And the average running level for workers, or globs) >> >> I don't understand the previous paragraph. Can you explain? > > A slow glob that is far away will have an unproportional big effect > when it arrives. > All other globs that arrived during the game combined lead to a number > that is just 9 > times as heavy as the impact that this glob will have. > It probably is an outlier in the statistic. (Probably it shouldn't be > waited at all.) Very good point. Probably the time the globs take should be adjusted based on their speed to get instead the time the “average” glob _would_ have taken. Of course, this would require additional programming work to maintain the average globule speed. And there is the complication of land speed vs. water speed. However, I don't think we should adjust for the distance of the trip, because a globule arriving from a long distance may be the first of a large number of globules arriving from a long distance. For example, consider the first warriors that start returning from a strike on an enemy base. > On the other hand fast explorers, or globs nearby will have an > unproportianal influence > as well - again only at the time when they arrive. I suspect this will not hurt in practice. And the effect could be reduced by simply multiplying the old value by a larger factor than 0.9. > After a few other > globs it will be flattened. > We can reduce this effect somewhat, if we (let's say) multiply the > time by the speed of the globs and maybe divide by the average speed. > >> > Basically I would prefer an market economy style system, where every glob >> > has to work for its money and also buildings compete with each other >> > in their wages. >> > The amount of social welfare would be up to the player. And globs >> > with low money >> > might get only small amount of food back in restaurants and of health >> > in hospitals. >> > The player would have to care about debts, inflation, subventions and >> > taxes. >> >> I'm not sure what you are proposing. Do you want to write a concrete >> proposal? > > No, I don't. It's more a long term idea, that I haven't thought much about. > Imagine real life economy in glob2. This would add a nice gaming element. > Money would also be an intuitive quantity for the player. > When the player gives his globs more money (by social welfare) or your > buildings > more money (by subvention), then he earns from taxes and booty, > inflation happens. Okay. In the meantime, what do you think of my proposals? I think they are fairly simple, and could well be good enough. Combined with Leo's idea of boosting priorities based on the length of time spent waiting to hire a globule, I think some nice improvement in game play might result. -- Joe _______________________________________________ glob2-devel mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/glob2-devel
