Yes, Cameron's work was one of our sources of inspiration. The Ludi system that produced Yavalath is clearly a milestone in research on automatic game design. Another source of inspiration was my own work on automatic game design for simple PacMan-like games, which was carried out at the same time as Cameron's work and is described in this paper: http://julian.togelius.com/Togelius2008An.pdf
In general, this line of research is still in its infancy, as we are trying to figure out new ways of evaluating game quality and representing various aspects of games.
Similar evolutionary techniques have been used to generate a number of different types of game content, including Starcraft maps, Super Mario levels, rocks, dungeons, weapons... Here's an overview: http://julian.togelius.com/Togelius2011Searchbased.pdf
It's not "blind" search like Prolog, or even depth-first search. It's objective driven search using artificial evolution.
Actually, almost all successful AI uses search in a prominent role.
The aim of the competition is not merely to create random levels, but to generate levels that are tailored to particular players' playing styles and skills. The level generator gets as inputs how well a player performed on a test level and various metrics detailing e.g. how much time the player spent jumping and running and how many fireballs were fired. The level will then be judged by the player who played the test level. See more about the rules at:
http://www.marioai.org/LevelGeneration/Interface
Also, please note that those who submit a level generator can also submit a paper about it to the CIG conference.
http://game.itu.dk/cig2010/?page_id=483
Well, there is nothing in the article (or in our research program as a whole) that says that playing styles are static. What's (more or less) static are models of player style/player preferences. Once we have the model, we can re-categorize you every time you play. This way we can do adaptive difficulty, amongst many other things.
Can you point me to the paper? As far as I'm aware, he did a taxonomy based on qualitative observations of the game; this is a quantitative study, with the categories found purely by machine learning and a large dataset.
Re:Shard of glass in my delicious pie! *gruff*
on
Mario AI Competition
·
· Score: 3, Informative
Personally, I love Java, but I recognize that not everybody does. As another poster has already commented below, any language is permitted as long it can somehow interface to the game code. To begin with, there are several languages other than Java that run on the JVM (Scala, for example) and these can interface directly to the code. You can also interface via the provided TCP interface; we've included a Python example. Or via JNI (Java Native Interface) for c programs.
The CIG deadline is September 3, which is almost a month away (you don't need to submit to the first phase). Plus, if the competition is a success, it will run next year as well.
While I admit the documentation is a bit on the short side, it should be perfectly enough to get started. All you need to do is look at the Agent interface, and there you have the format of the data the game is giving to you.
Yeah, please enter! You can set the level difficulty from 0 to 10, and choose whether to have enemies in or not (with the world paused/unpaused option), so basically you can evaluate your solutions first on a paused level with difficulty 0 (few holes and few obstacles) and then incrementally increase the difficulty.
Re:Thanks for the advanced notification!
on
Mario AI Competition
·
· Score: 3, Informative
We did some advertising for this within the academic research community in spring, but for various reasons we were a bit late with reaching out beyond academia. Definitely an oversight on our part. Still, the deadline for the CIG phase (you don't have to submit to the first phase) is almost a month away, and if the competition is a success this year we'll run it next year as well.
Re:The prize seems kind of paltry
on
Mario AI Competition
·
· Score: 3, Informative
In previous competitions on simulated car racing AI we've had submission from Imperial College, National University of Singapore, Politecnico di Milano, University of Birmingham and other internationally leading universities. So a submission from MIT would not surprise me the least.
Re:The prize seems kind of paltry
on
Mario AI Competition
·
· Score: 3, Informative
Actually, this is not true. The competition is mainly aimed at academic researchers, who work with these techniques anyway, and for whom 500 dollars (into your own pocket, not your research fund) is not a completely insignificant amount. But of course, the main motivation for researchers to take part is of course the recognition.
And of course others than academics are very welcome to take part as well! We're very much looking to broaden the participation.
Re:You can't win if you don't play
on
Linked In Or Out?
·
· Score: 2, Informative
I respectfully disagree. As an academic, I use Facebook as my main professional networking tool. This is for the simple reason that people actually check their FB accounts on a daily basis, whereas nobody ever logs in to Linkedin except to accept or decline a new connection request.
Hey, really cool, I didn't know about this! True, the games weren't any fun to play, but it's a nice experiment.
One major difference is of course that the evolution shmup is an example of interactive evolution: the human is used as a fitness function. Instead, we use another evolutionary algorithm as fitness function.
You're of course right that it would be very close to impossible to come up with all the references etc. in a game such as nethack. For this, we need humans!
However, such a thing as finding sensible values for how much money you get for selling something or how much damage you can do by hitting someone is definitely something you can optimize. Automatic game design, using evolutionary algorithms, is _not_ the same as arbitrarily making rules, as we are actually testing the rules with another learning process!
There are many proposed methods of measuring emergence - maybe none of them is very general, but I think there's a few that might be useful for specific domains such as games. I need to look into this. You're right, it's not trivial!
Yes, I'm the one that did the experiments and wrote the paper.
No, we didn't use humans to test the games. We used evolutionary algorithms.
In fact, one of our main inventions is the idea of using a learning algorithm to grade the game, based on the idea that learning equals or creates fun. There are many other "static" functions for measuring fun proposed already, measuring things such as balance or challenge, but we are the first to use learnability as a predictor of fun.
Yes, in practice we're envisioning this to be used mostly for improving on given game templates, but one has to try to do the near-impossible as well, doesn't one?
Alright, I'll try that some day. You know, it's not always that easy to get research funding through trying to be original and relevant, so maybe your method is better.
You are right, we are oversimplifying. But we need to start somewhere, don't we?
I think that those things you measure (humour, likes and dislikes, genre change) will be very hard to measure/create automatically, but not necessarily impossible.
Interesting post.
Actually, what we're trying to capture is the "real" sentiment of progression, where you get better at playing the game. But it seems perfectly doable to capture the "level of emergence" as well, via some entropy measure or somesuch. I'll think more about this...
This is a good point. In fact, there is research on identifying different player "stereotypes", and having ways of automatically identifying what stereotype a player belongs to could enable us to automatically create games for particular players. Or just adapt a given game so it suits some player better.
Or try his newer book, "Pattern Recognition and Machine Learning". ( http://research.microsoft.com/~cmbishop/PRML/index.htm ) If you have a background in physics, it's an excellent book. Or so they say, I find it too mathematical myself.
But Russell and Norvig is also an excellent choice.
Yes, Cameron's work was one of our sources of inspiration. The Ludi system that produced Yavalath is clearly a milestone in research on automatic game design. Another source of inspiration was my own work on automatic game design for simple PacMan-like games, which was carried out at the same time as Cameron's work and is described in this paper:
http://julian.togelius.com/Togelius2008An.pdf
In general, this line of research is still in its infancy, as we are trying to figure out new ways of evaluating game quality and representing various aspects of games.
The original papers describing the work can be found here:
http://julian.togelius.com/Font2013Towards.pdf
and
http://julian.togelius.com/Font2013A.pdf
Similar evolutionary techniques have been used to generate a number of different types of game content, including Starcraft maps, Super Mario levels, rocks, dungeons, weapons... Here's an overview:
http://julian.togelius.com/Togelius2011Searchbased.pdf
It's not "blind" search like Prolog, or even depth-first search. It's objective driven search using artificial evolution. Actually, almost all successful AI uses search in a prominent role.
The aim of the competition is not merely to create random levels, but to generate levels that are tailored to particular players' playing styles and skills. The level generator gets as inputs how well a player performed on a test level and various metrics detailing e.g. how much time the player spent jumping and running and how many fireballs were fired. The level will then be judged by the player who played the test level. See more about the rules at: http://www.marioai.org/LevelGeneration/Interface Also, please note that those who submit a level generator can also submit a paper about it to the CIG conference. http://game.itu.dk/cig2010/?page_id=483
Well, there is nothing in the article (or in our research program as a whole) that says that playing styles are static. What's (more or less) static are models of player style/player preferences. Once we have the model, we can re-categorize you every time you play. This way we can do adaptive difficulty, amongst many other things.
The categories did not exist prior to the data; they were found by unsupervised learning algorithms in the data.
Can you point me to the paper? As far as I'm aware, he did a taxonomy based on qualitative observations of the game; this is a quantitative study, with the categories found purely by machine learning and a large dataset.
Personally, I love Java, but I recognize that not everybody does. As another poster has already commented below, any language is permitted as long it can somehow interface to the game code. To begin with, there are several languages other than Java that run on the JVM (Scala, for example) and these can interface directly to the code. You can also interface via the provided TCP interface; we've included a Python example. Or via JNI (Java Native Interface) for c programs.
The CIG deadline is September 3, which is almost a month away (you don't need to submit to the first phase). Plus, if the competition is a success, it will run next year as well.
While I admit the documentation is a bit on the short side, it should be perfectly enough to get started. All you need to do is look at the Agent interface, and there you have the format of the data the game is giving to you.
Yeah, please enter! You can set the level difficulty from 0 to 10, and choose whether to have enemies in or not (with the world paused/unpaused option), so basically you can evaluate your solutions first on a paused level with difficulty 0 (few holes and few obstacles) and then incrementally increase the difficulty.
We did some advertising for this within the academic research community in spring, but for various reasons we were a bit late with reaching out beyond academia. Definitely an oversight on our part. Still, the deadline for the CIG phase (you don't have to submit to the first phase) is almost a month away, and if the competition is a success this year we'll run it next year as well.
In previous competitions on simulated car racing AI we've had submission from Imperial College, National University of Singapore, Politecnico di Milano, University of Birmingham and other internationally leading universities. So a submission from MIT would not surprise me the least.
Actually, this is not true. The competition is mainly aimed at academic researchers, who work with these techniques anyway, and for whom 500 dollars (into your own pocket, not your research fund) is not a completely insignificant amount. But of course, the main motivation for researchers to take part is of course the recognition. And of course others than academics are very welcome to take part as well! We're very much looking to broaden the participation.
I respectfully disagree. As an academic, I use Facebook as my main professional networking tool. This is for the simple reason that people actually check their FB accounts on a daily basis, whereas nobody ever logs in to Linkedin except to accept or decline a new connection request.
Hey, really cool, I didn't know about this! True, the games weren't any fun to play, but it's a nice experiment.
One major difference is of course that the evolution shmup is an example of interactive evolution: the human is used as a fitness function. Instead, we use another evolutionary algorithm as fitness function.
You're of course right that it would be very close to impossible to come up with all the references etc. in a game such as nethack. For this, we need humans!
However, such a thing as finding sensible values for how much money you get for selling something or how much damage you can do by hitting someone is definitely something you can optimize. Automatic game design, using evolutionary algorithms, is _not_ the same as arbitrarily making rules, as we are actually testing the rules with another learning process!
There are many proposed methods of measuring emergence - maybe none of them is very general, but I think there's a few that might be useful for specific domains such as games. I need to look into this. You're right, it's not trivial!
Yes, I'm the one that did the experiments and wrote the paper.
No, we didn't use humans to test the games. We used evolutionary algorithms.
In fact, one of our main inventions is the idea of using a learning algorithm to grade the game, based on the idea that learning equals or creates fun. There are many other "static" functions for measuring fun proposed already, measuring things such as balance or challenge, but we are the first to use learnability as a predictor of fun.
Nethack is on the list. Seriously, I think it's one of the things that's actually plausible. At least until I'm disproven!
Yes, in practice we're envisioning this to be used mostly for improving on given game templates, but one has to try to do the near-impossible as well, doesn't one?
Alright, I'll try that some day. You know, it's not always that easy to get research funding through trying to be original and relevant, so maybe your method is better.
You are right, we are oversimplifying. But we need to start somewhere, don't we? I think that those things you measure (humour, likes and dislikes, genre change) will be very hard to measure/create automatically, but not necessarily impossible.
Interesting post. Actually, what we're trying to capture is the "real" sentiment of progression, where you get better at playing the game. But it seems perfectly doable to capture the "level of emergence" as well, via some entropy measure or somesuch. I'll think more about this...
This is a good point. In fact, there is research on identifying different player "stereotypes", and having ways of automatically identifying what stereotype a player belongs to could enable us to automatically create games for particular players. Or just adapt a given game so it suits some player better.
Or try his newer book, "Pattern Recognition and Machine Learning". ( http://research.microsoft.com/~cmbishop/PRML/index.htm ) If you have a background in physics, it's an excellent book. Or so they say, I find it too mathematical myself. But Russell and Norvig is also an excellent choice.