Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 114 115 [116] 117 118 ... 210

Author Topic: That which sleeps- Kickstarted!  (Read 368031 times)

ndkid

  • Bay Watcher
  • Player of Games
    • View Profile
Re: That which sleeps- Kickstarted!
« Reply #1725 on: December 01, 2015, 09:58:04 pm »

But it's a matter of stopping the loop.  Overall AI design might be hard, but I doubt this particular will be.
This is actually an interesting problem. I suspect the refactor will be non-trivial, depending on how well modularized the AI code is now. Writing it in my head, I would be tempted to basically hand the "Figure Out What to Do" function an array of the other AI plans. At that point, you could do reasonable parallelization, where you spawn a thread for each AI to think about what it would do with no neighbor data, take the result, feed it into a second iteration, and then you can stop iterating at pretty much any arbitrary point. If a particular AI keeps giving the same answer multiple iterations in a row, you take it out of the processing since its mind is made up.

This suffers from the same problem. How do you generate that array of other AI plans? If AI A needs to have an idea of AI B's actions before AI A's "Figure Out What To Do" function returns, but B needs to have an idea of A's before B's "Figure Out What To Do" function returns... well...
You may have misunderstood the algorithm I was describing. Imagine that we have 5 AIs.
1) Spawn five threads, each AI is handed no data about the other AIs, and is asked what it'd like to do.
2) Collect the five answers and pass those into an iteration of "okay, what would you do if you expected the other AIs to do this".
3) Repeat 2 as many times as you like.

The idea is that you take the recursivity out of the process. How great or small a refactor from a recursive to an iterative strategy would be in this case I cannot say, having no first-hand knowledge of the code. My meta-point was that while there are potential solutions, the problem is probably not as simple as "well, stop letting it loop infinitely"; really, that's a misnomer given the current description of the problem, because it's a recursion stack-overflow from the sounds of it, not an infinite loop.
Logged

birdy51

  • Bay Watcher
  • Always be Beeping
    • View Profile
Re: That which sleeps- Kickstarted!
« Reply #1726 on: December 01, 2015, 11:09:18 pm »

I don't know about you guys, but this actually rather cool to me. Questions on top of questions, looping into one another like a hurricane. It's funky!
Logged
BIRDS.

Also started a Let's Play, Yu-Gi-Oh! Duelists of the Roses

Sergarr

  • Bay Watcher
  • (9) airheaded baka (9)
    • View Profile
Re: That which sleeps- Kickstarted!
« Reply #1727 on: December 02, 2015, 07:17:28 am »

I mean, it's a big gnarly stinky hole of broken AI interactions. The effort truly describing the problem to forum goers just so they can understand the problem probably isn't worth it.

Well it isn't really that complicated honestly. I don't know why people are being so critical.

The AI has a situation where they can enter an infinite loop because it spirals out of control. It happens.
No it doesn't. It's really hard to make AI spiral out of control into an infinite loop, if you're not inviting it by doing something reckless like recursive function calls. One pass should always be enough.
Also, the version on the public forum is missing the information that Josh did get the infinite-loop behavior to stop by imposing a limit on how much information the AI is allowed to gather before it's forced into a decision. The problem now is when the AI gets forced into a decision like that, it often comes back with "do nothing", even when doing nothing is clearly inappropriate in the current context.
Maybe the AIs are just managing to figure out the futility of their existence and inevitability of their defeat and decide that "the winning move is not to play and hope the player leaves due to boredom" :-X
Logged
._.

StupidElves

  • Bay Watcher
  • I coveted that wind, I suppose.
    • View Profile
Re: That which sleeps- Kickstarted!
« Reply #1728 on: December 02, 2015, 07:21:54 am »

I do wonder how can you create an infinite loop during AI development. From what I know, most common AI architectures (like rule-based systems or neural networks) don't really have any points where it can loop indefinitely. What kind of AI system is he using?

