Wednesday, October 31, 2007

Denouement

DISCLAIMER: the opinionated political satire expressed here is in no way affiliated or aligned with the views of Cornell University.
DISCLAIMER: the technical investigations of this team should in no way be perceived as anything but a dedicated and rigorous research effort. Please do not reproduce or otherwise make available any portion of the material found within unless permission is obtained from the author first.

It seems that NQE is drawing to a close. The schedule got rather honked up today, with a lot of teams running at a moment's notice on so many parts of the NQE course. I feel bad for MIT, who apparently ran no less than five times today (we ran twice yesterday and I was exhausted). A lot of teams are packing up and leaving, which saddens me a little. I've never really thought of the Urban Challenge as a race of robot vs. robot; to me, it's always been us dealing with whatever DARPA thinks is the next big step that needs to be made in this field. Heck, if the evil army of synchronized Ford Tauruses doesn't make everybody else think that, then I don't know what will. I, for one, will never look at a Ford Taurus the same way again.

Since I wrote about our first little adventure in Taurus-land a few days ago, we've had another three successful runs. The first was in heart attack C (well, DARPA calls it Area C, but I think my name is more appropriate). Heart attack C tests intersection precedence: four way stops, where you have to figure out when it's your turn to go. It's very obvious when you make a mistake, and it's almost always my fault when we do. Thankfully we nailed intersection dead on- something that looks absolutely amazing in the video I took of it. When that was finished DARPA started putting blockages in the road... we're supposed to detect them and plan a new route. The orange barrels were fine (I'm from Ohio, and they're our state flower anyway), but one section of the course was blocked by an absolutely diabolical horizontal metal bar with stop signs bolted across it. As our car was running I was nervously zooming in on the stop signs with my camcorder, trying to figure out if the stop signs were low enough for our sensors to see them. It was a tense moment... those who saw me bouncing around and repeatedly pounding out trumpet finger positions for chromatic scales with both my hands could attest to how nervous I was. But then, as if by some great force of magic, the brake lights fired up, the car halted, and then it executed one of the most welcomed and beautiful three point turns I've ever seen it do. My mom said she was getting too old for this... I think I am too.

We ran Area B again- the endurance run that goes in and out of parking lots and around little groups of houses long since uninhabited. I still don't want to say what's back there, but now mostly because I don't want to remember it. And then of course we ran Area A again, with the two lanes of Ford Tauruses of doom. With so much time and effort put into this car of ours, I don't think I can take much more of this.

Anyway, everybody out here is exhausted. It's the kind of thing where we're all afraid to admit just how much this car means to us, because nobody wants to admit that seeing it get wrecked up will be absolutely devastating. Still, with the chaos of the final race (the NQE runs have all been one autonomous vehicle vs. the human Ford Tauruses), I think the probability of bad things happening is woefully high. My advisor once told me that for a guy who makes his career studying probability, I sure get screwed a lot. It's definitely true... and usually I'm conservative enough that I'd rather not know certain things than know them for fear of disappointment. For this one, though, I think we have to go all in. I had a fortune cookie last night with the message "it's not the end yet, let's stay with it."

Then again, I also had a fortune cookie a few days ago with the message, "when the moment comes, take the top one."

Sunday, October 28, 2007

Trial by tire -or- trouble in DARPAville

DISCLAIMER: the opinionated political satire expressed here is in no way affiliated or aligned with the views of Cornell University.
DISCLAIMER: the technical investigations of this team should in no way be perceived as anything but a dedicated and rigorous research effort. Please do not reproduce or otherwise make available any portion of the material found within unless permission is obtained from the author first.

...And here we find ourselves at NQE. I know it's been a long time since I've written, but NQE has been super hectic. Things were a bit disorganized at first, but I think DARPA has done an exceptional job keeping things very safe and very controlled. After all, each of us has put his blood, sweat, and tears into these cars, and we'd all hate to see them destroyed.

