Coordinated Swarms of Quadrotors

The General Robotics, Automation, Sensing and Perception (GRASP) Laboratory at the University of Pennsylvania is developing algorithms to control swarms of quadrotors, also known as quadcopters or quadricopters.

Their research group has some amazing videos of quadrotors in coordinated flight, and quadrotors working together to perform a coordinated construction task. The GRASP lab is involved in numerous other projects that are worth checking out.

Here is a video of quadrotors in coordinated flight:

Here they perform a construction task:

The latter video was featured on The Colbert Report.
Amazing work (and a little creepy!)


Common Code::Blocks Set Up Error

I have just installed Code::Blocks 10.05 and I had some difficulties getting source code (like HelloWorld) to compile.
I encountered the following error:

"xxx - Debug" uses an invalid compiler. Probably the toolchain path within the compiler options is not setup correctly?! Skipping...
Nothing to be done.

Sure, you can find the solution by searching forums and wading through post after post where idiots (who probably don’t know how to solve the problem since it worked right the first time for them by chance) insult the poor sap who is merely asking for help.
(can you tell that I spent too much time wading through that nonsense?)

Here is what worked for me.

First, remember that Code::Blocks is an IDE—not a compiler. You either have to have a compiler installed, or run the setup files that come with the MinGW compiler. For me, this was: codeblocks-10.05mingw-setup.exe

Second, as the message says, you need to check the toolchain path.
Go to:
1. Click on the Menu Item “Settings”> “Compiler and debugger…”
2. Click on the “Toolchain executables” tab
3. The “Compiler’s installation directory” (marked in blue) is the directory you are interested in.
4. Simply click on “Auto Detect” to the right.
You should now have the compiler set up properly.
Go back to your project and click on build and run.

Now you can actually start programming!

Last, consider those jerks on the forums who think that programming consists of Googling or searching for answers on how to get someone else’s quirky IDE program, compiler, or operating system to do what it is supposed to do and who have nothing better to do than insult people who are having problems. These are the guys who have absolutely no idea what it means to program!
(Before anyone who was insulted by my comments above considers flaming me with further insults, I should tell you that I have failed people like that in my graduate level classes, and your time would be best served by just getting back to work!)

Bayes Theorem and our Poor Sense of Probability

One of the groups I belong to on LinkedIn posted an interesting problem that was published in a New Scientist article on the Gathering for Gardner meeting. The problem goes like this:

I have two children.
One is a boy born on a Tuesday.
What is the probability I have two boys?

Can the fact that you were told that one of the boys was born on a Tuesday tell you anything about whether both children are boys?
Indeed it can!

Find out more HERE:

Candletastic: An experiment in CO2

I came across a lovely video of an experiment where CO2 is used to put out flames.

I myself once performed a demonstration in my physics class where I compared a Helium filled balloon to a Carbon Dioxide filled balloon. Of course, one floats and the other falls to the ground (faster than a balloon filled with room air).

I then showed how my voice sounds higher when I inhale Helium due to the fact that the speed of sound is faster in Helium than in air, and the waves pile up as the slow down at the Helium-Air interface.

To be clever, I asked my students what happens when you breathe in Carbon Dioxide and try the same trick. Your voice should sound far lower. What I didn’t count on was that when you breathe pure Carbon Dioxide, it combines with the water in your lung membranes and forms Carbonic Acid. I almost coughed to death during the demo.

Next time Michelle Bachmann says that CO2 is harmless, have her take a breath out of a CO2 balloon!

Kevin Knuth
Albany NY

Modern Chain Maille

I have recently become interested in making chain maille, and am fascinated by the possibilities of modernizing many of the weaves. I have been practicing with some of the basic weaves and have begun selling some of the jewelry I have made on Etsy at

I find that I love working in silver. The brilliant white color of the metal is far more beautiful than gold. I really love the Byzantine chain weave, and I feel challenged to make them as small as possible. Here is a picture of my Byzantine weave bracelet handwoven with sterling silver and blue anodized niobium rings. It is only 3/8 of an inch wide.

Blue Byzantine Bracelet made with Sterling Silver and Anodized Niobium
Blue Byzantine Bracelet made with Sterling Silver and Anodized Niobium

I also love the hexagonal patterns of the Japanese weave. I have been playing with variations that involve different sized rings. I won’t show those here quite yet. But below are two necklaces I have made with this weave.

Japanese Chainmaille Necklace
Japanese Chainmaille Necklace
Springtime Necklace features leaves made from a Japanese-style weave
Springtime Necklace features leaves made from a Japanese-style weave

I am now working on integrating gemstones into the maille to obtain some truly unique designs.