*Author

Offline ElementalDearWatsonTopic starter

  • Sr. Member
  • ****
  • Posts: 614
  • Reputation Power: 8
  • ElementalDearWatson is a Spark waiting for a buff.
  • New to Elements
Customise Arena AI https://elementscommunity.org/forum/index.php?topic=39316.msg488877#msg488877
« on: April 28, 2012, 08:30:06 am »
Okay, I find one of the problems with creating an Arena deck is that the AI is very, very stupid and so there's decks that you just can't reasonably put up.

I've just won a :darkness Nymph so I thought I'd go for a trio - Nymphs, Antimatter and Adrenaline.  The strategy, of course, is to Antimatter, Liquid Shadow and Adrenalise your opponent's creatures so that they heal you, hurt them, and die.  The AI, of course, only uses the Antimatter on its opponent's creatures and instead uses Liquid Shadow and Adrenaline on itself.  I've left the deck up because I think it's a nice idea, but it's not going to win, and the main reason it's not going to win is because the AI is stupid.

So my suggestion is to have the ability to link cards with other cards in your deck, or de-link them.  So, for example, with the deck above, I'd be able to de-link Liquid Shadow and Adrenaline with my Nymphs, and that would prevent the AI from playing either of those cards on my Nymphs.  Or, say, if you had a deck which relied on having Lobotomiser and you also had several Electrum Hourglasses which weren't as important, you could link Protect Artifact to Lobotomiser, meaning that the AI wouldn't play it on anything other than Lobotomiser, rather than Protecting your Hourglasses, as it normally would.

I'm not sure how easy this would be to implement, but it'd make the game much better.

Offline Drake_XIV

  • Legendary Member
  • ******
  • Posts: 6929
  • Country: us
  • Reputation Power: 91
  • Drake_XIV is a mythical and divine giver of immortality, one of the Turquoise Nymphs.Drake_XIV is a mythical and divine giver of immortality, one of the Turquoise Nymphs.Drake_XIV is a mythical and divine giver of immortality, one of the Turquoise Nymphs.Drake_XIV is a mythical and divine giver of immortality, one of the Turquoise Nymphs.Drake_XIV is a mythical and divine giver of immortality, one of the Turquoise Nymphs.Drake_XIV is a mythical and divine giver of immortality, one of the Turquoise Nymphs.Drake_XIV is a mythical and divine giver of immortality, one of the Turquoise Nymphs.Drake_XIV is a mythical and divine giver of immortality, one of the Turquoise Nymphs.Drake_XIV is a mythical and divine giver of immortality, one of the Turquoise Nymphs.Drake_XIV is a mythical and divine giver of immortality, one of the Turquoise Nymphs.Drake_XIV is a mythical and divine giver of immortality, one of the Turquoise Nymphs.Drake_XIV is a mythical and divine giver of immortality, one of the Turquoise Nymphs.Drake_XIV is a mythical and divine giver of immortality, one of the Turquoise Nymphs.Drake_XIV is a mythical and divine giver of immortality, one of the Turquoise Nymphs.Drake_XIV is a mythical and divine giver of immortality, one of the Turquoise Nymphs.
  • Powerful Harmony
  • Awards: Slice of Elements 10th Birthday CakeSlice of Elements 6th Birthday CakeSummer and Winter Competition WinnerSlice of Elements 4th Birthday CakeSlice of Elements 3rd Birthday Cake
Re: Customise Arena AI https://elementscommunity.org/forum/index.php?topic=39316.msg488878#msg488878
« Reply #1 on: April 28, 2012, 08:30:31 am »
« Last Edit: April 28, 2012, 08:32:08 am by Drake_XIV »

Offline ElementalDearWatsonTopic starter

  • Sr. Member
  • ****
  • Posts: 614
  • Reputation Power: 8
  • ElementalDearWatson is a Spark waiting for a buff.
  • New to Elements
Re: Customise Arena AI https://elementscommunity.org/forum/index.php?topic=39316.msg488917#msg488917
« Reply #2 on: April 28, 2012, 10:32:38 am »
My idea seems simpler to implement than either of those two.

Offline Fayceless

  • Newbie
  • *
  • Posts: 28
  • Reputation Power: 1
  • Fayceless is a Spark waiting for a buff.
