« Why functional programming matters | Main | BCS Programming Competition »

November 28, 2003

From 27 Thursday of November

Two weeks ago, we decided that the CSCS group was interested in

It seems reasonable that we could do all of that in the context of bots on IRC channels. Furthermore, there's levels and scope built into this: you can start by working on just a bot, and perhaps graduate into contributing to larger and more ambitious parts of the project. Or, you can just dive in, and see what you can do; either way, the idea is that anyone, at any level of ability, can find something of interest to do.

This week, we spent some more time brainstorming about

From that brainstorming, we put lots of Post-It notes on the whiteboard, and sketched out an architecture for our project. Sorta.

What will the bots do?

First off, we brainstormed what the bots might do. We didn't come up with a lot (the chief brainstormers in this group had to go somewhere else).


When we came together as a full group, these ideas were clearly grouped into things that involved Languages & Learning and things that involved Search & Retrieval. You will all be happy to know that this is what traditional artificial intelligence is all about.

Communication and protocols

The protocol group came up with the Bot Net. They painted a picture of bots all communicating with each-other on different tasks, learning and gathering information in different ways, but sharing it to achieve common goals. Or, something like that. We spent some time on issues of authentication ("How do we know they're a BotNet bot?"), security ("What if we crush an IRC network?"), and a host of other details that will undoubtedly be revisited in due time. I think the idea of the bots using an IRC channel to communicate between each-other (so we can actually see and read what they're saying to each-other) was a very cool idea indeed.

The BotNet framework will make use of PircBot to handle basic communication, but BotNet bots will have to be able to respond to higher-level stimuli than just events in channels; they have to be able to converse, well, on the BotNet. Designing the protocol and deciding how to do all this will involve some good learning about designing interfaces and APIs; we'll start small and simple.

So... why are we doing this?

It would be nice if we could win the Loebner Prize, but I don't think we will; it's unlikely that, when directly questioned, our bots will pass for people. However, it was put forward that our bots should probably not be completely annoying. So, our final goal of having cool and useful bots all over the place, communicating and gathering information, is that they're well behaved and they aren't annoying. In essence, we want to be able to coexist with our creations. This is, largely, an HCI and usability concern.

But how will we do all of this stuff?

Infrastructure. We need tools to help make this more doable. For example, will we create a Sourceforge project to store this stuff in? Or, will we install Sourceforge locally (so we get the experience of doing it) and use that instead? What about discussion boards/wikis/etc?

Some of these things we'd like to have in place before break (a Wiki, perhaps, and/or a discussion forum that doesn't suck) so we can do some communication and brainstorming over the holidays.

But what if I think all this sucks?
The talks from faculty, staff, and students in the department next term will be focused on

Given the nature of the project, I could imagine some bits on security, authentication, languages, parsing, and other things related to the project. I do not expect that these talks will all be directly spun at the project itself. Put another way, it would be nice if we got an intro and brush with some mobile computing on small devices (mobile phones, etc.). This will still be pertinent to our thinking about the project as a whole.

Sound good? Kick it around in the comments below, or on the mailing list, and have a good weekend.

Posted by mjadud at November 28, 2003 02:39 PM

Comments

I see that we wont be tag teaming up to do it then :-P

Posted by: shendry at November 28, 2003 02:59 PM

Looks like a very good representation of what we did yesterday.. The prospect of actually doing something with all of this is quite exciting.

Posted by: Jonathan Whiting at November 28, 2003 05:36 PM

That sounds like a really neat thing to do. It'd be cool to see the Bots turning into small entities that can transfer themselves in their entirety from one machine to another :-) With the AI etc they'd almost be like little lifeforms running between different places. That'd rock.

Posted by: Tim at December 4, 2003 01:28 PM

Post a comment




Remember Me?

(you may use HTML tags for style)