Software Designers~The People Behind the Code~(英語)

#12Nathan Schumaker, Research Ecologist, U.S. Environmental Protection Agency

For the past few years, research ecologist Nathan Schumaker has been working on what he calls a ⁠life history simulator,⁠⁠ a digital model that predicts how animal populations will respond to human activity. Schumaker works for the United States Environmental Protection Agency, a massive Washington, D.C. organization with satellite laboratories all over the country. Schumaker works at one of them?the National Health and Environmental Effects Research Laboratory, a facility with a long name and a beautiful location: Corvallis, Oregon.

Not that Schumaker has had much time outdoors. Building a state-of-the-art digital simulation requires a serious commitment, and, HexSim, as the digital model is called, has required much care and feeding. HexSim tries to determine how land animals will react to changes in their world: climate changes, invasive plants, hunting, new roads: the list of potential ⁠ecological drivers⁠⁠ seems endless. The effects of just one driver can be hard to determine. Considered collectively, the calculation requires a sophisticated piece of software. HexSim’s development has taken Schumaker far longer than the typical ecological research project, and he advises students to think twice before following in his career footsteps.

Schumaker grew up in the Santa Cruz mountains, a place of rain and redwoods south of San Francisco. He spent a lot of time hiking the hills, bicycling the coastal roads, and swimming in the cold Northern California ocean. He went to college nearby, at the University of California, Santa Cruz, earning undergraduate degrees in physics and mathematics before deciding he wanted a career with a more immediate connection to the world. After poring over university catalogues to get of a sense of the possibilities, he began studying applied mathematics at the University of Washington. The turning point came while studying under Peter Kareiva, who is now the chief scientist at the Nature Conservancy. ⁠Dr. Kareiva was one of the most rigorous scientists I encountered in graduate school, which he combined with a strong environmental ethic,⁠⁠ Schumaker recalls. ⁠He was able to merge the rigor of the discipline with a personal commitment?and he knew how to get things done.”

With HexSim nearing completion, Schumaker can now make the same claim.

You are a self-taught programmer. How did you begin?

During my undergraduate years at UC Santa Cruz, I worked in an old UNIX environment, with rooms full of VAX computers and dumb terminals distributed all over the campus. My undergraduate thesis work was inspired by researchers studying chaos theory at UCSC, and the first simulation model I ever saw was developed on an ⁠analog computer⁠⁠ ? a device that used electrical circuits to simulate differential equations, and displayed its results on an oscilloscope. I also worked with the physics group helping to build a particle detector for use at the Stanford Linear Accelerator Center.

But I didn’t learn to program a computer until graduate school, and I never actually took any formal courses on the subject. I bought two books on the C language, read them cover to cover, and just dove in. My first attempt at developing my own digital simulation model was for a study on salmon migration in the Columbia River system. That project came remarkably close to what I’ve been doing ever since.

Do you still use C?

Exclusively. The people who work for me are really the better programmers, and they used C++ on the big model engine and C# for the graphical user interface.

What role does simulation play in environmental studies?

It’s ideal for forecasting. We have no better tool for trying to anticipate how today’s decisions will impact the future. Simulation is used in many fields, and it’s of immense importance to the EPA and a big part of academic research in environmental science. My focus is on trying to get a better sense of how wildlife populations will change based on the things we humans do. There are many drivers, and the problem can get quite complicated. My work considers climate change, urban growth, landscape change such as deforestation, as well as the threat of invasive species and what happens if you build new roads.

Can you do what-if scenarios?

Absolutely. And those scenarios help us determine how different management decisions would affect future environmental quality. For example, we are asking how urban growth, forestry practices and regulation, laws, and human behavior will impact the Willamette Valley here in Northwest Oregon over the next 50 years. People involved in this project are looking at water quality, carbon sequestration, riparian habitat along the rivers and a variety of other things. There aren’t too many good tools that can take into account all of the interactions and ecological drivers that can affect wildlife dynamics.

When people talk about global warming, we think of polar bears stranded on icebergs.

Yes, but the potential effects are everywhere. Climate change will cause plant distributions to change?some plants that live in southern latitudes will start to move northward. That in turn causes habitat shifts for different wildlife populations. Some animals are generalists: they eat all kinds of things. But others are specialists, and we don’t know how well they will adapt to these vegetative changes. At the same time, climate-induced changes will create opportunities for invasive populations to come in. We’ve seen that here in the Pacific Northwest, where the Barred Owl from the eastern United States is taking over habitats once occupied by endangered Spotted Owls. I’m working with the Forest Service on a spotted owl/barred owl model right now that takes all of these things into account.