Re: Customise Arena AI https://elementscommunity.org/forum/index.php?topic=39316.msg489453#msg489453
« Reply #3 on: April 29, 2012, 08:35:06 am »
Part of the reason...well, really the whole reason Arena decks get HP, drawing, and quantum bonuses is that the AI isn't as smart as a player.  If the AI knew exactly the best, most effective way to play a really good deck, players couldn't win very often, being at such a disadvantage.  It's set up the way it is because the AI doesn't know how to use decks in the same ways players do.  Letting players tell the AI exactly how to play a deck would be nice in theory, but would likely require a total restructuring of the arena.

Offline OldTrees

  • Legendary Member
  • ******
  • Posts: 10297
  • Reputation Power: 114
  • OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.
  • I was available for questions.
  • Awards: Brawl #2 Winner - Team FireTeam Card Design Winner
Re: Customise Arena AI https://elementscommunity.org/forum/index.php?topic=39316.msg489515#msg489515
« Reply #4 on: April 29, 2012, 02:10:36 pm »
The AI has equations that it uses to evaluate which target to target. It then randomly decides whether or not to target that target based on the evaluation.

Linking would not be an easy or practical addition to this code and would slow down the AI improvements that are taking place.

Your particular issue is one that we can expect to either be solved eventually with the normal AI or be shown to be inferior to alternative options available to the AI.
"It is common sense to listen to the wisdom of the wise. The wise are marked by their readiness to listen to the wisdom of the fool."
"Nothing exists that cannot be countered." -OldTrees on indirect counters
Ask the Idea Guru: http://elementscommunity.org/forum/index.php/topic,32272.0.htm

Offline ElementalDearWatsonTopic starter

  • Sr. Member
  • ****
  • Posts: 614
  • Reputation Power: 8
  • ElementalDearWatson is a Spark waiting for a buff.
  • New to Elements
Re: Customise Arena AI https://elementscommunity.org/forum/index.php?topic=39316.msg489985#msg489985
« Reply #5 on: April 30, 2012, 10:20:14 am »
The AI has equations that it uses to evaluate which target to target. It then randomly decides whether or not to target that target based on the evaluation.

Linking would not be an easy or practical addition to this code and would slow down the AI improvements that are taking place.

Your particular issue is one that we can expect to either be solved eventually with the normal AI or be shown to be inferior to alternative options available to the AI.

Surely all it would require is to insert one step before the equation it uses to evaluate which target to target which says "if x is on the field, then target it"?

Offline FIQ

  • Jr. Member
  • **
  • Posts: 66
  • Reputation Power: 1
  • FIQ is a Spark waiting for a buff.
  • New to Elements
Re: Customise Arena AI https://elementscommunity.org/forum/index.php?topic=39316.msg489987#msg489987
« Reply #6 on: April 30, 2012, 10:21:49 am »
Allthough customizing AI is interesting, and can be fun to do, it's a very complex thing to code, especially as how the AI works right now. I would love to see this, but I'd prefer other things over this first, as I belive this is hard to code properly.

The AI has equations that it uses to evaluate which target to target. It then randomly decides whether or not to target that target based on the evaluation.

Linking would not be an easy or practical addition to this code and would slow down the AI improvements that are taking place.

Your particular issue is one that we can expect to either be solved eventually with the normal AI or be shown to be inferior to alternative options available to the AI.

Surely all it would require is to insert one step before the equation it uses to evaluate which target to target which says "if x is on the field, then target it"?
Probably!
« Last Edit: April 30, 2012, 10:24:04 am by FIQ »

Offline OldTrees

  • Legendary Member
  • ******
  • Posts: 10297
  • Reputation Power: 114
  • OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.
  • I was available for questions.
  • Awards: Brawl #2 Winner - Team FireTeam Card Design Winner
Re: Customise Arena AI https://elementscommunity.org/forum/index.php?topic=39316.msg490208#msg490208
« Reply #7 on: April 30, 2012, 07:06:14 pm »
The AI has equations that it uses to evaluate which target to target. It then randomly decides whether or not to target that target based on the evaluation.

Linking would not be an easy or practical addition to this code and would slow down the AI improvements that are taking place.

