Pattern Recognition research and game related use?

So I am a graduate student in computer science and my current area of focus has been in pattern recognition, with a slight dabble in neural nets and A.I. For example, just last week I designed from scratch a program of homemade code(no external libraries) that would read my own scanned handwriting through learning my handwriting and identification. Also we did some other recognition, like eye iris categorization, (alcoholic) wine categorization, handwriting from post office, various graphs, etc…

Anyways, although most of it was in matlab(meh), because it has some wonderful easy advanced matrix manipulation and iterative functionality.
I’ve always had the choice to use any language I want and I was considering for my term project to do something in Java and game related. I have a little bit of flexibility in choices for my area that I will focus on. Though it can’t quite be “make a game” It has to have at least a little academic potential weight.

I was just curious if there is any library or functionality in any thing that anyone here might think be worthwhile to have that would be gaming related?(Either one that exists and is meh, or one that doesn’t exist currently)
That I could design/develop both for my research and for the general public use (all open source/free/etc…). I know not that many people fully grasp and understand all the mathematics, statistics, and issues involved with pattern recognition, and modeling the structure, identification, or other learning type uses, etc… However, I could try and make some library with an awesome API that can handle a lot of the things for you without needing to understand/know the complexities (or if you are interested you could study it and learn from it)

Any thoughts or suggestions would be greatly appreciated.

If I can’t find something justifiable game related, I will probably just make some real time facial/object camera tracker.

  • I know some years ago, someone made an ‘adaptive mario game’ that each time you played it, the next level got easier/harder based upon recognizing your play style or other things.

  • I’ve considered maybe modeling something that would simply watch me play some game (lets say 10 times) and then keep playing by itself, in attempts to get a better score, mario/platformer, or some game for example.

  • fyi, making some library that can handle your enemy AI just isn’t realistic, because of too many variable constraints. The majority of the time, having a pseudo-true AI in a game actually isn’t often ‘fun’ because itll either be overly specific to the game, or find some ‘cheap way’ of winning and totally abuse that to no end. It just doesn’t usually end up in “FUN” gameplay. Lots of games claim they have “AI” for their enemies(though I don’t think any have truly learning enemies), they are usually just well programmed behaviors to act specifically to various effects and gameplay. (Even the “Director” from Left4dead, has a lot of fixed inputs/output)(dynamic gameplay != learning computer narrator) (Diablo 2’s Random levels, was actually just randomly selected of 16-32 pre-made maps, most of the things in games aren’t always what they seem) (Fun vs realistic whatever)

I think making something that will attempt to get a better score based after watching you play sounds like an awesome idea.

A stone-paper-scissors bot which aims to predict a human’s next move? (I’m sure it’s been done before, but I don’t think Master’s projects have to advance the state of the art).

I think I remember reading about this, so I think it’s done. And no, I don’t mean the robot hand that wins 100% of time :slight_smile:

I could see game specific in areas other than AI as well, mostly in optimization. I think I read somewhere that some people had managed to create a network protocol which relied on “training” the protocol by supplying information like connection speed and reliability of connections. It then used some mutating algorithm to generate an almost optimal protocol for that specific connection which could improve performance by orders of magnitudes in certain cases. The more precise the input information was, the faster it became, but it would also be more sensitive if the input information was incorrect. You could even give it pretty fuzzy data and it’d work out a good all-around algorithm that was still faster when inside the bounds of the input specifications.

If your AI somehow manages to abuse the gameplay, you can be sure that people will do that as well. It’s a huge sign that your gameplay needs some kind of change. Exceptions obviously include things that are impossible for humans to do.

Ah, Diablo 2 maps. In the Forgotten Tower in act 1, you could find the staircase down instantly in 99% of all cases by simply hugging the left wall. ^^

Perhaps take a look at the Weka library:
http://www.cs.waikato.ac.nz/ml/weka/

Hi,
This idea is not really game related, but could be very useful. I think that with the rise of massive online open courses (moocs), universities and teachers badly need a way of automatically marking students’ short answer text responses to questions.
Currently all questions are multiple choice machine marked or human teacher or peer review marked, which is slow, expensive and/or inaccurate.
Is it possible to make something that can understand text and mark an answer?
Whatever you end up doing, sounds like a great opportunity.
Cheers, keith