Woops. I screwed up the NetLogo link in my previous post. Here is the post again, with the link fixed up. I wonder whether I should try editing a post, or whether I’ll just end up deleting my whole blog again…
I just downloaded NetLogo – a modelling and simulation environment. With it, I hope to create a very high level model of my original, ant-based service discovery protocol. NetLogo comes with a whole array of models which you can run, and the user community has created a bunch more. I want to create a high level model for the benefit of the complex systems researchers around the place, who may know little or nothing about pervasive computing and service discovery. It would be excellent if I could get those guys thinking about pervasive computing environments as an interesting domain that bears further study. This simulation won’t be for the benefit of computer networks and distributed computing people, who most likely aren’t too bothered with these high level models. I’m making sure I have one foot in complex systems territory, so that I can branch in that direction if I want to once my Ph.D is complete. For me, the lure of complex systems is its application to a wide array of fields, or rather, the fact that complex systems are everywhere: computer networks, sociology, economics, physics, biology – everywhere! Potentially, this means one should never be bored studying complex systems. But I fear this is a gross misaprehension, as those actually studying complex systems are all too willing to tell me.
But right now I need to focus on writing that paper with Ted, and thinking more about aggregating service discovery domains. Here’s a problem that might or might not have a simple solution. If distinct groups of p2p devices are connected hierarchically, perhaps based on physical location, how does a service at the bottom of this hierarchy know how widely its service description should be advertised? That is, a service at the bottom can know nothing about the overall topology of the network, so how does it specify how far up the hierarchy its service description should be advertised? As a contrived example, imagine that all the services on one floor of a building form a p2p group. The next level up is the building, then the campus, then the city and so on. A printer service wants to advertise itself to the entire building, but how does it do this, given that it can’t know, a priori, the way the p2p groups are split up. In its service advertisement message, it could say “advertise this to the building level domain but no higher”, but it would only be guessing that a there is such a thing as a building level domain. The topology could be organised using any other hierarchical property. I haven’t thought about this too deeply yet, but hopefully the solution is not difficult. Of course this assumes we even want to introduce hierarchies of p2p groups into the model. This may break the scalability of the protocol altogether.
For non-computer scientist readers of my diary, I apologise for waffling on about all this technical stuff. But there are a couple of computer scientist friends of mine who’ve indicated their interest in what I’m doing at uni and how my ideas are evolving. Besides, I’ve found it very helpful to dump my ideas in here. Looking back over my diary, there is a definite pattern emerging relating diary entries containing my random ideas and my level of productivity in the days and weeks following. On at least two occassions, random thoughts dumped in here have culminated in a manuscript, one of which has been accepted to a conference, and the other which is currently undergoing a review process. If I hadn’t stupidly deleted all my entries before March, I’m sure I would have observed a flurry of Core Dump activity in the lead up to my confirmation seminar too. So it seems that I can use this diary as a first step toward getting something accomplished, and I’m hoping this continues to be the case. So, unfortunately for some, the boring technical stuff will continue to appear in here. You can always skip reading it anyway.
Ultimately, this diary is forme to look back on, even if I do write a good portion of it for the small readership it has acquired. It should go without saying that my most personal thoughts and any incidents I wish to keep private don’t make it onto these pages. Apparently, that point was not entirely obvious. I can be candid, but not that candid! If you want more than I’m giving you, well you can always go and watch Big Brother (a show that I detest, by the way) or something like that. This is a Bowdlerised version of my life, because I don’t think everyone wants to know about every single one of my highs and lows, or what I think about these luxury Japanese toilets ;). More to the point, I don’t want everybody to know the ins and outs of my life! That was never the point of this diary. Those of you thinking you can read this blog to get an accurate indication of my state of mind on any particular day are sadly mistaken. You know who you are :). Just a friendly piece of advice. But do keep reading! :)