Post subject: Things a human can do would be impossible for a TAS bot
Joined: 5/30/2005
Posts: 98
When describing the process that a human can do but not a TAS bot try to be as specific as possible. Also if someone did somehow manage to build a TAS bot that did this thing you called "impossible" compare how difficult it would to be to program compared to current TAS bots.
Post subject: Re: Things a human can do would be impossible for a TAS bot
Senior Moderator
Joined: 8/4/2005
Posts: 5777
Location: Away
gbagcn wrote:
When describing the process that a human can do but not a TAS bot try to be as specific as possible.
A human can eat. When humans eat, they take a fork and a knife, cut the food into small pieces, then pierce them with a fork and put in their mouth. In case it's impossible to pierce the food, they use a spoon, or use a fork as they would use a spoon. After food arrives into mouth, humans start grinding it with their teeth until the food becomes a soft mass. Then they swallow it, and the food goes through digestive tract. After the food is fully digested, it's ejected out of anus in form of fecal matter. A TAS bot cannot eat.
Warp wrote:
Edit: I think I understand now: It's my avatar, isn't it? It makes me look angry.
Skilled player (1651)
Joined: 11/15/2004
Posts: 2202
Location: Killjoy
In seriousness, Humans are great at detection and estimation (possibly one of the most important part of statistics). How does this matter? Dimensionality reduction. A human can easily detect when a movement will cause undesirable results, often long before the actual undesirable result occurs. A human can also easily estimate the result of a movement, which removes the need to test all possible permutations and combinations. Detection example: Mario performs a jump that will result in the collision with a block. A human knows long before the collision that it will occur. Estimation: A jump in game X requires holding the jump button for 8 frames, not 7, and not 9. A human can estimate that it will take 7-9 frames, and can easily test 7, 8 and 9. The computer counterpart must test 1,2,3,4,5,6,7,8,9,10, and etc. So, unless you build advanced Detectors and Estimators, you can't reduce the dimensionality of the problem of a TAS. Bisqwit is better than I at the math to produce the possible outcomes.
Sage advice from a friend of Jim: So put your tinfoil hat back in the closet, open your eyes to the truth, and realize that the government is in fact causing austismal cancer with it's 9/11 fluoride vaccinations of your water supply.
Active player (411)
Joined: 3/16/2004
Posts: 2623
Location: America, Québec
A tas bot does have troubles finishing 1-1 in SMB. Human does NOT need savestates to finish it.
Joined: 4/25/2004
Posts: 615
Location: The Netherlands
DarkKobold is talking about the 'frameproblem', AI can't reduce the number of relevant possible actions in his world. However, this does not neccessarily mean a problem. The question was something impossible, which I would say none. As for the frameproblem, that's where humans come into play, building certain rules and restricting it's action-space. Unlessy you're talking about a neural net type of bot, in which case... good luck training it.
qfox.nl
Joined: 8/9/2004
Posts: 123
A very simply programmed bot would be able to do anything a human can do. It would just take eons to do so. A complexly programmed bot would not be able to do anything a human can do, but it would be able to do many things much much faster. I think there's a problem with the original question. <_<
kwinse wrote:
Kejardon wrote:
Kriole wrote:
Samus is damaged by a Rinka in the opening.
That's a script action; no damage. ... it just dawned on me I know way too much about SM.
It took THAT to make you realize?
Chamale
He/Him
Player (182)
Joined: 10/20/2006
Posts: 1355
Location: Canada
If you had a computer that was infinitely fast, or so close that it could be considered infinite, and told it to find the fastest input to win all games in existence, it would still be limited. For example, if a game had a password screen, the bot would immediately enter a password to go to the last level. It would be impossible to have it do a no-warps run, and games like SMB3 would have very unentertaining autoscrollers for the sake of reducing lag.
Player (206)
Joined: 5/29/2004
Posts: 5712
I'm sure you could find the memory addresses that say "This is a warp" and program the bot to watch those addresses to avoid doing it. I mean, isn't that how the bot would know it's beaten the game in the first place?
put yourself in my rocketpack if that poochie is one outrageous dude
Senior Moderator
Joined: 8/4/2005
Posts: 5777
Location: Away
Chamale wrote:
games like SMB3 would have very unentertaining autoscrollers for the sake of reducing lag.
Apparently, reducing lag pretty much requires you to do all the stuff Genisto was doing in his run, IIRC.
Warp wrote:
Edit: I think I understand now: It's my avatar, isn't it? It makes me look angry.
Former player
Joined: 6/2/2006
Posts: 63
I believe the idea behind a universal turing machine is that given enough instructions a universal turing machine can do the work of any other machine. Since a TAS bot is a state machine, given enough states and decisions, I guess it could do anything, but limitations on computing resources prevent this. I don't think a TAS bot could love
Editor, Experienced player (734)
Joined: 6/13/2006
Posts: 3300
Location: Massachussetts, USA
A bot probably cannot think outside the box to create some intriguing solutions to a problem; you give it specific parameters, and it finds the best solution from that. A human can probably let his/her mind wander and think of something completely different. I don't think a bot can make entertainment during waiting periods. There's 2 examples where this is not the case: Gradius, and Pulseman (I think?) where a bot was used to create pseudo-random input during entertainment segments; but in general I think a human can understand better of what an audience wants to see and would be entertained by, and personally know the game, what it's limits are, and how to push those limits in an entertaining fashion. Bots can theoretically test routes better, but that takes massive amounts of time and processing power, which humans can do easier with some paper, pencil, free time,whatever it is they use (sometimes even in their head.) When finding glitches, a human can look at something and say "hey, I wonder if this will work/can I use this method to do this, which I'm ordinarily not supposed to do/Hey, that wasn't supposed to happen." I don't think bots can dance to the music.
Homepage ☣ Retired
Chamale
He/Him
Player (182)
Joined: 10/20/2006
Posts: 1355
Location: Canada
True, but a bot that did every single combination of input would eventually find all glitches that saved time.
Joined: 5/2/2006
Posts: 1020
Location: Boulder, CO
How reasonable would it be to set a TAS bot to work on arkanoid? Because only 2 buttons (left and right) are relevent, would it be able to work that game over with 100% precision?
Has never colored a dinosaur.
nesrocks
He/Him
Player (246)
Joined: 5/1/2004
Posts: 4096
Location: Rio, Brazil
Twelvepack wrote:
How reasonable would it be to set a TAS bot to work on arkanoid? Because only 2 buttons (left and right) are relevent, would it be able to work that game over with 100% precision?
Hard to do with the ball moving horizontally faster than the pad, but with the steering wheel control it is possible, I believe. But it may get stuck on the corner of a stage sometimes.
Joined: 11/11/2006
Posts: 1235
Location: United Kingdom
A bot would almost always be boring during auto scrollers (that or spazzing out). A human usually adds something interesting and/or entertaining to the area.
<adelikat> I am annoyed at my irc statements ending up in forums & sigs
Joined: 5/29/2006
Posts: 138
Raiscan wrote:
A bot would almost always be boring during auto scrollers (that or spazzing out). A human usually adds something interesting and/or entertaining to the area.
But theoretically, a bot could be programmed to be entertaining whenever possible. It could even be programmed to make an entertaining movie without aiming for time. It would definitely be hard to do, but completely possible.
Mitjitsu
He/Him
Banned User
Joined: 4/24/2006
Posts: 2997
I don't think a universal bot could ever be possible unless it automatically adapts to each game. I think if the bot is programmed to know the game as with anything else like chess then the liklyhood is that it would probally be able to detech faults and likely oversights through using compilers and interpreters thus being able to analyze the gaming code in depth. Still a bot will always been inefficient compared to humans when it comes to TASing.
Joined: 4/25/2004
Posts: 615
Location: The Netherlands
a universal bot is a problem by itself. the way i've programmed bots so far is by first finding the specific ROM addresses for certain information. every game has it's own mechanic. sure, some mechanics are quite generic, but most aren't. so building a universal bot (turing machine...) is a task i don't see accomplished any time soon. on the other hands, if you have a neural net and some correct goals and quite some time on your hands, you can probably train a net to do it. but that will take a lot of time and patience, and odds are it won't work very well (if at all). But... bots themselves can be used fine to run through a game efficiently. didn't bisqwit do this for some rockman? i don't remember how fast it was compared to the record though. i find bots computing tas'es quite interesting. having to find the rom addresses is the most annoying part of it. but there was a site trying to collect them, some wiki. search for it on this forum.
qfox.nl
Former player
Joined: 6/2/2006
Posts: 63
How reasonable would it be to set a TAS bot to work on arkanoid?
I think that this is very reasonable. Given you know the position, speed, and trajectory of the ball at a given time -- which I believe would be some memory addresses in RAM, along with the layout of the remaining blocks -- more addresses, you could calculate where the ball is going to be at any time in the future. That actually would be very interesting to see. I made a bot a long time ago with the concept of it being a user created state machine. A bot of this type wouldn't quite be universal because it would require human logic to program it's goals (i.e. should we mash buttons randomly, or move is a certain direction?), but it could be close. I believe that most games we play can be broken down into a series of yes/no conditions. If we know what the goals are, we could write a decision tree large enough to get to that goal, as well as handle any obstacles in our way.
Joined: 10/24/2005
Posts: 1080
Location: San Jose
Ash Williams wrote:
How reasonable would it be to set a TAS bot to work on arkanoid?
I think that this is very reasonable. Given you know the position, speed, and trajectory of the ball at a given time -- which I believe would be some memory addresses in RAM, along with the layout of the remaining blocks -- more addresses, you could calculate where the ball is going to be at any time in the future. That actually would be very interesting to see. I made a bot a long time ago with the concept of it being a user created state machine. A bot of this type wouldn't quite be universal because it would require human logic to program it's goals (i.e. should we mash buttons randomly, or move is a certain direction?), but it could be close. I believe that most games we play can be broken down into a series of yes/no conditions. If we know what the goals are, we could write a decision tree large enough to get to that goal, as well as handle any obstacles in our way.
Is this relevant to this discussion? http://tasvideos.org/forum/viewtopic.php?p=130956#130956 Alden made a bot that "survives" the first 100 frames of arkanoid in real time. This topic has kind of lost its steam, though.
<agill> banana banana banana terracotta pie! <Shinryuu> ho-la terracotta barba-ra anal-o~
Former player
Joined: 6/4/2006
Posts: 97
Location: Everywhere including nowhere
qFox wrote:
But... bots themselves can be used fine to run through a game efficiently. didn't bisqwit do this for some rockman? i don't remember how fast it was compared to the record though.
He also used a genetic algorithm that one time to work with the Cutman glitch.
...?
Joined: 4/25/2004
Posts: 615
Location: The Netherlands
Right. Bots are very efficient to get you a few frames ahead. Especially with first generation consoles that have fewer buttons (hence cutting down decision space dramatically...) Does the paddle in arkanoid move as fast as the ball? Because then a bot should never lose (obviously).
qfox.nl
Joined: 5/2/2006
Posts: 1020
Location: Boulder, CO
Even if its not, a brute forcebot should have an easier time with arkanoid simply because there are only 3 states the controler can be in.
Has never colored a dinosaur.
Joined: 4/25/2004
Posts: 615
Location: The Netherlands
And even then the tree is huge... On the other hand you can just compute it per level, which should cut down the tree consideably. Unless it's bonus works like uh, that pool game bisqwit and I worked on a while ago. Anyways, the point was that everything a human can do, a bot could do. The question is more of efficiency and probability though.
qfox.nl
Player (121)
Joined: 2/11/2007
Posts: 1522
In arkanoid the ball can move faster than the paddle, so the "stay under" technique doesn't work for very long. You can find the position, vertical and horizontal speed, and direction in ram, but that's still not enough to always predict where the ball will end up because there are enemies that appear in a much more "random" way (though technically you could probably decompile the code and figure that out too) But even then, that's just a bot to *survive* arkanoid...
a brute forcebot should have an easier time with arkanoid simply because there are only 3 states the controler can be in.
true, but yeah, like qFox says, it would still be quite complex. it would be interesting to look at the best way to eliminate enough possibilities to make it speedrun even one level in a reasonable amount of time.
I make a comic with no image files and you should read it. While there is a lower class, I am in it, and while there is a criminal element I am of it, and while there is a soul in prison, I am not free. -Eugene Debs