Jump to content
  • Advertisement
hpdvs2

Formal name for a Weighted List AI

Recommended Posts

I remember seeing a name for this, but I can't find it anywhere now.

In one of my courses, I use a weighted list to decide the choices for an AI.

Basically, each AI class has 2 standard functions:  Value and Do.

[Value] returns a float, a percentage of how imperative it believes it is that it does this.  I.e. when your base is under attack, sending troops to defend returns a high value.

[Do] executes the AI.

Then an AI Manager gets the value for each AI choice, and chooses to do the one with the highest value.

I've seen a more formal name for this, but I don't recall what it was.

 

Share this post


Link to post
Share on other sites
Advertisement

Technically, when we talk about 'weighting' we usually mean some system that takes all the options into account, but factors the weights together to make a choice.

For example, if you could choose any of the options, but are more likely to choose the high-scoring ones, this is technically known as 'fitness proportional selection' or 'roulette wheel selection' in some circles, but is often just called 'weighted random': https://en.wikipedia.org/wiki/Fitness_proportionate_selection

But if you're just picking the highest-scoring option each time, that's not really a 'weight'. It's basically a score which yields a rank. The simple act of making a choice based on a score or ranking is known as a utility system, based on the game theory concept of utility as being an abstract score for how important or useful something is. Some utility systems will actually use roulette-wheel selection rather than just picking the top-scoring action.

Share this post


Link to post
Share on other sites

Great!  Utility System AI was it.  I'd seen it before but trying to find the name based on the description was proving near impossible. 

 

 - Thanks!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!