So what has happened? Well, we arrived on Thursday (maybe... I've kinda lost track of what day it is exactly). We set up camp in our puny pit area, gratiously supplied with nothing... no power, no water, no shelter, and some porta-potties that seem to run out of everything entirely too fast. I toured around all the cars, trying to talk to as many people as possible. I met some fantastic folks from UCF, Virginia Tech, Insight Racing, and many others, and I caught up with some good old friends over at Teams Cajunbot and Caltech. I like hearing everybody's stories about their cars- you know, the things the media never asks about. That's what makes a venue like this so unique, because all of us techies can really understand and appreciate some of the difficult things each of us has accomplished. I would post pictures (I will eventually), but unfortunately I'm currently pulling my internet connection off a cellular modem connected to a laptop that has been stepped on, dropped, vibrated and heated to death on the DGC '05 generator, and I believe even run over. Needless to say, the connection is not so good.

We've run twice so far- once each in two out of the three NQE areas. We didn't make it through area B- a basic navigation run, for one legitimate reason and one stupid reason. We've promised not to give details of what happened exactly, since the course is not visible to the public. We drove well and failed safely though, so I'm hoping DARPA will consider that as NQE progresses.

Area A was a heart attack waiting to happen- a circle of bi-directional traffic into which our car had to merge repeatedly. The traffic was supplied by DARPA- a fleet of specially-outfitted Ford Tauruses driven by professional stunt drivers, no less. The whole thing is very eerie... concrete barriers and vehicle sirens drown out the Taurus' engines, and the stunt drivers are all very synchronized. It gives of the distinct impression of being a creepy carnival ride starting and stopping, so much so that I think it would be complete with a little slow waltz or circus music in some minor key. The situation is very difficult to merge into, with very tight tolerances required to avoid the evil fleet of Tauruses on your left and some menacing concrete barriers on the right. I had a terrible night sleeping last night, thinking, 'frick, the car's gonna crash, the car's gonna crash...' and then waking up and whirling about how this or that under some impossibly unlikely situation would cause our car to destroy its front bumper- a $28000 mistake. To top that all off the entire course is very small and completely visible to the public, so you just have to sit there and sweat bullets while it's all happening. It's the kind of thing that excites morbid curiosity: you don't want to watch, but you just have to do it anyway.

Well, to cut a long story short, our car made it through. (!) We didn't cause a single accident (the DARPA drivers prevent accidents, but honk if they would've occurred). We checked the data logs- we came within 20 cm of the concrete barrier at one point (make fists with your hands and stack them one on top of another: that's about 20 cm). I'm glad the guys told me about that *after* the run was over, because otherwise I'd have to go change my pants. Still, it's pretty slick (*cough* scary *cough*) that the planner knows its boundaries that well.

I need to run to dinner now, but I want to let any competitors know that they've all done amazing jobs with their cars- trust me, I looked. The media might not appreciate or even care about those multi-month technical accomplishments hiding in each one of our tamed behemoths, but I sure do.

Thursday, October 25, 2007

My four leaf clover

DISCLAIMER: the opinionated political satire expressed here is in no way affiliated or aligned with the views of Cornell University.
DISCLAIMER: the technical investigations of this team should in no way be perceived as anything but a dedicated and rigorous research effort. Please do not reproduce or otherwise make available any portion of the material found within unless permission is obtained from the author first.

Someone once said to me that the only certain thing in life is that nothing is certain; that the key to living a happy life is to leave every norm and expectation behind, to sway back and forth in the aether of life like a blade of grass in the wind.

I am trying to do that, despite the absurdity of it all. Of late we are bordered by an ominous conflagration- you've probably seen it if you've looked at CNN recently. It is not threatening to burn us down, but it is closing all the nearby roads. Perhaps more devastating is the fact that half our planning team is asleep in bed with pneumonia; we wish him a safe and speedy recovery. There are other problems: equipment failures, broken locks, and the like, all threatening to shut us down. It seems improbable if not impossible, except for the fact that we are all here living it.

Yet somehow, I think I'm ok with it. Not that I or anyone else on the team has given up, more that each of us is psyched up for everything to work despite all the setbacks. I think that's my four leaf clover: at the end of the ride, it's going to be one hell of a story.

Monday, October 22, 2007

EE for a day

DISCLAIMER: the opinionated political satire expressed here is in no way affiliated or aligned with the views of Cornell University.
DISCLAIMER: the technical investigations of this team should in no way be perceived as anything but a dedicated and rigorous research effort. Please do not reproduce or otherwise make available any portion of the material found within unless permission is obtained from the author first.

If you had to guess... what's the worst thing that could break on the car right before competition? Something that's impossible to repair, impossible to replace, outrageously expensive, reliable for several years of use, and absolutely critical for the car to drive... Something that everybody on our team has joked about when writing code... "well, if that broke we'd be up a creek for everything else anyway, so we shouldn't even consider it." Something that's military grade, the heartbeat of the car, the thing that's supposed to run for years before breaking... you know, the thing that's never supposed to stop working.

Well, it broke.

Believe it. Oh yes, that's right, and Murphy stopped by for another visit yesterday, inviting all his gremlins and kilroy and whatnot along for the ride.

The car has (ok, had) two pulses; synchronized and harmonious, and literally bringing order to everything else on the car. Midmorning yesterday one of those pulses shuddered, convulsed, went flatline, and was pronounced dead a few hours later. *sob* ...no joke.

So I got to play electrical engineer for a day, helping hands for our real EE trying desperately to figure out what was wrong and how to fix it. Sadly we tore the car apart- scoping this, probing that, fiddling with things that hadn't been fiddled in months. *sigh* and that's the way it goes. Last competition we changed a transmission at the qualifying event- a whole day's job that somehow magically worked. I called that blog post "transmission impossible." Now we're spoofing the second heartbeat off the one good one still beating, and praying that whoever it was upstairs that liked us so much last time around still feels our pain. I think I will call this little episode "position impossible," because it describes exactly what stopped working. I suppose "repetition impossible" would also be appropriate.

Saturday, October 20, 2007

Never lost

DISCLAIMER: the opinionated political satire expressed here is in no way affiliated or aligned with the views of Cornell University.
DISCLAIMER: the technical investigations of this team should in no way be perceived as anything but a dedicated and rigorous research effort. Please do not reproduce or otherwise make available any portion of the material found within unless permission is obtained from the author first.

There isn't much to do in Mojave that doesn't have something to do with airplanes. The only problem is that everybody here is a gearhead, leaving very few people skilled at cooking and restaurant ownership. The choices are somewhat limited- in part because this is the middle of nowhere, and in part because we have an irrationally picky eater on the team (I will not name names). We've tried just about every restaurant that looks decent (our criterion is that the restaurant's sign is fully lit up and made this century). Some have resulted in disastrous gastrointestinal results, and I will leave it at that. Those that remain are Denny's, the Voyager Cafe, and Mariah's. The Voyager Cafe (named after the voyager airplane that flew around the world a few years back, by the way) is absolutely fantastic. I always get something different on the menu, and I've never been disappointed yet. I even braved the peanut butter burger (burger + swiss + bacon + peanut butter). It sounds absolutely disgusting, but I was shocked at how well the flavors went together. The only snag is that Voyager is only open for breakfast and lunch, and since we are not early birds, we hit it for lunch almost every day. Mariah's is a decent Mexican restaurant- run of the mill, but a nice environment. I've only been there once, but I was happy with what I ate.

