Libtap article in Russian?
December 28, 2006
I just found (by pure chance, searching for my name on the Google Image search) what appears to be an article I wrote on LibTAP translated into Russian. It has more comments than the original, but I have no idea whether they’re flattering or not. Anybody read enough Russian to give me a summary of the comments?
com.yourcompany.X
December 21, 2006
Dear Lazyweb,
How in the name of all that is unholy can I make Xcode default to using a sensible prefix, like org.brautaset, instead of com.yourcompany for identifiers when I create a new target? Answers in the comments or on email to stig@brautaset.org please.
Abandon all hope; the terrorists and retailers have won
December 19, 2006
Leaving London Stansted early this morning I’m currently at Oslo Gardermoen airport waiting for my connecting flight to Hovdebygda. I am annoyed that the terrorists have won and that I have to suffer the stigma that flying has turned into. Not being able to take a plastic bottle of water through the security check is simply disgraceful.
Don’t get me wrong—I’m sympathetic to concerns about the ability to smuggle liquid explosives using food containers. But why is it that as soon as I’m through the security check I can still buy all the ingredients for a Molotov Cocktail? Not to mention glass bottles that can be broken and used to make a primitive knife (just wrap one end of an elongated shard in a scarf or belt you bought at one of the many clothes pushers).
The retailers are laughing all the way to the bank of course. They are in a stronger position than ever before to sell their goods. After the strict enforcement of a single piece of (smaller) hand-luggage per person everyone that comes through the security check is guaranteed to have at least one hand free to carry their waiting lounge shopping.
It seems to me that the new security restrictions is a lot of hassle for very little actual gain. If I was a more conspiratorial person I might suggest that is was just scare-mongering—it has worked well in the past to cover up or downplay other issues. It’s probably just as well that my lack of political wherewithal makes me completely unable to think of what could be worth covering up. (Oh, wait! Did you see how well that just worked?)
A couple hours later: Adding insult to injury, I was just told at the security check that I could not take the two half-litre bottles of Cognac that I bought at the Stansted tax-free through. Apparently the plastic bag was supposed to be sealed; the bottles still being unopened and me showing the receipt fazed them not at all.
On advice from the airline’s customer service desk I ended up stuffing the bottles in my laptop bag and checking that in as a separate item of hold luggage (after first taking my laptop out—I’m not crazy). Now let’s hope the bottles don’t break.
Two hours hence: Well, crap. This really isn’t my day. It has now transpired that my plane is more than two and a half hours delayed. Of course, my spare battery and charger is still in the laptop bag that I checked in earlier.
Not posted until I got home as two hours of wireless internet at Oslo airport cost the same as my regular internet provider charge me for 14 days worth. I got a final slap in the face when I finally arrived at the final airport; my computer bag had been sent elsewhere. For some reason it had been checked in under the wrong name, and the person that name belonged to was not going to visit my parents. Imagine that.
Neural net Connect4 status update
December 18, 2006
As I have noted before I have been trying to use a genetic algorithm to evolve a multi-level perceptron (MLP—a specific type of neural net) to play Connect4 better than my hand-written player. My efforts have yet to bear fruit, and my patience is wearing thin. After multiple revisions to the GA and meticulous training for over 300 generations it is still not good enough—so I’ve decided to cheat.
I freely admit that my goal is not as pure as David & Kumar’s: they wanted to find out if Blondie24 could learn to play Checkers well completely on her own, while I am only concerned with building a better AI for my Connect4 game. It occurred to me that I can train MLPs to mimic the output from my existing evaluation function and seed my GA with them. This way the starting population already have nets as good as the best I can come up with—hopefully the GA should be able to pick things up from there.
Creating training sets was pretty easy. I wrote a short program to do a depth-first search of the valid states and spit out the first ten thousand unique ones, with their associated fitness. The NSSet Objective-C class proved very useful for this.
The second step in my plan, implementing back-propagation in my MLP class, was considerably harder. I ended up spending countless hours poring over books and some code I wrote for a coursework 4–5 years ago (we were predicting USD/GBP exchange rates). Even though the resulting code is the mental equivalent of a tongue-twister—lots of indexing into tightly coupled two- and three-dimensional arrays of various lengths—I’m actually really happy with it, and I’ve decided to release it as a separate project.
Now all I have to do is write a small program to create the initial population for my GA. I’ll keep you posted.
Keep on Rockin’
December 18, 2006
Martin Brooks, with Mark Fowler’s camera, managed to snap the above picture of me playing Guitar Hero 2 just before we went off to the Fotango Christmas meal. I am in all likelyhood attempting to play Monkey Wrench by Foo Fighters; it was a bit more difficult than I expected, so I was concentrating very hard on hitting the right buttons—which is why I didn’t notice anyone taking my picture. Greg McCarroll—another Fotangonite—is doing the backing vocals.
I’m not usually very fond of (and therefore not very good at) playing video games but Guitar Hero 2 is very fun. The way I’ve played it it’s more a group of friends listening to and interacting with great music than a game. Two people can play at the same time (rythm/lead or guitar/bass), both co-operatively and competitive, and both players can have a different difficulty setting.
Prototyping with Rapide
December 7, 2006
Or, as it is also known, missing the point completely.
I was reading an article called Haskell vs. Ada vs. C++ vs. Awk vs. …
An Experiment in Software Prototyping Productivity when I came across this comment about one of the solutions (emphasis mine):
(6) The Rapide solution was written by several researchers at Stanford and TRW, and is perhaps the most difficult to assess: the prototype was not only not executed (at the time no compiler or interpreter was available), but also did not address the essential functionality of the geo-server. The developers chose instead to address software architecture issues, emphasizing Rapide’s utility in that domain. For purposes of comparison, it may be best to ignore this entry, but we did not want to eliminate it from the results, since it is included in [LBK 94].
Yep. That sounds like researchers for you.
First love for sale
December 5, 2006
I’m selling my dearly beloved Q65 speakers. Having grown up and amassed more furniture I simply don’t have room for them any more. May they go to a good home.
Sniff.
Update (2006/12/17): They’re gone! They went for a steal; or a song, if you prefer.
7 deadly sins
December 3, 2006
| Greed: | Medium |
|
| Gluttony: | Medium |
|
| Wrath: | Medium |
|
| Sloth: | Medium |
|
| Envy: | Low |
|
| Lust: | Medium |
|
| Pride: | High |
|
Update: I redid the test today (the above results are from a week or so ago, I think; they’ve been sitting in my drafts folder for some time) and got a different result:
| Greed: | Medium |
|
| Gluttony: | Medium |
|
| Wrath: | Medium |
|
| Sloth: | Medium |
|
| Envy: | Medium |
|
| Lust: | Medium |
|
| Pride: | Medium |
|
Iron Maiden
December 3, 2006
It shows that the guys in Iron Maiden are getting older. Stumbling across their Tour Diary I learned that they took some time off their busy schedule on the US tour to play golf…
