Wednesday, 17 November 2010

Worksheet 2

Honours Project Worksheet — #2


My research question will be "Can a no-limit Texas hold'em AI learn from other players and change strategy accordingly?"or something to that effect.

The focus of the project will be to build an AI that can use betting strategies to out smart and out play opponents. When the final program has been built, it will, at first, play against other AI's (and if time allows, have the AI different "personalities") and then I wish to make it be able to play against human players.

Possible expansions:

Have the AI predict an opponents hole cards
Teach the player what it has done wrong
(I doubt I will have time to make both of these possible, but it would be possible to do for future expansions outside the honours project)

Final Idea & Work sheet 1

Honours Project Worksheet – #1

  1. State the topic of interest that you may wish to take forward into a project.
  2. Indicate the issues surrounding this topic that you may wish investigate.

1. I wish to make an AI the can not only play Texas hold'em poker but adapt to how the opponent plays, using various betting strategies and advanced game theory.

The goal of this would be to build a program so that it could beat a good player and a bad player, and (most importantly) win the most money out of them. It should see how the opponent plays (ie. Do they bet a lot? Do they play a lot instead of folding?), and use this to their advantage. For example, if the enemy is a "maniac" (Plays a lot of hands and constantly bets, raises and re-raises), then the AI should start playing only the top hands and only bet/raise when it is totally sure that it has the best hand.

2. The main problem I have at the moment is that I am not sure what to use as a framework. I don't want to spend a lot of time building just the set-up (ie. the dealing of card, the graphics etc), as this will take away from time I have to make the AI as good as possible.

The maths of working out good betting strategies is in nearly every single poker book and since I am an avid player myself, I have personal experience on which strategies work and why.

I also wish (If time allows), to have the AI "guess" the opponents hole cards, like what a professional would do. In reality, pro's use the information that has been given by the previous betting on each different betting level and puts them on a range of possible hands and the more bets are made the more this range can be shortened. It also would take into account the type of play the enemy is, and use this to determine the most likely cards they have.

As a side note, I do not wish to make the computer cheat in any way, shape or form. If everything goes well, it should only play with the hand it has been given and the bets.

Monday, 4 October 2010

Worksheet 2

Questions for Worksheet 2:


1. Formulate a research question for your project.
2. When developing a research question you must produce a question that can be answered by performing literature research, practical experimentation and critical analysis. The question should also focus the activities of your project.
What is the focus of your project?
What information do you need to find out about?
What Experimental work do you need to perform?
3. How will the information that you obtain in 2 allow you to answer the research question

1. My research question would be something to the effect of "How would AI in a driving game use slipstreaming to it's best advantage and how can current techniques used be improved?". Something along the lines of that anyway.

2.The focus of my project would be to research and build a more challanging racing AI. By looking into different techinques used and seeing if any of them can be improved upon. I will need to find the current best way, according to the industry, of using slipstreaming and looking for potential problems and finding a way to solve them. My plan is to build a simple AI that simply follows the track and another AI that tried to overtake it using the slipstream caused by the car infront.

3. If I can experiment with different ways of using slipstreaming, I can time laps around the course and see which is the fastest. Since it is a racing game and lap times will be monitored, it will be easy to look into which was the quickest and why.

Thanks :D

Worksheet 1

Hello! My original idea for my hon's project is to look into Driving AI but in particular looking into how an AI would deal with slipstreaming and use it to it's advantage. Slipstreaming is when there is a car infront another car during a race. Since they are driving fast, the air pressure acts against the car slowing it down, however if the a car has something to break the air pressure infront it, such as another car, then they can actually move faster since there is less pressure slowing the car down.

I wish to look into this and see if there are problems with the current way of doing it, and why more racing games do not have this feature. I also wish to look into the different ways that this can be done, and see if it can be improved upon.

For thsi idea, I would build a program that would simply make 2 cars go around a track. (If time allows I wish to do a complex track so that thety AI would have to take into account the corners when trying to overtake, however if this is not realistic, I wish to do just an oval track). One car would travel at a constant speed around the track, where as the other car would try to use slipstreaming to try and get infront of it.

I hope this is a good enough description, if you wish to know more about my idea, comment away! :D Thanks!

Monday, 27 September 2010

First Post

This is going to be my blog am I going to use for my Honours project for my 4th year of Computer Games Technlolgy! I'll keep this up to date as much as possible! :D x