terça-feira, 16 de novembro de 2010

Welcome to the Cyberiad

The Cyberiad is a series of short stories by Stanisław Lem in which the main characters are for the most part robots and other intelligent machines created by Trurl and Klapaucius, the "constructors". In the stories, the duo of robotic engineers enjoy their time building extraordinary machines or otherwise traveling through the universe.

The Cyberiad blog will attempt to follow this theme of synthesis by exploring the computational universe for simple and yet interesting constructs exhibiting complexity as autonomous agents in virtual and augmented universes. As the goal is also to enable the reproduction and free discussion and elaboration of such constructs, many articles will also concern the creation of the tools and code base on which the experiments will be grounded.

This blog is concerned as much with the conceptual exploration of artificial life, as with sets of engineering principles capable of making these ideas a reality, so you may find that most articles are very down to earth in terms of implementation techniques. The following set of articles will start by addressing the creation of a simulation framework which we can then use to populate and create virtual worlds, and may also be in general useful as a simple game engine.

The language for developing our first code base will be C# and the XNA framework will be the starting point for the journey. The reason is mostly a selfish and subjective conception that C# has matured into a very interesting and powerful functional-imperative hybrid on which one can create complex programs in a compact way. Future explorations may use other languages and programming paradigms. Either way, the concepts approached here will when possible be conceived in a language-independent manner.

Disclaimer: This blog represents my own personal, inevitably biased and probably many times misinformed and plain incorrect views. At no point I intend to offer guarantees about the correctness of the ideas exposed here, although I will do my best to justify and present them in the clearest possible way. I am, of course, eager to change for the best, so any useful criticism will be reflected upon and promptly incorporated and addressed. That said, please expect blatantly outrageous conclusions about controversial topics in science, philosophy and technology. They are made deliberately to stretch ideas to their logical breaking point and perhaps inspire new approaches to settling old matters.