EDIT: Looked it up. And, uh...
Quote
A bit more detail because I think itīs interesting: Aparently the AI now tries to figure out what other parties in the world now will try to do to anticipate it and act in accordance to that. To do that the AI of one party has to "ask" the other AI what it will do, which then starts considering itīs actions and in return ask the first AI what they will do, causing an infinite loop which crashes the game. I would post more but I am not sure if what infos are allowed outside the backers forum. I will ask the mods if we can share more infos.
Yeah, I don't see any way to get rid of infinite loops without reworking this whole "AI asking other AIs" part.

Replace it with AIs having some predictive estimates on other's behaviours based on their previous interactions, and then it'll work. For additional bonus points, it would also work for AI prediction player's behaviour and adapting accordingly.

https://www.youtube.com/watch?v=62gzsqwEZCM
Logged
Accidentally made over 5000 copper maces once. I have no idea how that happened.

GENERATION 29:
The first time you see this, copy it into your signature on any forum and add 1 to the generation. Social experiment.

TempAcc

  • Bay Watcher
  • [CASTE:SATAN]
    • View Profile
Re: That which sleeps- Kickstarted!
« Reply #1729 on: December 02, 2015, 07:23:19 am »

Its funny how people were discussing the definition of vaporware and including DF into it, and comparing it with TWS, and then a few days later it gets a brand new release with new features, while there's still no real info on TWS :v

/partialjoke

Anyway, it does strike me a bit odd that the dev doesn't want to use RNG, if that is true.
Logged
On normal internet forums, threads devolve from content into trolling. On Bay12, it's the other way around.
There is no God but TempAcc, and He is His own Prophet.

Neonivek

  • Bay Watcher
    • View Profile
Re: That which sleeps- Kickstarted!
« Reply #1730 on: December 02, 2015, 07:29:28 am »

Anyway, it does strike me a bit odd that the dev doesn't want to use RNG, if that is true.

It is more his philosophy on the game and honestly in most of the areas I seen I honestly can dig it.

It is a boon to the game.
Logged

Sergarr

  • Bay Watcher
  • (9) airheaded baka (9)
    • View Profile
Re: That which sleeps- Kickstarted!
« Reply #1731 on: December 02, 2015, 07:33:10 am »

a brand new release with new features
oh shit how did I miss that
Logged
._.

Cthulhu

  • Bay Watcher
  • A squid
    • View Profile
Re: That which sleeps- Kickstarted!
« Reply #1732 on: December 02, 2015, 09:29:24 am »

Anyway, it does strike me a bit odd that the dev doesn't want to use RNG, if that is true.

It is more his philosophy on the game and honestly in most of the areas I seen I honestly can dig it.

It is a boon to the game.

No it isn't.  Did you miss the part where it broke the game? 

There's a reason nobody does it that way. 
Logged
Shoes...

Shadowgandor

  • Bay Watcher
    • View Profile
Re: That which sleeps- Kickstarted!
« Reply #1733 on: December 02, 2015, 09:38:31 am »

Anyway, it does strike me a bit odd that the dev doesn't want to use RNG, if that is true.

It is more his philosophy on the game and honestly in most of the areas I seen I honestly can dig it.

It is a boon to the game.
No it isn't.  Did you miss the part where it broke the game? 

There's a reason nobody does it that way.
A game that is being developed will break countless of times, especially when worked on by a small development team with less restrictions. This problem, like the countless before and the countless that will come after, is fixable. Why he decided to write a post about it I don't know, maybe to vent his frustrations a bit, but things like this are probably happening on a weekly basis.
Logged

Xgamer4

  • Bay Watcher
    • View Profile
Re: That which sleeps- Kickstarted!
« Reply #1734 on: December 02, 2015, 09:39:27 am »


