Friday, 14 October 2011

'Robot Biologist' Solves Complex Problem from Scratch


First it was chess. Then it was Jeopardy. Now computers are at it again, but this time they are trying to automate the scientific process itself.


An interdisciplinary team of scientists at Vanderbilt University, Cornell University and CFD Research Corporation, Inc., has taken a major step toward this goal by demonstrating that a computer can analyze raw experimental data from a biological system and derive the basic mathematical equations that describe the way the system operates. According to the researchers, it is one of the most complex scientific modeling problems that a computer has solved completely from scratch.
The paper that describes this accomplishment is published in the October issue of the journal Physical Biology and is currently available online.

The work was a collaboration between John P. Wikswo, the Gordon A. Cain University Professor at Vanderbilt, Michael Schmidt and Hod Lipson at the Creative Machines Lab at Cornell University and Jerry Jenkins and Ravishankar Vallabhajosyula at CFDRC in Huntsville, Ala.

The "brains" of the system, which Wikswo has christened the Automated Biology Explorer (ABE), is a unique piece of software called Eureqa developed at Cornell and released in 2009. Schmidt and Lipson originally created Eureqa to design robots without going through the normal trial and error stage that is both slow and expensive. After it succeeded, they realized it could also be applied to solving science problems.

One of Eureqa's initial achievements was identifying the basic laws of motion by analyzing the motion of a double pendulum. What took Sir Isaac Newton years to discover, Eureqa did in a few hours when running on a personal computer.

In 2006, Wikswo heard Lipson lecture about his research. "I had a 'eureka moment' of my own when I realized the system Hod had developed could be used to solve biological problems and even control them," Wikswo said. So he started talking to Lipson immediately after the lecture and they began a collaboration to adapt Eureqa to analyze biological problems.

"Biology is the area where the gap between theory and data is growing the most rapidly," said Lipson. "So it is the area in greatest need of automation."

Software passes test

The biological system that the researchers used to test ABE is glycolysis, the primary process that produces energy in a living cell. Specifically, they focused on the manner in which yeast cells control fluctuations in the chemical compounds produced by the process.

The researchers chose this specific system, called glycolytic oscillations, to perform a virtual test of the software because it is one of the most extensively studied biological control systems. Jenkins and Vallabhajosyula used one of the process' detailed mathematical models to generate a data set corresponding to the measurements a scientist would make under various conditions. To increase the realism of the test, the researchers salted the data with a 10 percent random error. When they fed the data into Eureqa, it derived a series of equations that were nearly identical to the known equations.

"What's really amazing is that it produced these equations a priori," said Vallabhajosyula. "The only thing the software knew in advance was addition, subtraction, multiplication and division."

Beyond Adam

The ability to generate mathematical equations from scratch is what sets ABE apart from Adam, the robot scientist developed by Ross King and his colleagues at the University of Wales at Aberystwyth. Adam runs yeast genetics experiments and made international headlines two years ago by making a novel scientific discovery without direct human input. King fed Adam with a model of yeast metabolism and a database of genes and proteins involved in metabolism in other species. He also linked the computer to a remote-controlled genetics laboratory. This allowed the computer to generate hypotheses, then design and conduct actual experiments to test them.

"It's a classic paper," Wikswo said.
In order to give ABE the ability to run experiments like Adam, Wikswo's group is currently developing "laboratory-on-a-chip" technology that can be controlled by Eureqa. This will allow ABE to design and perform a wide variety of basic biology experiments. Their initial effort is focused on developing a microfluidics device that can test cell metabolism.

"Generally, the way that scientists design experiments is to vary one factor at a time while keeping the other factors constant, but, in many cases, the most effective way to test a biological system may be to tweak a large number of different factors at the same time and see what happens. ABE will let us do that," Wikswo said.

The project was funded by grants from the National Science Foundation, National Institute on Drug Abuse, the Defense Threat Reduction Agency and the National Academies Keck Futures Initiative.


Posted by : Faran Ali

Microsoft XNA Game Programming