And then there is Denny's. A friend of mine once said that you never go out expecting to go to Denny's, you just "end up there." I think that's probably true- one of those universal truths that people meditate on for some absurd length of time before achieving enlightenment. For us, the dinner conversation usually goes something like this:

"Want to eat?"
"Sure."
"Where should we go?"
"Well, it's 9:00, so most places won't serve."
"There's always Denny's."
"Yeah... I guess so."

And that's that. I think it's funny how it takes us three days or so to get over the time shift from New York to California, and then we're back to eating dinner near bedtime and burning the midnight oil. The problem with that schedule is that there's a marked decrease in the quality of food served by the night shift at Denny's. The carrots, for example, were perfectly cooked... if they'd been taken out of the steamer a year ago. No big deal; we just drown our sorrows in Mountain Dew (thankfully, there's a very nice grocery store here).

Anyway, on to the relevant story. Last night we decided to try something new- a place called Al's Barbecue, in California City. Cali City is a few miles north of Mojave, but even the night driving is safe. There aren't any big animals I know of to run over (except maybe the occasional coyote), so everybody drives 90. Normally I'd be worried about directions, but we have two rental cars from Hertz, and one of them is equipped with Hertz's "Never Lost" system- a typical dashboard GPS navigation unit. We followed its directions to Al's Barbecue, which twenty minutes later dumped us in an abandoned dirt lot in a residential complex, with no evidence of a building ever having been there. Since then we've used our technical know-how to make a few minor improvements to the system:

Thursday, October 18, 2007

Earth, wind, and fire

DISCLAIMER: the opinionated political satire expressed here is in no way affiliated or aligned with the views of Cornell University.

DISCLAIMER: the technical investigations of this team should in no way be perceived as anything but a dedicated and rigorous research effort. Please do not reproduce or otherwise make available any portion of the material found within unless permission is obtained from the author first.

One tiresome flight and an equally tiresome drive later, we've arrived safely in Mojave. It feels good to be back at this crazy place, which can only be described as a harsh clash of intellectual adventurism and solitary desert...ism. In classic cudgc fashion we arrived late- I think I got to bed at about 3am local time. For what it's worth, I do not recommend that strategy as a way to get accustomed to local time. I think the overall effect has been that I am now accustomed to exactly zero of the timezones on the face of this poor planet, though perhaps there's some pocket of Indiana in which I might sleep appropriately.

We touched down in California amidst some dense fog, which was fine enough by me since I was not the one flying the jetBlue A320. The more bizarre and portentious weather arrived shortly after- a heavy wind storm and a minor earthquake. The wind storm was no ordinary kite flying weather that I'd ever seen; in fact, it was only 5 mph and a few buckets of water short of a hurricane. On top of that it lasted the entire ENTIRE day, which means that it was there blowing peoples' glasses across the parking lot in the morning, there spewing sand into our mouths as we fought our way to Denny's, there knocking trucks over as we visited the hardware store, and there pushing us sideways as we piled into the In and Out Burger for dinner.

We set up shop in a portion of an airplane hangar at the Mojave Air (and Space) Port, hunkered down against the fuselage of an Antonov AN-2. That brings us to the present, where I am briefly checking over my code and falling asleep between games of solitaire. I hope things stay that way... not because I particularly like playing solitaire, but because it means stuff is not broken.

Monday, October 15, 2007

Leaving on a jet plane

DISCLAIMER: the opinionated political satire expressed here is in no way affiliated or aligned with the views of Cornell University.
DISCLAIMER: the technical investigations of this team should in no way be perceived as anything but a dedicated and rigorous research effort. Please do not reproduce or otherwise make available any portion of the material found within unless permission is obtained from the author first.

And so for the second time in my life I find myself leaving for the California desert to go work on a car that drives itself. It is a strange circumstance, made even stranger by the fact that I worry more about how I'm going to do laundry (the Mojave laundromat is sketchy) than I do about the car passing me at 30 with nobody at the wheel. Pete commented the other day about a phone call from the company shipping our car:

Driver: "so wait... I'm arriving at the Seneca Army Depot at noon to pick up two robotic cars?"
Pete: "Yep."

So to me at least, the bizarre is normal and vice-versa. I like it that way. In fifty years' time I want to be able to tell this story to my grandkids- about the summers I spent in that weird place called California (which will be weird because it sank into the ocean twenty years prior), how cars weren't always able to drive themselves, how we were some of the first to try to change that, and how that four year adventure was just the beginning. Funny how I tend to think about the future only when it is least certain.

Anyway, as I was dropping my girlfriend off last night she said, "drive safely." I must admit with a wry smile that the first thing that popped into my mind was, "it will."

Wednesday, October 10, 2007

And the warpaint goes on

DISCLAIMER: the opinionated political satire expressed here is in no way affiliated or aligned with the views of Cornell University.
DISCLAIMER: the technical investigations of this team should in no way be perceived as anything but a dedicated and rigorous research effort. Please do not reproduce or otherwise make available any portion of the material found within unless permission is obtained from the author first.

At long last (or short last, depending on who you are), we have come to the end of our insane adventures at the Seneca Army Depot. The car ships tomorrow for the parched lands beyond the sunset, and we ship a few days later. The AI team (all... both of them) sit to my left- one repairing a bug from testing the day before (he never went to bed), the other curled up asleep on the ratty couch in the corner. We've finished our tower of mountain dew containers (which now stands 7 layers high), and the car is cleaned, waxed, and completely decked out in full colors. It's best not to think about how many hours went into that thing; each of us has worked 16 hour days, 7 days a week, for the past... 5 months or so. Don't try to work out what that means in terms of hourly wages- you'll just cry. I'll leave you all with a few photos of the car in its pristine state; hopefully this won't be the last time you see the car in one piece.

These our from one of our traffic runs (though for some reason, I apparently took very few pictures with other cars in them):





These are from one of our endurance runs in the back part of the depot:









And just to remind ourselves that the small stuff sometimes makes all the difference in the world:



Monday, October 08, 2007

The joy of testing

DISCLAIMER: the opinionated political satire expressed here is in no way affiliated or aligned with the views of Cornell University.
DISCLAIMER: the technical investigations of this team should in no way be perceived as anything but a dedicated and rigorous research effort. Please do not reproduce or otherwise make available any portion of the material found within unless permission is obtained from the author first.

Since we've been doing so much field testing lately, I thought I'd leave you with some of the more colorful quotes I've heard during debugging:

Brian: "Frank, I will not be able to handle the 1898 vehicles you've told me are in the opposing lane."

Mike: "We'll use the red Tahoe as a traffic vehicle. It's supposed to rain, but at least we have the sun roof we can close. As for the other windows, well, we're fresh out of luck. Fortunately we won't ruin the interior, though, because the interior is sitting on the floor of the garage."

Brian: "We'll need to add a 'shut up and do it' decorator to that message, so that when something's coming toward us but I tell you the avoidance maneuver is infeasible, you can just tell me to shut up and do it."

Jason: "Oh, well that wasn't a real sensor back then. You might as well have strapped a chicken to the roof of the car and plugged a serial port into it."

Tuesday, October 02, 2007

Testing testing 1 2 3... 4 5 6 7 8...

DISCLAIMER: the opinionated political satire expressed here is in no way affiliated or aligned with the views of Cornell University.
DISCLAIMER: the technical investigations of this team should in no way be perceived as anything but a dedicated and rigorous research effort. Please do not reproduce or otherwise make available any portion of the material found within unless permission is obtained from the author first.

The best part about testing the full system is that you get to see the fruits of the past several years of your life in one nice little package. The worst part about testing the full system is that it makes you wonder what the hell you were thinking when you signed up for this stuff.

Well ok, it's not that bad at all, but I'm a fan of those catchy little witticisms. The fact is that I've been spending a lot of time in the back of the Suburban, wacthing sensor data as we drive the car over endless miles of pavement. I have at least stopped feeling carsick watching the data instead of the road (perhaps we've finally put enough sensors on the car?), but it is tough to run for so long without wanting to stop to make changes. I won't claim things are perfect, or even near perfect- they never will be. For now, I'll be happy if we can take the car out one day and find fewer new bugs than we resolve. For what it's worth, I'd also be happy if there were some decent radio stations in Romulus, NY.

The car has gotten to the point where it drives decently, or at least to the point where those riding in the car are not likely to sue the sensors or planner guys for whiplash (that would be an interesting lawsuit). The difficulty will forever be reconciling the interface between sensors and the planner, and the fact that finding a car in sensor data is like looking for a needle in a stack of needles. It's not that any part of our system has any fundamental flaw, but more the anything-is-possible truth of the real world. Tch, real world.

Brian: "Pose is rejecting all the measurements." Frank: "What, you think you're better than us?"