You may have misunderstood the algorithm I was describing. Imagine that we have 5 AIs.
1) Spawn five threads, each AI is handed no data about the other AIs, and is asked what it'd like to do.
2) Collect the five answers and pass those into an iteration of "okay, what would you do if you expected the other AIs to do this".
3) Repeat 2 as many times as you like.

The idea is that you take the recursivity out of the process. How great or small a refactor from a recursive to an iterative strategy would be in this case I cannot say, having no first-hand knowledge of the code. My meta-point was that while there are potential solutions, the problem is probably not as simple as "well, stop letting it loop infinitely"; really, that's a misnomer given the current description of the problem, because it's a recursion stack-overflow from the sounds of it, not an infinite loop.

Er, yes! You're exactly right.

My main concern with that approach is that the results might be less-than-optimal. Sure, the AI will act with knowledge of the other AIs, but they'll be acting with what the other AIs would have done last-pass through the system. If AI actions change drastically from pass n-1 to pass n, and AI A is reacting to AI B's plans, then A could decide to do something on pass n, using B's plans on pass n-1, while B changes its plans entirely on pass n to something A wouldn't react to.

I'm not sure how much of an issue it'd be in practice, and any notably-weird actions could be handwaved as "Well, A expected B to do something completely different", but that was the first potential problem I saw.

That aside, I fundamentally agree with your meta-point, and I've been arguing the exact same point in the Backers forum.
Logged
insert something mind-blowing/witty here*

Xgamer4

  • Bay Watcher
    • View Profile
Re: That which sleeps- Kickstarted!
« Reply #1735 on: December 02, 2015, 09:41:20 am »


A game that is being developed will break countless of times, especially when worked on by a small development team with less restrictions. This problem, like the countless before and the countless that will come after, is fixable. Why he decided to write a post about it I don't know, maybe to vent his frustrations a bit, but things like this are probably happening on a weekly basis.

He (Josh) actually didn't. The official forums were getting incredibly antsy off of another missed-without-notice/explanation deadline, so one of the mods reached out and asked if everything was ok. He came back with that explanation
Logged
insert something mind-blowing/witty here*

Neonivek

  • Bay Watcher
    • View Profile
Re: That which sleeps- Kickstarted!
« Reply #1736 on: December 02, 2015, 09:42:30 am »

I am starting to understand how the people who like Starbound feel about me pooping on Starbound.

Though I still think Chucklefish deserve it.
Logged

Sergarr

  • Bay Watcher
  • (9) airheaded baka (9)
    • View Profile
Re: That which sleeps- Kickstarted!
« Reply #1737 on: December 02, 2015, 11:06:28 am »

Anyway, it does strike me a bit odd that the dev doesn't want to use RNG, if that is true.

It is more his philosophy on the game and honestly in most of the areas I seen I honestly can dig it.

It is a boon to the game.

No it isn't.  Did you miss the part where it broke the game? 

There's a reason nobody does it that way.
1) The AI problem had nothing to do with RNG.
2) AIs are perfectly possible to do without RNG. Much easier to test that way, too.
Logged
._.

Zangi

  • Bay Watcher
    • View Profile
Re: That which sleeps- Kickstarted!
« Reply #1738 on: December 02, 2015, 12:48:30 pm »

Well, as long as they don't get too predictable in the living world part of it.
Logged
All life begins with Nu and ends with Nu...  This is the truth! This is my belief! ... At least for now...
FMA/FMA:B Recommendation

ArKFallen

  • Bay Watcher
  • Bohandean Desserter
    • View Profile
Re: That which sleeps- Kickstarted!
« Reply #1739 on: December 02, 2015, 10:05:37 pm »

You could have a predictable range by making action calculations only have to take into account 1 extra numeric variable that is that specific campaign's seed. If you play the game the exact same it and the world unfolds in the same way it should run as replay that you can choose to deviate from later in.
Logged
Hm, have you considered murder?  It's either that or letting it go.
SigText
I logged back on ;_;
Pages: 1 ... 114 115 [116] 117 118 ... 210