HUBzero Paving the Way for the Third Pillar of Science
What if researchers could access and share scientific simulation and modeling tools as easily as YouTube videos with the power of the cloud to drive it all? That’s the underlying premise for the HUBzero Platform for Scientific Collaboration, a cyberinfrastructure developed at Purdue University.
HUBzero was created to support nanoHUB.org, an online community for the Network for Computational Nanotechnology (NCN), which the U.S .National Science Foundation has funded since 2002 to connect the theorists who develop simulation tools with the experimentalists and educators who might use them.
Since 2007, HUBzero’s use has expanded to support more than 30 hubs — and growing — in fields ranging from microelectromechanical systems and volcanology to translating lab discoveries into new medical treatments and the development of assistive technologies for people with disabilities.
HUBzero is now supported by a consortium including Purdue, Indiana, Clemson and Wisconsin. Researchers at Rice, the State University of New York system, the University of Connecticut and Notre Dame use hubs. Purdue offers a hub-building and -hosting service and the consortium also supports an open source release, allowing people to build and host their own. HUBbub2010, the first of planned annual HUBzero conferences, drew more than 100 people from 33 institutions as far away as Korea, South Africa and Quebec, along with U.S. universities nationwide.
Although they serve different communities, the hubs all support collaborative development and dissemination of computational models running in an infrastructure that leverages cloud computing resources and makes it easier to take advantage of them. Meanwhile, built-in social networking features akin to Facebook create communities of researchers, educators and practitioners in almost any field or subject matter and facilitate communication and collaboration, distribution of research results, training and education.
“Contributors can structure their material and upload it without an inordinate amount of handholding; that’s really a key because you want people to contribute,” says Purdue chemical engineering Professor Gintaras Reklaitis. He’s the principal investigator for pharmaHUB.org, a National Science Foundation-supported Virtual Engineering Organization for advancing the science and engineering of pharmaceutical product development and manufacturing.
One could cobble some of this functionality together with commercial Web software, but HUBzero integrates everything in a single package. Add the research tool-enabling features and research-oriented functions like tracking the use of tools (useful for quantifying outreach) and citation tracking and you have something quite different — and powerful.
HUBzero can be a prime tool for satisfying cyberinfrastructure requirements, such as data management and access, of granting agencies like the NSF. HUBzero’s emphasis on interdisciplinary collaboration only makes it more attractive in funding proposals. A hub is central to the Purdue-based Network for Earthquake Engineering Simulation (NEES), a $105 Million NSF program announced in 2009, the largest single award in Purdue history. Purdue’s PRISM Center for micro-electro-mechanical systems and C3Bio biofuels research center, both funded by the U.S. Department of Energy, are some other recent major award winners employing hubs.
Such an infrastructure can have an impact on scientific discovery, as nanoHUB.org clearly shows.
As of December 2010, NCN identified 719 citations in the scientific literature that referenced nanoHUB.org. In addition, user registration information indicates that more than 480 classes at more than 150 institutions have utilized nanoHUB. Because the site is completely open and notification of classroom usage is voluntary, the actual classroom usage undoubtedly exceeds these numbers. There are nanoHUB.org users in the top 50 U.S. universities (per the listing by U.S. News and World Report) and in 18 percent of the 7,073 U.S. institutions carrying the .edu extension in their domain name. “Nano” is a tiny area in science and technology, but nanoHUB is big in many institutions.
The nanoHUB.org community Web site now has more than 740 contributors and 195 interactive simulation tools. In 2010 more than 9,800 users ran 372,000 simulations. In addition to online simulations, the site offers 52 courses on various nano topics as well as 2,300 seminars and other resources, which have propelled the annual user numbers to more than 170,000 people in 172 countries.
Likewise, the cancer care engineering hub cceHUB.org, one of the early hubs following nanoHUB, has proven to be the linchpin in building an online data tracking, access and statistical modeling community aimed at advancing cancer prevention and care.
“We were looking for a solution for sample tracking and data storage that would not cost $5 million and it was a true logistical challenge needing a comprehensive cyberinfrastructure support system,” says Julie Nagel, managing director of the Oncological Sciences Center in Purdue’s Discovery Park. “The hub is the core of the CCE project and has brought the project forward so much faster than we could have if we had started from scratch.”
The success of nanHUB.org is what attracted the attention of Noha Gaber, who was seeking a good way to facilitate collaboration in the environmental modeling field when she came across the thriving international resource for nanotechnology research and education.
HUBzero, the technology powering nanoHUB, could obviously be used to build a Web-based repository of models and related documentation for projecting the spread and impact of pollutants. It also had built-in features, such as wiki space, enabling environmental researchers to share ideas and information. But the ability to make the models operable online, right in a Web browser window, and allow researchers to collaborate virtually in developing and using models was the deal closer.
“It’s not just providing a library of models, but providing direct access to these tools,” says Gaber, executive director of the U.S. Environmental Protection Agency’s Council for Regulatory Environmental Modeling. She’s a driving force behind the new iemHUB.org for integrated environmental modeling.
Under the hood, HUBzero is a software stack developed by Purdue (and being refined continuously by the consortium and hub users) and designed to work with open source software supported by active developer communities. This includes Debian GNU/Linux, Apache HTTP Server, LDAP, MySQL, PHP, Joomla and OpenVZ.
HUBzero’s middleware hosts the live simulation tool sessions and makes it easy to connect the tools to supercomputing clusters and cloud computing infrastructure to solve large computational problems. HUBzero’s Rappture tool kit helps turn research codes written in C/C++, Fortran, Java, MATLAB, and other languages into graphical, Web-enabled applications.
On the surface, the simulation tools look like simple Java applets embedded within the browser window, but they’re actually running on cluster or cloud hosts and projected to the user’s browser using virtual network computing (VNC). Each tool runs in a restricted lightweight virtual environment implemented using OpenVZ, which carefully controls access to file systems, networking, and other server processes. A hub can direct jobs to national resources such as the TeraGrid, Open Science Grid and Purdue’s DiaGrid as well as other cloud-style systems. This delivers substantial computing power to thousands of end users without requiring, for example, that they log into a head node or fuss with proxy certificates.
The tools on each hub come not from the core development team but from hundreds of other researchers scattered throughout the world. HUBzero supports the workflow for all of these developers and has a content management system for tool publication. Developers receive access to a special HUBzero “workspace,” which is a Linux desktop running in a secure execution environment and accessed via a Web browser (like any other hub tool). There, they create and test their tools in the same execution environment as the published tools, with access to the same visualization cluster and cloud resources for testing. HUBzero can scale to support hundreds of independent tool development teams, each publishing, modifying, and republishing their tool dozens of times per year.
If a tool already has a GUI that runs under Linux, it can be deployed as-is in a matter of hours. If not, tool developers can use HUBzero’s Rappture toolkit to create a GUI with little effort. Rappture reads an XML description of the tool’s inputs and outputs and then automatically generates a GUI. The Rappture library supports approximately two dozen objects — including numbers, Boolean values, curves, meshes, scalar/vector fields, and molecules — which can be used to represent each tool’s inputs and outputs. The input and output values are accessed within a variety of programming languages via an Application Programming Interface (API). Rappture supports APIs for C/C++, Fortran, Java, MATLAB, Python, Perl, Ruby, and Tcl, so it can accommodate various modeling codes. The results from each run are loaded back into the GUI and displayed in a specialized viewer created for each output type. Viewers for molecules, scalar and vector fields, and other complex types can be automatically connected to a rendering farm for hardware-accelerated 3-D data views.
HUBzero sites also provide ways for colleagues to work together. For example, because of the unique way the HUBzero middleware hosts tool sessions, a single session can be shared among any number of people. A group of people can look at the same session at the same time and discuss ideas over the phone or instant messaging. If some of the people aren’t online or available, they can access the session later from their My Hub page and follow up at their convenience. Some commercial collaboration tools, such as Adobe Presenter, also work within HUBzero (hub builders are required to license these).
As people are using the tools, questions arise and sometimes things go wrong. HUBzero supports many ways for users to find help and help one another and includes a built-in trouble report system. Users also can post questions in a community forum modeled after Amazon.com’s Askville or Yahoo! Answers. In practice, many tickets aren’t really problems but are actually requests for new features. HUBzero supports a wish list capability for collecting, prioritizing and acting on such requests. Users can post an idea to the wish list associated with each tool or to the general list associated with the hub itself.
HUBzero’s unique blend of simulation power and social networking seems to resonate across engineering and science communities. As hub use continues to grow, a goal is to develop new capabilities to connect related content so that tools published on one hub can be easily found on all others. Another goal is to improve tool interconnection, so that one tool’s output can be used as input to another, letting developers solve larger problems by connecting a series of models from independent authors.
Michael McLennan is the senior research scientist and hub technology architect at Purdue. Greg Kline is the science and technology writer for Information Technology at Purdue (ITaP).