Microsoft XNA is a set of tools with a managed runtime environment provided by Microsoft that facilitates video game development and management. XNA attempts to free game developers from writing "repetitive boilerplate code" and to bring different aspects of game production into a single system. The XNA toolset was announced March 24, 2004, at the Game Developers Conference in San Jose, California. A first Community Technology Preview of XNA Build was released on March 14, 2006. XNA Game Studio 2.0 was released in December 2007, followed by XNA Game Studio 3.0 on October 30, 2008. XNA Game Studio 4.0 was released on September 16, 2010 along with the Windows Phone 7 Development Tools.
XNA currently encompasses Microsoft's entire Game Development Sections, including the standard Xbox Development Kit and XNA Game Studio.

The name "XNA" originated out of the project's development name, Xbox New Architecture. Instead of being released under the Xbox name, the Xbox 360 was released (2005), and XNA came to stand for "XNA is Not an Acronym".

XNA Framework

The XNA Framework is based on the native implementation of .NET Compact Framework 2.0 for Xbox 360 development and .NET Framework 2.0 on Windows. It includes an extensive set of class libraries, specific to game development, to promote maximum code reuse across target platforms. The framework runs on a version of the Common Language Runtime that is optimized for gaming to provide a managed execution environment. The runtime is available for Windows XP, Windows Vista, Windows 7, Windows Phone 7 and Xbox 360. Since XNA games are written for the runtime, they can run on any platform that supports the XNA Framework with minimal or no modification. Games that run on the framework can technically be written in any .NET-compliant language, but only C# in XNA Game Studio Express IDE and all versions of Visual Studio 2008 and 2010 (as of XNA 4.0) are officially supported. Support for Visual Basic .NET was added in 2011.

The XNA Framework encapsulates low-level technological details involved in coding a game, making sure that the framework itself takes care of the difference between platforms when games are ported from one compatible platform to another, and thereby allowing game developers to focus more on the content and gaming experience. The XNA Framework integrates with a number of tools, such as the Cross-platform Audio Creation Tool (XACT), to aid in content creation. The XNA Framework provides support for both 2D and 3D game creation and allows use of the Xbox 360 controllers and vibrations. XNA framework games that target the Xbox platform can currently only be distributed by members of the Microsoft XNA Creator's Club which carries a $99/year subscription fee. Desktop applications can be distributed free of charge under Microsoft's current licensing.

XNA Build

XNA Build is a set of game asset pipeline management tools, which help by defining, maintaining, debugging, and optimizing the game asset pipeline of individual game development efforts. A game asset pipeline describes the process by which game content, such as textures and 3D models, are modified to a form suitable for use by the gaming engine. XNA Build helps identify the pipeline dependencies, and also provides API access to enable further processing of the dependency data. The dependency data can be analyzed to help reduce the size of a game by finding content that is not actually used. For example, XNA Build analysis revealed that 40% of the textures that shipped with MechCommander 2 were unused and could have been omitted.




XNA Game Studio

XNA Game Studio is an integrated development environment (IDE) for development of games. Five revisions have been released so far.

XNA Game Studio Express

XNA Game Studio Express, the first release of XNA Game Studio, was intended for students, hobbyist, and independent (and homebrew) game developers. It was available as a free download. Express provides basic "starter kits" for rapid development of specific genres of games, such as platform games, real-time strategy, and first-person shooters. Developers could create Windows games for free with the XNA Framework, but to run their games on the Xbox 360 they will have to pay an annual fee of US$99 (or a four-month fee of US$49) for admission to the Microsoft XNA Creator's Club. The initial release had no way of shipping precompiled binaries to other Xbox 360 players, but this was changed in "XNA Game Studio Express 1.0 Refresh" which made it possible to compile Xbox 360 binaries and share them with other Microsoft XNA Creator's Club members.

The first beta version of XNA Game Studio Express was released for download on August 30, 2006, followed by a second version on November 1, 2006. Microsoft released the final version on December 11, 2006.


On April 24, 2007, Microsoft released an update called XNA Game Studio Express 1.0 Refresh.

XNA Game Studio 2.0