Your particular issue is one that we can expect to either be solved eventually with the normal AI or be shown to be inferior to alternative options available to the AI.

Surely all it would require is to insert one step before the equation it uses to evaluate which target to target which says "if x is on the field, then target it"?
No. It would at minimum have to check for exceptions at each decision point. It would have to refer to a database of all the exceptions that any player desired. That is a large database that would be created.

There are additional problems like:
"If x is on the field, then target it" is less intelligent than an educated evaluation system. Since we prefer intellegent AI, we should seek to improve the evaluation rather than replace it.
An evaluation system takes less code and is more reusable (faster updates).
An evaluation system includes randomness to prevent determined games.
"It is common sense to listen to the wisdom of the wise. The wise are marked by their readiness to listen to the wisdom of the fool."
"Nothing exists that cannot be countered." -OldTrees on indirect counters
Ask the Idea Guru: http://elementscommunity.org/forum/index.php/topic,32272.0.htm

Offline ElementalDearWatsonTopic starter

  • Sr. Member
  • ****
  • Posts: 614
  • Reputation Power: 8
  • ElementalDearWatson is a Spark waiting for a buff.
  • New to Elements
Re: Customise Arena AI https://elementscommunity.org/forum/index.php?topic=39316.msg490574#msg490574
« Reply #8 on: May 01, 2012, 08:41:51 am »
No. It would at minimum have to check for exceptions at each decision point. It would have to refer to a database of all the exceptions that any player desired. That is a large database that would be created.

Why?  The first step it encounters is "if x is on the field, then target it" and immediately does it, skipping all subsequent steps.

Quote
There are additional problems like:
"If x is on the field, then target it" is less intelligent than an educated evaluation system. Since we prefer intellegent AI, we should seek to improve the evaluation rather than replace it.

It wouldn't be replacing it, it would be adding to it.  And it would make it more intelligent in the sense that it would actually play the deck well, rather than in the sense of the AI being clever in and of itself.

Offline OldTrees

  • Legendary Member
  • ******
  • Posts: 10297
  • Reputation Power: 114
  • OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.OldTrees is a mythical and divine giver of immortality, one of the Turquoise Nymphs.
  • I was available for questions.
  • Awards: Brawl #2 Winner - Team FireTeam Card Design Winner
Re: Customise Arena AI https://elementscommunity.org/forum/index.php?topic=39316.msg490587#msg490587
« Reply #9 on: May 01, 2012, 09:20:43 am »
No. It would at minimum have to check for exceptions at each decision point. It would have to refer to a database of all the exceptions that any player desired. That is a large database that would be created.

Why?  The first step it encounters is "if x is on the field, then target it" and immediately does it, skipping all subsequent steps.

Quote
There are additional problems like:
"If x is on the field, then target it" is less intelligent than an educated evaluation system. Since we prefer intellegent AI, we should seek to improve the evaluation rather than replace it.

It wouldn't be replacing it, it would be adding to it.  And it would make it more intelligent in the sense that it would actually play the deck well, rather than in the sense of the AI being clever in and of itself.
The first step that would have to be added is not "if x is on the field, then target it" it would be "check database to see if player Y requested an exception with current action. If yes then preform that exception, if no then proceed." This does not include the code the actual exception function would use.

This additional code would be called once per card in hand and per activated ability on the field per turn per player per game.

Would you prefer the evaluation system continued to improve from the joint wisdom of the community or would you prefer each player to write long lists of exceptions to patch a stalled evaluation system?
Consider Nightmare. Before the AI would play the nightmare'd card without worry. If players could give exception based patches to the AI, they would tell it to not play each card not in the deck. The better solution was having the evaluation system treat nightmare'd cards with suspicion (modifier that reduced the estimated value in the AI's eyes).

As the AI has grown more intelligent it has become able to play more types of decks.

PS: In short the evaluation system is meant as a "target X unless there is a better target". This is better than "target X".
« Last Edit: May 01, 2012, 09:35:10 am by OldTrees »
"It is common sense to listen to the wisdom of the wise. The wise are marked by their readiness to listen to the wisdom of the fool."
"Nothing exists that cannot be countered." -OldTrees on indirect counters
Ask the Idea Guru: http://elementscommunity.org/forum/index.php/topic,32272.0.htm

 

anything
blarg: