13 Jun 2008 @ 2:15 AM 

This post doesn’t really have much to do with AGI.

One of the most celebrated examples of the astonishing emergent thinginess of the abstract universe is the Mandelbrot Set. Everybody who plays with it has been struck by its wonder.

It’s really a simple formula and it’s very easy to write a computer program to compute it.

In 1985 I wrote a little program to plot points of the Mandelbrot Set on my new Amiga 1000 computer. By modern standards its display was dreadful and at 0.1 Megaflops it wasn’t exactly “interactive”, but it was fun.

In the early 1990s I was lecturing computer science courses at a big 10 university and winding down my graduate studies (”slowly giving up” is an okay way to put it). At that time a Thinking Machines CM-5 was installed in our building, which was a pretty big deal. In the very first top500 supercomputer survey it ranked as the 63rd most powerful computer in the world. I had the chance to play with it a little bit just after it was installed (it was summertime and the real research did not yet monopolize the machine) — I wrote a Mandelbrot program for it, which was pretty cool.

This machine could do 8 Gigaflops: 80,000 times faster than the old Amiga. The bottleneck was not computing the images, it was getting them to the rather primitive display hardware.

Now on my desk I have a quad-core PC capable of doing 16 simultaneous floating point instructions per cycle; on this task using 32 bit floats I think it’s about twice as fast as the CM-5 was. Nice progress for 15 years.

So I wrote another Mandelbrot program just for fun. It’s only for Windows and you’ll want a decent monitor/videocard and the faster the processor the better, the more cores the better (up to 8), and you can download it here if you want. This version uses double precision arithmetic so it is half as fast as a single precision version would be — but the single precision math loses coherency at a low zoom level so it’s not as much fun as double precision.

Moving the mouse pans the view when a mouse button is down. Left mouse button zooms in. Right mouse button zooms out. Hit escape to exit.

For the curious, the source code is here.

I’ll probably play around with this again at some point; there are some features I’d like to add:

  • Smoother control
  • Better and alternate colorings
  • Dynamic alteration of iteration count

An upcoming generation of video cards will support double precision math; when that happens I’d like to write a version for one of those — this is almost a perfect SIMD application, and it should really fly.

One point that is important to me for musing about building AGI: if possible, build a mind on an abstract substrate whose implementation makes good use of the hardware. For now and the forseeable future, that means vectorized floating point math. Interesting.

Tags Categories: Fun Stuff Posted By: Derek
Last Edit: 07 Dec 2008 @ 09 53 PM

E-mailPermalinkComments (2)
 21 May 2008 @ 12:12 AM 

A casual interest in electronics and mechanical devices led me to play around with robotics as a hobby for a number of years.  Much of that time was spent on what we generously called “combat robots”, which are actually radio-controlled vehicles which inflict senseless and amusing carnage on each other inside lexan-clad arenas.  I was also interested in walking robots and spent a lot of effort playing around with machines with many degrees of freedom.  I built many such machines and learned a lot about electromechanical devices.  For the interested, I described a lot of that stuff here.

My AGI viewpoint holds that intelligence should to a large extent self-organize through adaptive interaction with a rich and causally deep world (I will have much more to say about that in future posts).  That is, most of the complexity of an intelligent entity is most efficiently acquired from an environment rather than being pre-specified.

Since the actual world is a pretty handy environment that has the Right Stuff built into it, it’s natural to think that embodying an AGI project in a robot with capable sensors and effectors is a good approach and I have been intending to do exactly that.  I’ve been collecting fancy parts like servo motors, harmonic drive gearboxes, and high tech motor controllers from ebay for several years, I have built a computer controlled milling machine to help with the construction, and I have enough parts to build a robust quadrupedal research platform totaling 14 or 15 degrees of freedom, with cameras, touch sensors, and so on.

Few researchers explicitly studying AGI actually use robots as their testbeds as far as I know.  However, there are many “AGI-related” research efforts that use robots.  Some examples:

  • A large multidisciplinary European research track called RobotCub is one such program, based around a public high-degree-of-freedom humanoid robot design.
  • Juyang Weng’s SAIL projects have a definite proto-AGI flavor to them.
  • MIT’s Cog project is an ambitious effort to study various aspects of embodied human-type cognition.
  • Bob Mottram is a roboticist who is also a frequent contributor to the AGI community.
  • Many other mainstream robotic efforts have natural connections to AGI.

One thing makes me think that it might be a good idea to wait a couple more years before building an ambitious robot, though:

Although video cameras provide a nice dense connection to the world, it may be that the lowest-level learned concepts are much easier to acquire when similarly-dense haptic and proprioceptive sensors are added to the mix.  These not only provide an immedite and detailed interface to a complex world, but also provide rich cross-modal integration with vision.  It seems to me now that rooting out the secrets of early concept acquisition would benefit greatly from that sensory modality.

Problem is, robots suck at having a senses of touch.  For example, artificial skin is poorly developed and out of the technological range of an amateur like myself.

There is an alternative that is much in the minds of AGI researchers these days:  virtual embodiment in simulated worlds.  One of my biggest research topics these days is evaluating the potential of that option with respect to the needs of my own exploratory research.

I shall have much to say about that as my investigations proceed.

Tags Categories: Fun Stuff Posted By: Derek
Last Edit: 07 Dec 2008 @ 09 55 PM

E-mailPermalinkComments (4)
\/ More Options ...
Change Theme...
  • Role »
  • Posts »
  • Comments »
Change Theme...
  • VoidVoid (Default)
  • LifeLife
  • EarthEarth
  • WindWind
  • WaterWater
  • FireFire
  • LiteLightweight
  • No Child Pages...
  • No Child Pages...
  • No Child Pages...