Sunday, August 11, 2013

Kerbal Space Program?!?


I read something about KSP (Kerbal Space Program) a couple of years ago but I didn't do anything about it. Then the other day I saw this comic on xkcd, referencing KSP. If you hover your mouse over the comic, the comment says "Ahem. We are STRICTLY an Orbiter shop." Me too! But I was curious about what had happened to KSP since it was last (vaguely) on my radar.

Quite a bit, it turns out. It's still in an extended alpha development phase, but it's already got some interesting capabilities for people who like to "play in space" (something I once wrote a book about). After looking at a few web sites and videos, I decided to download and try KSP for myself (current version is 0.21.1, and it costs $23, including future updates). So what is KSP? From the web site:
KSP is a game where the players create and manage their own space program. Build spacecraft, fly them, and try to help the Kerbals to fulfill their ultimate mission of conquering space.
Essentially it's a space flight simulator with reasonably accurate physics, wrapped in a game-like interface with pretty decent graphics and some quirky alien-like astronaut characters (KSP's developers also seem to have a quirky sense of humor). It is just now starting to emerge from its "sandbox" phase (with the ability to build and fly your own spacecraft, but without any specific game-like goals). At this point, it's something like 3D simulated model rocketry, but with the ability to launch the rockets you design into space (orbital mechanics is involved, but the math is hidden behind clever controls and displays). You can dock with space stations, travel to and land on other planets, and try to navigate your spacecraft back to Kerbin for a safe landing.


Yes, Kerbin, not Earth. This fictional solar system has real physics (orbital mechanics and atmospheric flight) but it doesn't use the names and specific physical properties of our own solar system. Kerbin is an Earth-like "exoplanet" with two moons (Mun and Minmus - you can fly to and land on them).

So far I've only scratched the surface of KSP, and I don't know how much time I will spend with it. It depends in part on whether I start to do some space-related educational outreach again. I haven't done any for quite a while. When I have done school presentations, I have generally used Orbiter to dynamically demonstrate certain aspects of space flight and the solar system. That's cool for demos, and it beats simply using PowerPoint, but Orbiter's learning curve is quite steep, and it's hard for me to recommend to any students younger than maybe 11 or 12. KSP is definitely more kid-friendly. The rocket building section (see picture at top of this post) is simple yet powerful (though there is no guarantee that what you build will fly well or at all - the physics is pretty realistic, so you have to worry about mass, thrust, stability, etc.). As the Minecraft craze shows, kids (and adults) love to build stuff inside virtual worlds (and real ones). While building your own spacecraft for Orbiter is certainly possible, it's a separate "add on" development process, not integrated with the simulation itself.


KSP also integrates the instruments and controls needed to change orbits directly within the 3D views (spacecraft and map), making it easier and less abstract to see the effects of firing your rockets at certain times, locations, and directions. The screenshot above is from the integrated Orbiting 101 tutorial, and it shows the "maneuver node system" being used to predict the effect of a pro-grade burn at the low point of the orbit (periapsis). Dragging the pro-grade symbol changes the delta-V (speed change) value, and the dotted orbital path shows the predicted effect in real time (your path doesn't actually change unless you make that proposed burn at the proper time and with the correct ship orientation). Orbiter has similar capabilities (and much more) with its various "MFD" instruments, but these work like display screens in the cockpit, not directly in the 3D view. More realistic but also harder to visualize and understand.


KSP allows you to build and fly some pretty cool and complex space vehicles such as multi-stage rockets with strap-on boosters, and even Apollo LM-like landers such as the one shown above (docked with an Apollo-like command module housing three Kerbals who are about to land on the Mun - this is a supplied sample scenario). Although it's easy to build monster rockets with many engines, you do need to pay attention to structural integrity, symmetry, and stability or your giant booster may tumble out of control, crash, and burn. Unlike in Orbiter, things can and do blow up in KSP, though at the moment the hardy Kerbal astronauts are immune to G-forces, allowing you to perform high-G atmospheric entries and the like with impunity (this will undoubtedly change in future versions).

Future versions will also include a flight sim-like "career mode" with awards for completing certain missions or milestones like docking or landing on the Mun). I suppose that training options will also expand, although there is already some basic training in the game, and a variety of user-created tutorial videos and PDF's available on the web. Note that since changes between versions can be pretty extreme, there is no guarantee of backwards compatibility for previously built things when you upgrade.

I think KSP is already a great educational tool, because it is sufficiently "toy like" to be fun and non-threatening (think building robots with Lego MindStorms, but much cheaper), but powerful enough to allow really interesting and challenging activities. I really like the emphasis on what is essentially engineering - designing, building, testing, and thinking about why things work or don't work so the next iteration can be better. And remember, to engineer is human (and sometimes fun too).

2 comments:

Jacek Kupras said...

Very interesting review. By the way. What's the most important in outreach for kids, in your opinion?
Please, let me know. It's important for me.

FlyingSinger said...

I would say engagement is most important. By this I mean that kids need to be able to connect somehow with the activity. Some sort of hands-on experience is probably best. Doing something with your own hands, having control, seeing a positive result is most powerful. I have only done this a few times with Orbiter. Once in a workshop with Girl Scouts where I had a university computer lab. I installed Orbiter on 12-15 PC's and teams of two girls worked on some exercise scenarios I had set up. It went pretty well. Most times I only have one PC, and it comes down to demos and talking, asking questions to try to get kids thinking and involved. Clearly not as engaging, even if they think the stuff I show is cool. A few times I have been at a "space expo" with a booth. There I set up a couple of short Orbiter scenarios. Usually short final with shuttle Atlantis, try to land with joy stick (few controls). The other one is a short time from docking with ISS. Kids stand in line to play and watch each other. It's fun.

Is this engagement meaningful? It's hard to tell. Ultimately I'm hoping that some kids will see that engineering or science can be fun, not just hard, and that they can see themselves doing something like this someday. That it's worth working for. I don't know how successful that has been. As a teacher, I'm OK, but not great (I have had a few great teachers and I can see this). Probably with more practice I could be better.

Also outreach events are supplemental. You may only see these kids once, or a couple of times. Their regular teachers are the ones who really count. Of course many of them are good, but they have more constraints. They have to meet requirements and prepare kids for tests. I only have to show something interesting and/or fun for an hour or less. Much easier than the regular teachers' job!

Although KSP is new for me, I think it could be better for hands-on space outreach events because you can do more and see more with less instruction. Especially valuable for younger kids. Building a rocket from parts is all visual, drag-and-drop, and in 5 minutes you can be flying something. Is it good? Maybe not. But you have a fast experience with real-time feedback.