Sunday, April 11, 2004

Still havent heard about my afrika corps game, might have to pop to work to check for it...
Got LOTS done on Government. Its got working sliders for policies, and I've set things up so I can add policies in Excel to a CSV file. That meant adding some small bits of CSV handling code to my library, which was trivial.
The big problem ahead of me is sorting out the back-end simulation so it makes sense. At the moment its calculating in a very similar way to the way things work in the real world. There are a thousand voters, and each voter belongs to a handfull of different voter groups. So someone might be a man, trade unionist, liberal car driver who own his own house and has 2 kids.

When it comes time to vote (or to evaluate his satisfaction with the government), he has to look at each government policy in turn and see how it influences him.
Each policy will have both an intensity slider, and a range of different effects for different voter types.
So a policy might really upset trade unionists, be popular with motorists, and slightly unpopular with lone parents (for example). Our voter will aggregate all his different viewpoints based on what groups he is, and come up with his overall opinion of that policy. Of course, that might change with the policys intensity. If its income tax, then a low level might make him happy, a high level sad, etc.
Once he has his aggregate view of that policy, he then has to group that will his views of all the other policies, and come to a final yes/no choice on whether to support the government.
Repeat this a thousand times, and I get my final job approval rate.

Its not working yet, so i dont know if my 2.8gig machine can calculate this in 1/10th second, or in 20 minutes ;)
we are talking 100 people evaluating maybe 30 policies, each affecting maybe 10 groups. so thats 30,000 evaluations, each one involving searching through the policies policy_effect vector doing string compares..
nah it should be instant... if it is, I might switch to 10,000 voters.

Links to this post:

Create a Link

<< Home