XNA Game Studio 2.0 was released on December 13, 2007. XNA Game Studio 2.0 features the ability to be used with all versions of Visual Studio 2005 (including the free Visual C# 2005 Express Edition), a networking API using Xbox Live on both Windows and Xbox 360 and better device handling.

XNA Game Studio 3.0

XNA Game Studio 3.0 (for Visual Studio 2008 or the free Visual C# 2008 Express Edition) allows production of games targeting the Zune platform and adds Xbox Live community support. A beta of the toolset was released in September 2008. The final release was released on 30 October 2008. XNA Game Studio 3.0 now supports C# 3.0, LINQ and most versions of Visual Studio 2008. There are several more new features of XNA Game Studio 3.0 also, such as a trial Mode added to XNA Game Studio 3.0 that will enable creators to easily add the required trial feature to their games, Xbox LIVE multi-player features like in-game invites, create cross-platform games that work on Windows, Xbox 360 and Zune.

XNA Game Studio 3.1

XNA Game Studio 3.1 was released on June 11, 2009. The API includes support for video playback, a revised audio API, Xbox LIVE Party system and support for games to use the Xbox 360 Avatars.

XNA Game Studio 4

XNA Game Studio 4 was announced and initially released as a "Community Technical Preview" at Game Developers Conference (GDC) on March 9, 2010, and in its final form on September 16, 2010. It adds support for the Windows Phone 7 platform (including 3D hardware acceleration), framework hardware profiles, configurable effects, built-in state objects, graphics device scalars and orientation, cross-platform and multi-touch input, microphone input and buffered audio playback, and Visual Studio 2010 integration.

XNA Framework Content Pipeline

The XNA Framework Content Pipeline is a set of tools that allows Visual Studio and XNA Studio to act "as the key design point around organizing and consuming 3D content".

XDK Extensions

Formerly known as XNA Game Studio Professional, XDK Extensions is an add-on to XNA Game Studio and requires the Microsoft Xbox 360 Development Kit. Both are only available for licensed Xbox developers. The extensions include additional managed APIs for achievements, leaderboards, and other features reserved for licensed game titles. Titles developed using XDK Extensions include winners of Microsoft's Dream-Build-Play competition among others. The most heavily publicized of these was The Dishwasher: Dead Samurai.

License agreement

The Microsoft XNA Framework 2.0 EULA specifically prohibits the distribution of commercial networked games that connect to Xbox Live and/or Games for Windows Live in the absence of a specific agreement signed by both the developer and Microsoft. This means that XNA Game Studio can still be used to develop commercial games and other programs for the Windows platform, although Microsoft's networking support code for Xbox/Windows Live cannot be used. Self-developed network code can still be used inside the developer's XNA project.

Games created using XNA Game Studio may be distributed via Xbox Live Indie Games and Windows Phone 7 marketplace. The software may also be used to create commercial games which target Windows.

XNA Indie Games

Xbox 360 games written in XNA Game Studio can be submitted to the App Hub, for which premium membership is required, this costs US$99/year. All games submitted to the App Hub are subjected to peer review by other creators. If the game passes review then it is listed on Xbox Live Marketplace. Creators can set a price of 80, 240 or 400 points for their game. The creator is paid 70% of the total revenue from their game sales as a baseline. Microsoft originally planned to take an additional percentage of revenue if they provided additional marketing for a game, but this policy was rescinded in March 2009, leaving the flat rate intact regardless of promotion.




Microsoft also distributes a free year premium App Hub subscription for educational establishments through their DreamSpark program and MSDNAA. These accounts allow students to develop games for the Xbox 360, but developers still need a premium Xbox Live account to submit their game to the marketplace.

Alternative implementations

A project called Mono.XNA was formed to port XNA to the open source and cross-platform Mono framework.



From the codebase of Mono.XNA and SilverSprite a new project called MonoGame was formed to port XNA to several mobile devices. As of 2011, support is stable for iOS (using MonoTouch) and limited for Google Android and Mac App Store.

An open source project called Grommet contains a limited port for embedded devices using the .NET Micro Framework