As machine learning and artificial intelligence became more sophisticated, video games proved to be a natural and useful proving ground for AI algorithms and models. Because video games have observable and quantifiable mechanics, objects, and metrics, they make convenient ways for AI developers to test the versatility and reliability of their models. While video games have helped AI engineers develop their models, AI can potentially help video game designers create their own games. Recently, a group of researchers at the University of Alberta designed a set of algorithms that could automate the creation of simple platforming video games.
Matthew Guzdial is an assistant professor and AI researcher at the University of Alberta, and according to Time magazine, Guzdial and his team have been working on an AI algorithm that can automatically create levels in side-scrolling platforming video games. This automated level design could save game designers time and energy, allowing them to focus on more demanding tasks.
Guzdial and his team trained an AI to generate platforming game levels by having the AI train on many hours of platforming game gameplay. Guzdial, including games like the original Super Mario Bros., Kirby’s Adventure, and Mega Man. After the initial training, the AI is tasked with rendering predictions about the rules/mechanics of the game, comparing its assumptions with test footage of the game. After the AI has managed to interpret the rules that a game operates on, the researchers then used a similar training method to construct entirely new levels that the model’s rules are tested in.
Guzdial and his team created a “game graph”, which is a merger of both the model’s beliefs regarding rules and its assumptions about how the levels that use this rules are designed. The game graph combined all the crucial features regarding a game into one representation, and this representation, therefore, it contained all the necessary information for the game to be reproduced from scratch. All of the information contained in the game graph was then used to engineer new levels and games. The contents of the model’s observations are combined in new, unique ways. For example, the AI combined aspects of both Super Mario Bros. and Mega Man to create a new level that drew on the platforming mechanics of both games. When this process is repeated over and over, the end result could be an entirely new game that feels very similar to classic platformers but is nonetheless unique.
According to Guzdial, as quoted by Time, the idea behind the project is to create a tool that game developers can use to start designing their own levels and games without needing to learn how to code. Guzdial pointed to the fact that Super Mario Maker is already taking this concept and running with it.
Guzdial and the other members of the research team are hoping to take the concept even further, potentially creating a tool that could like people to create new levels or games just by specifying a certain “feel” or “look” that they. Once the model receives these specifications it can then go about creating a new game with unique levels and rules. The model would apparently only need two frames of a game in order to do this, as it would extrapolate from the differences between the two frames. The user would be able to give the model feedback as it generated levels, and the model would create new levels based on the provided feedback.
“We’re putting some finishing touches on the interface and then we’re going to run a human subject study to find out if we’re on the right track,” Guzdial said to Time.
Although any consumer-ready version of that application is still a way in the future, Guzdial expressed concerns that the games industry might be slow to adopt the technology due to concerns that it might reduce the need for human game designers. Despite this, Guzdial did think that if anyone was likely to use the tool, the first people to do so would likely be independent game developers, who might use it to create interesting, experimental games.
“I can totally imagine that what we get are some passionate indie [developers] messing around with these technologies and making weird, cool, interesting little experiences,” said Guzdial. “But I don’t think they’re going to impact triple-A game development anytime soon.”
Uber’s Fiber Is A New Distributed AI Model Training Framework
According to VentureBeat, AI researchers at Uber have recently posted a paper to Arxiv outlining a new platform intended to assist in the creation of distributed AI models. The platform is called Fiber, and it can be used to drive both reinforcement learning tasks and population-based learning. Fiber is designed to make large-scale parallel computation more accessible to non-experts, letting them take advantage of the power of distributed AI algorithms and models.
Fiber has recently been made open-source on GitHub, and it’s compatible with Python 3.6 or above, with Kubernetes running on a Linux system and running in a cloud environment. According to the team of researchers, the platform is capable of easily scaling up to hundreds or thousands of individual machines.
The team of researchers from Uber explains that many of the most recent and relevant advances in artificial intelligence have been driven by larger models and more algorithms that are trained using distributed training techniques. However, creating population-based models and reinforcement models remains a difficult task for distributed training schemes, as they frequently have issues with efficiency and flexibility. Fiber makes the distributed system more reliable and flexible by combining cluster management software with dynamic scaling and letting users move their jobs from one machine to a large number of machines seamlessly.
Fiber is made out of three different components: an API, a backend, and a cluster layer. The API layer enables users to create things like queues, managers, and processes. The backend layer of Fiber lets the user create and terminate jobs that are being managed by different clusters, and the cluster layer manages the individual clusters themselves along with their resources, which greatly the number of items that Fiber has to keep tabs on.
Fiber enables jobs to be queued and run remotely on one local machine or many different machines, utilizing the concept of job-backed processes. Fiber also makes use of containers to ensure things like input data and dependent packages are self-contained. The Fiber framework even includes built-in error handling so that if a worker crashes it can be quickly revived. FIber is able to do all of this while interacting with cluster managers, letting Fiber apps run as if they were normal apps running on a given computer cluster.
Experimental results showed that on average Fiber’s response time was a few milliseconds and that it also scaled up better than baseline AI techniques when built with 2,048 processor cores/workers. The length of time required to complete jobs decreased gradually as the set number of workers increased. IPyParallel completed 50 iterations of training in approximately 1400 seconds, while Fiber was able to complete the same 50 iterations of training in approximately 50 seconds with 512 workers available.
The coauthors of the Fiber paper explain that Fiber is able to do achieve multiple goals like dynamically scaling algorithms and using large volumes of computing power:
“[Our work shows] that Fiber achieves many goals, including efficiently leveraging a large amount of heterogeneous computing hardware, dynamically scaling algorithms to improve resource usage efficiency, reducing the engineering burden required to make [reinforcement learning] and population-based algorithms work on computer clusters, and quickly adapting to different computing environments to improve research efficiency. We expect it will further enable progress in solving hard [reinforcement learning] problems with [reinforcement learning] algorithms and population-based methods by making it easier to develop these methods and train them at the scales necessary to truly see them shine.”
Researchers Develop Computer Algorithm Inspired by Mammalian Olfactory System
Researchers from Cornell University have created a computer algorithm inspired by the mammalian olfactory system. Scientists have long sought out explanations of how mammals learn and identify smells. The new algorithm provides insight into the workings of the brain, and applying it to a computer chip allows it to quickly and reliably learn patterns better than current machine learning models.
Thomas Cleland is a professor of psychology and senior author of the study titled “Rapid Learning and Robust Recall in a Neuromorphic Olfactory Circuit,” published in Nature Machine Intelligence on March 16.
“This is a result of over a decade of studying olfactory bulb circuitry in rodents and trying to figure out essentially how it works, with an eye towards things we know animals can do that our machines can’t,” Cleland said.
“We now know enough to make this work. We’ve built this computational model based on this circuitry, guided heavily by things we know about the biological systems’ connectivity and dynamics,” he continued. “Then we say, if this were so, this would work. And the interesting part is that it does work.”
Intel Computer Chip
Cleland was joined by co-author Nabil Imam, a researcher at Intel, and together they applied the algorithm to an Intel computer chip. The chip is called Loihi, and it is neuromorphic, which means it is inspired by the functions of the brain. The chip has digital circuits that mimic the way in which neurons learn and communicate.
The Loihi chip relies on parallel cores that communicate via discrete spikes, and each one of these spikes has an effect that can change depending on local activity. This requires different strategies for algorithm design than what is used in existing computer chips.
Through the use of neuromorphic computer chips, machines could work a thousand times faster than a computer’s central or graphics processing units at identifying patterns and carrying out certain tasks.
The Loihi research chip can also run certain algorithms while using around a thousand times less power than traditional methods. This is well-suited for the algorithm, which can accept input patterns from various different sensors, learn patterns quickly and sequentially, and identify each of the meaningful patterns even with strong sensory interference. The algorithm is capable of successfully identifying odors, and it can do so when the pattern is an astounding 80% different from the pattern originally learned by the computer.
“The pattern of the signal has been substantially destroyed,” Cleland said, “and yet the system is able to recover it.”
The Mammalian Brain
The brain of a mammal is able to identify and remember smells extremely well, and there can be thousands of olfactory receptors and complex neural networks working to analyze the patterns associated with odors. One of the things that mammals can do better than artificial intelligence systems is retain what they’ve learned, even after there is new knowledge. In deep learning approaches, the network must be presented with everything at once, since new information can affect or even destroy what the system previously learned.
“When you learn something, it permanently differentiates neurons,” Cleland said. “When you learn one odor, the interneurons are trained to respond to particular configurations, so you get that segregation at the level of interneurons. So on the machine side, we just enhance that and draw a firm line.”
Cleland spoke about how the team came up with new experimental approaches.
“When you start studying a biological process that becomes more intricate and complex than you can just simply intuit, you have to discipline your mind with a computer model,” he said. “You can’t fuzz your way through it. And that led us to a number of new experimental approaches and ideas that we wouldn’t have come up with just by eyeballing it.”
Human Genome Sequencing and Deep Learning Could Lead to a Coronavirus Vaccine – Opinion
The AI community must collaborate with geneticists, in finding a treatment for those deemed most at risk of coronavirus. A potential treatment could involve removing a person’s cells, editing the DNA and then injecting the cells back in, now hopefully armed with a successful immune response. This is currently being worked on for some other vaccines.
The first step would be sequencing the entire human genome from a sizeable segment of the human population.
Sequencing Human Genomes
Sequencing the first human genome cost $2.7 billion and took nearly 15 years to complete. The current cost of sequencing an entire human has dropped dramatically. As recent as 2015 the cost was $4000, now the cost is less than $1000 per person. This cost could drop a few percentage points more when economies of scale are taken into consideration.
We need to sequence the genome of two different types of patients:
- Infected with Coronavirus; but healthy
- Infected with Coronavirus; but poor immune response
It is impossible to predict which data point will be most valuable, but each sequenced genome would provide a dataset. The more data the more options there are to locate DNA variations which increase a body’s resistance to the disease vector.
Nations are currently losing trillions of dollars to this outbreak, the cost of $1000 a human genome is minor in comparison. A minimum of 1,000 volunteers for both segments of the population would arm researchers with significant volumes of big data. Should the trial increase in size by one order of magnitude, the AI would have even more training data which would increase the odds of success by several orders of magnitude. The more data the better, which is why a target of 10,000 volunteers should be aimed for.
While multiple functionalities of machine learning would be present, deep learning would be used to find patterns in the data. For instance, there might be an observation that certain DNA variables correspond to a high immunity, while others correspond to a high mortality. At a minimum we would learn which segments of the human population are more susceptible and should be quarantined.
To decipher this data an Artificial Neural Network (ANN) would be located on the cloud, and sequenced human genomes from around the world would be uploaded. With time being of the essence, parallel computing will reduce the time required for the ANN to work its magic.
We could even take it one step further and use the output data sorted by the ANN,and feed it into a separate system called a Recurrent Neural Network (RNN). The RNN uses reinforcement learning to identify which gene selected by the initial ANN is most successful in a simulated environment. The reinforcement learning agent would gamify the entire process of creating a simulated setting, to test which DNA changes are more effective.
A simulated environment is like a virtual game environment, something many AI companies are well positioned to take advantage of based on their previous success in designing AI algorithms to win at esports. This includes companies such DeepMind and OpenAI.
These companies can use their underlying architecture optimized at mastering video games, to create a stimulated environment, test gene edits, and learn which edits lead to specific desired changes.
Once a gene is identified, another technology is used to make the edits.
Recently, the first ever study using CRISPR to edit DNA inside the human body was approved. This was to treat a rare type of genetic disorder that effects one of every 100,000 newborns. The condition can be caused by mutations in as many as 14 genes that play a role in the growth and operation of the retina. In this case, CRISPR sets out to carefully target DNA and to cause slight temporary damage to the DNA strand, causing the cell to repair itself. It is this restorative healing process which has the potential to restore eyesight.
While we are still waiting for results on if this treatment will work, the precedent of having CRISPR approved for trials in the human body is transformational. Potential disorders which can be treated include improving a body’s immune response to specific disease vectors.
Potentially, we can manipulate the body’s natural genetic resistance to a specific disease. The diseases that could potentially be targeted are diverse, but the community should be focusing on the treatment of the new global epidemic coronavirus. A threat that if unchecked could lead to a death sentence to a large percentage of our population.
While there are many potential options to achieving success, it will require that geneticists, epidemiologists, and machine learning specialists unify. A potential treatment option may be as described above, or may be revealed to be unimaginably different, the opportunity lies in the genome sequencing of a large segment of the population.
Deep learning is the best analysis tool that humans have ever created; we need to at a minimum attempt to use it to create a vaccine.
When we take into consideration what is currently at risk with this current epidemic, these three scientific communities need to come together to work on a cure.