My day wasn't quite so productive. I spent it looking at the code and I think I know why things started working better. Remember I told you that there's buyers and sellers in my scheme of self-adaptation? Well, it turns out that in my code somewhere, I tried to be sophisticated and was making the sellers use a bi-modal distribution for creating their "asks", while the buyers were creating their "bids" using a normal distribution. Naturally, in the marketplace, the number of transactions were very limited! Also, to measure how much traders were deviating from the target, I was using an absolute number, which doesn't make sense. Deviation for each trader has to be measured relative to its own target. Once, I corrected that, the number of traders getting 'satisfaction' increased dramatically.
Hmmm...I started off thinking that I hadn't done much. But writing that down, makes me think that I did achieve something. It wasn't much, but at least there's some clarity and understanding of why things were working the way, they were.
I've still got to code up other composition types and verify that this scheme works for all of them, but I'm optimistic (hey! I'm a PhD student. I'm optimistic, by definition. Any sane person would've given up long ago ;-) ). Hopefully, I'll get at least something done tomorrow, though I don't have much hope, because I've got 3.5 hrs of student evaluation. Sigh.