I’ve spent some time sketching out possible approaches to the farming godel based on the information DZ gave me last time. Here’s an update to the ‘high-level’ design:
- As I said before, I will sketch out a map of the village, picking out the main institutions and geographical features. I will use the satellite map to get the spatial arrangements approximately right, but I will have to take some artistic decisions here to help make the godel more engaging i.e. it is going to be important to see/animate what farmers are actually doing in the fields so I might have to increase the size of the fields, and reduce the distance between the village and the fields to preserve space inside the NetLogo (NL) View. I sketched out some maps using GIMP and imported them into NL (using import-pcolors “”). (I struggled a bit here since NL was blurring the edges of the shapes, which I eventually fixed with a top tip from Ken: you have to get the NL View the same size in pixels as the image you create in GIMP otherwise NL does some clever estimation which I think means blurring shape edges with the background. Anyway, I guessed this, but then forgot that NL often uses zero as the first number. This means that an image that is 600 x 400 in GIMP is equivalent to a NL View that is 599 x 399. Little things can cause big headaches!)
- Once the sketched map is in NL I can use the colors to assign attributes to agents and patches e.g. globals [ farmland] set farmland patches with pcolor = green ask turtles [ set my-destination one-of farmland face my-farmland ] etc.
- I can also easily place the main institutions within the View e.g. Dispensary, School, Chefferie, Mosque, Market, Bar.
- Now the difficult design work, how to build a NL user interface that will allow the villages to play with different ways to go about farming AND allow us to gather logging data that tells us something about the use of these godels as a tool for discussing the future in situations like these. One way to achieve this might be to provide a grid whereby villages can decide how much time to put into each of the main things they can focus on over a week/month
|Clear field||3 days||-10||-10|
|Apply weed killer||1 day||-10||-10|
|Hire tractor||2 days||-5||-2000|
|Sell maize at market||4 days||+10||+100|
|and so on…||X||Y||Z|
So just to be more clear. I am imagining a godel where each month the simulation run stops and asks the player to look at how many days they want to spend doing a range of activities. They would adjust it based on their knowledge of the farming calendar, and the simulation would run based on this data and the player would see their character running off to fields to dig furrows, plant seeds, harvest maize etc. Obviously we will have to calibrate money and happiness once we’re in Cameroon, and this will always have a subjective element to it, but it will nevertheless help us add game-like elements.
The trouble with this approach is that it will be rather laborious experience for the player i.e. changing lots of input boxes or switches in NL. The good thing about it will be that it will produce plenty of interesting data that will be easy to interpret. Civilisation V gets round the issue by using a hierarchical tree to limit what can be done at specific periods and providing an enormous encyclopedia that explains what the different options mean (which I don’t think we’ll have time to do). There are major limitations in trying to reproduce this approach in NL i.e. for instance, it is not possible (as far as I know) to change the user interface during a simulation run e.g. the options in a drop-down box.
We can make the godel harder by ramping up the severity of the bad weather (and perhaps sickness) by having agents for these concepts sweep into the godel and effect people and crops.
Doing well in the game would be accumulating high scores for money and happiness. However, this could be at the expense of the other village institutions. To get around this each institution will have its own cumulative counter for money i.e. when a player decides to give a days labour to the fields belonging to the Mosque, this institution’s fields will benefit to the point the crops will be sold. The same principle for the Dispensary, School etc
All in all, I am fairly happy with this overall approach. I think logging will work, the godel user interface will be ok, it is extensible in the sense that we can add new farming decisions easily e.g. give up on maize and concentrate on potatoes or coffee, and there is scope for interesting non-linear dynamics to emerge as farming routines bump up against environmental/health variability (and so the possibility of finding clever approaches to mitigate the effects e.g. as in the case for artisanal fishers: by avoiding the extraction of mature (and fecund) female fish, and diversify on catch species, it might be possible to increase catch (in biomass) whilst moving away from the maximum sustainable yield.