How good is a model at predicting all this?

Models like the ones I’m building are better at some things than others. They are not typically great at predicting exact population sizes over time. If you want to know if there will be 100 or 120 wolves living in a certain patch of forest, a model isn’t enough. You also need empiricists?people who are out in the field. But if you want to know the relative impact of a pesticide versus adding traffic to a road, a model can be an excellent tool. Models are good at ranking the importance of different environmental stressors and for helping you understand the consequences of gaps in data. That’s important because we are always making management decisions based on imperfect knowledge. And of course, if you are working with threatened or endangered populations, data modeling is the only ethically responsible approach.

Are you constantly refining your models?

Every time we work with an outside researcher, we wind up refining the model to make it more broadly applicable. For example, I’ve been working closely for several years with a woman who is getting a PhD in Canada studying an endangered sub-population of kangaroo rats. These animals experience a complicated disturbance regime and live in a landscape that has been dramatically altered by humans. The challenge has been to extrapolate from the data what it would take to preserve these populations and figure out how much additional human interference they can tolerate. We used the computer models to address these questions, and had the opportunity to work closely with the world experts on this population. The same is true with other studies we’ve collaborated on, such as an assessment of hunting on wolf populations. Through all this collaboration, we’ve arrived at a very general tool that will be applicable to a large audience of researchers.

Where is the science of environmental simulation going?

One of the biggest advances is that the tools are starting to capture more of the complexity we know is present in ecological systems. In the past, we’ve had to accept many unrealistic simplifications because the suite of available models simply could not do any better. That has affected many areas of environmental study: the description of habitats, of how organisms react within a habitat, and of other factors that drive populations. In the past, we’ve had to simplify in order to make the problems easier to solve. But we know that in many cases that degree of abstraction is not realistic, and it has sometimes led to some pretty silly conclusions.

Is that what sets HexSim apart?

My work is a good example of that?of getting past some of these over-simplified assumptions. Some older models can only look at a single driver at a time. HexSim is among a new generation of models that makes it possible for environmental scientists to develop simulations that more precisely reflect how their systems actually work. We’re now exploring the ramifications of adding ecological sophistication that we’ve long appreciated, but never had the ability to incorporate into modern forecasting tools.

Is faster hardware helping?

It has helped tremendously. The model that I’m developing wouldn’t have run on my big Sun workstation of 15 years ago, but now it runs on a laptop quite efficiently. The other big difference is the software tools that have made developers so much more productive. The HexSim project has a massive amount of code, yet just two people are managing the whole development effort, because they have excellent tools for writing code and maintaining code. If a bug comes up, the software zeroes into the problem immediately. Our main development tool is simply Microsoft’s Visual Studio.

New technology is also helping us connect the science to decision makers. With faster computers and modern user interfaces, people like me can now build computer models that non-scientists can actually use. The older models used huge unwieldy tables as inputs, producing cryptic outputs that required a lot of post-processing. My work is an example of how that has changed. The output might be a map that shows you how the population is doing in different regions. That map represents a lot of biology, ecology, and data analysis?but it is very understandable. And it’s easy for people to generate. You go to a reports sub-menu, select a report, and you get a map.

Is seems a paradox: you work in environmental science but you spend most of your time in a computer lab. How do you mesh those two worlds?

I tell students that I don’t necessarily recommend building large, user-friendly computer models because you can end up throwing too much of your life into the software development. Ideally, even modeling researchers should spend considerable time in the field to be closer to the systems they are simulating. But I also tell them that if they ignore my advice, they’ll be rewarded with the opportunity to work with wonderfully talented and energetic graduate students who will apply the modeling tools to a range of fascinating problems.

Looking back, I think that’s a reasonable tradeoff, but I’m looking forward to spending more time using the tools and less time in development. I plan to visit some of the people I’ve been working with for years, but have never met. And I’ll focus on some smaller modeling projects that don’t take as long to complete. I’m looking to strike a better balance. But I’m also happy to have done this work?to have developed one big tool that people will find useful for solving so many problems.