November 4 1992

 A MOUSE FOR WINDOWS

 The product would be primarily for Windows, though a DOS version with less or different features is also possible. It may well not actually be feasible at all in Windows, see below, but it has a lot more potential if it can be done.

The package consists of a window, representing a cage, in which lives a pet mouse. The mouse is driven by a combination of my neural net design, plus an `action schema' engine, related to that used in Rome. The former part allows `true', lifelike intelligence, with a capacity for conditioned learning; the latter ensures that the mouse's behaviour is reasonably sophisticated, and provides scope for `programmed-in' visual jokes.

The mouse lives in the cage on the desktop, and carries on its life concurrently with any other active Windows applications. It needs to be fed and watered, runs around making its own amusements using the toys you provide for it (wheel, tubes, walls, etc.), and can also be taught simple tricks (`laboratory' maze-running and other Pavlovian stuff).

Under Windows, however, a lot of extra fun becomes possible if you can open the cage, and let the mouse run free on the desktop! At the lowest level, it might simply scurry around, squeezing itself underneath other applications' windows and occasionally peeking out. It could also be aware of the mouse cursor, watching it, avoiding it or being shepherded around by it. Beyond that, though, there is scope (within the bounds of data security) for other, more mischievous activities, for example, the mouse might occasionally nibble the corners off icons, or pick them up and move them elsewhere. It might also be aware of other Windows applications - scurrying off to listen to the Media Player when a MIDI file is playing, for example.

Yet more potential exists if you run a second instance of the application, ie. a second mouse (any more would probably be impractical on all but the fastest machines), as the creatures could use DDE facilities to be aware of each other and interact. Alternatively, a single cage might contain two mice.

Interaction with the mouse (furry) would be via the mouse (plastic) and a set of tool buttons (tickle, stroke, smack, move, etc.). Menu options would give the user access to a selection of foods and toys to put into the cage. The more AI/A-Life oriented user could also access the parameters of the neural net, allowing him to play with the system's dynamics, or to monitor brain activity.

Some research is necessary before I could be sure what tricks I could (safely) get up to using Windows, but I think the whole notion of a computer pet cum desk-accessory is really rather cute, and would appeal a lot to most Windows users. It fits within the genre of fishtank screensavers, El Fish, etc. but because of the emphasis on intelligence (compared to El Fish's evolution aspect) it has a different slant, much more like Little Computer People (you could use `people' instead of mice here, but the user's expectations about human intelligence and behaviour would create a much bigger challenge). It is also substantially more interactive than either fishtanks or LCP.

As a product, it sits comfortably within XXX's range: it is an open-ended toy; it fits into their market niche at the cutting edge of A-Life, extending it into neural modelling; it's cute, fun and suitably whacky; there's scope for an entertaining & informative manual (keeping mice, neural nets, conditioned learning, etc.); finally, it hasn't been done before.

Unfortunately, I'm not yet confident that it can be done (under Windows - it's ok in DOS): a significant problem is getting smooth and reliable animation in an environment not designed for it (no screen-flipping), and where multitasking is going on (many demands on processor; unpredictable screen, where any part could be redrawn at any moment). Animation within the client area of its own window is reasonably ok, but life gets much more complex if you allow the sprite out onto the desktop (it's unlikely to be practical to allow the mouse onto the client area of a different application, which is a pity - imagine muddy footprints across a Paint image, or the rodent climbing into your spreadsheet and getting lost in the works, not to be seen until you reopen the sheet at a later date!).

Still, I think it's got enough potential to warrant some research. What do you think?

If this idea doesn't excite you, then I've got a similar, but less Windowsy idea to think about - a sort of Little Computer Ewoks.