• Welcome to Smashboards, the world's largest Super Smash Brothers community! Over 250,000 Smash Bros. fans from around the world have come to discuss these great games in over 19 million posts!

    You are currently viewing our boards as a visitor. Click here to sign up right now and start on your path in the Smash community!

CPU's Learn?

slickmasterizzy

Smash Apprentice
Joined
Mar 28, 2008
Messages
140
Location
Ohio, northeast
whenever i kill someone i push down let go push down let go... etc etc (humping the ground)

once in awhile when a CPU kills me they will do it too. its funny lol
 

Viny

Smash Cadet
Joined
Sep 27, 2007
Messages
51
for the fun...did the hardest character lvl 9 you figth is your main???
 

RNDM!

Smash Cadet
Joined
Sep 30, 2008
Messages
52
Location
Portland, Oregon
lvl 1's even learn to i think, i was playing one and at first it barely even attempted to
hit me, but after a while it would actually hit me frequently
 

Roihu

Smash Ace
Joined
Aug 7, 2008
Messages
541
My CPUs seem to get majorly aggressive when I take a stock off them, but when it kills me and the stocks are the same (Don't know how it works if they're not), it goes back to its regular state.
 

Denzi

Smash Master
Joined
Jul 25, 2008
Messages
3,483
Location
Cleveland, OH
lvl 1's even learn to i think, i was playing one and at first it barely even attempted to
hit me, but after a while it would actually hit me frequently
I agree.

My CPUs seem to get majorly aggressive when I take a stock off them, but when it kills me and the stocks are the same (Don't know how it works if they're not), it goes back to its regular state.
I also agree, although they seem to do this when I lose a stock as well.
 

PK-ow!

Smash Lord
Joined
Mar 28, 2008
Messages
1,890
Location
Canada, ON
Anyone who says that a learning algorithm for SSB is inconceivable is quite behind the A.I. times.

However, I really don't understand how "The CPU chain grabbed me" or "The Falco shorthopped (+ lasered me)" is being put forward as evidence toward this conclusion, either. All these facts mean is that the CPU chain grabbed you, and the CPU used SHL. It could just mean the developers learned about CGs, and got the computers to do it. Hell, that's not even necessarily true; the computers could 'chain' grabs merely as a coincidence of case-based programming, where they grab if they notice that a grab would be guaranteed - and lo, one is guaranteed right after they finish a throw, so they grab you.

The idea of 'testing' this is complex. What test could actually give evidence for this? I certainly can't imagine anything other than hacking the code disproving this.
So okay, you start by wiping your SSBB file on your Wii and memory card. Now you play, for a while, and then you notice something the computer is doing that it wasn't doing in the first bit you were playing. How do you know that "the first bit you were playing" was a good sample of CPU behaviour? What if it always could have done what you just saw, but just happened not to?

I don't know if you can get rid of these confounds.

As to the better arguments in this thread. . . even though A.I. is possible, it's still computationally expensive. Paying attention to your button inputs and forming a statistical model of their 'success rate' is one thing; but how could it abstract that event in just the right way so that it uses it "effectively"?

The case of the Pit using Wingdash is most compelling (because of that dair on the end of the AT), but how did the CPU realize when to do this? Would it only use it on a certain stage? Only against a certain character? Only at a specific distance from you? Only at an exact spot on the map? All of the above?
If it doesn't get too specific, how does it generalize without going too far?

If the A.I. is learning, holy crap, Nintendo is sitting on some **** valuable trade secrets in learning algorithms.
 

Lucario Boricua

Smash Rookie
Joined
Sep 3, 2008
Messages
13
Location
Bayamón, Puerto Rico.
I cannot asure it, but I've certainly noticed that the ost formidable CPU oponents my brother and I battle are the characters that we ise best. Although I rather prefer that CPU's were programmed to learn from their human counterparts, because otherwise the game would get boring once you become an expert.
 

Junahu

Smash Ace
Joined
Nov 15, 2005
Messages
899
Location
Shropshire Slasher
The idea of 'testing' this is complex. What test could actually give evidence for this? ...
So okay, you start by wiping your SSBB file on your Wii and memory card. Now you play, for a while, and then you notice something the computer is doing that it wasn't doing in the first bit you were playing. How do you know that "the first bit you were playing" was a good sample of CPU behaviour? What if it always could have done what you just saw, but just happened not to?
One idea would be to compare the behaviours of CPUs in CPU only fights, both on a Wii with a save and a Wii that does not have a save (And has been denied the ability to save). With a large enough sample size, any differences in CPU behaviour should be pretty clear, and there wouldn't be any HMN interference to the test set.
 

Levitas

the moon
Joined
Jul 20, 2007
Messages
5,734
Location
Ann Arbor, MI
Except that we know the answer to the question this thread has.

But yes, that is how you would test it if you didn't know.
 

Sudsy86_

Smash Ace
Joined
May 22, 2008
Messages
594
Location
Upstate, NY
I believe that mostly what we are seeing is an enhanced amount of circumstances being put into the code, Simply put "If, then " statements. Of course on a much more complicated level. So perhaps it is registering the button combinations you do, and deciding exactly how effective they are against you. Such as certain moves that people use a good amount of the time, I'll give it an arbitrary number of around 60%. A move you use successfully 60% of the time, may trigger a few lines of code to state something along the lines of "Watch out, counter with Airdodge", or "At --% do ---to avoid -- which happened 60% of the time"
Which is extremely plausible in a game such as this, therefor giving the effect that they are learning, when in fact the computer is merely compensating within it's own definitives.
I know absolutely nothing about game producing--let's just get that out of the way.

The one thing questionable with your alternative is the fact that it requires the game itself to keep track of particular moves and their success rate. Even if it does, it seems unlikely the game would change any algorithmic pattern of behavior. I guess "increased reaction time" might be the answer, but that doesn't seem to be the case either.

i don't know, though.
 

feardragon64

Smash Champion
Joined
Apr 9, 2008
Messages
2,154
Location
San Francisco
I was screwing around against a level 1 link. He started tard trotting(aka craq walking). And not just once. Repeatedly. It even attempted it with lucario a few times. I highly doubt the developers designed the characters with that in mind. I'm not saying they're learning from humans. But I do think that there is an algorithm that calculates a % of success rate on specific button inputs with minor variations in timing removed and weighs it against a constant that they decided was reasonable. If its success rate is greater than the constant, then the cpu will occasionally emulate that button input.

Hey, it's possible? Maybe it's not even a calculation of success rate, but it simply records button input from players and random throws them into the game. Every so often, it just happens to be a useful technique and the rest of the time it's ordinary crap so we can't tell the difference.
 

SonicX580

Smash Lord
Joined
Sep 5, 2008
Messages
1,649
Location
Orlando,FL
Man I remember a captain falcon did a reverse falcon punch that I did not see coming those programers are getting more elusive...
 

Deoxys

Smash Lord
Joined
Aug 28, 2008
Messages
1,118
Location
near Boston, MA
I want to pay M2K to play as every character against level 9s of every character until my CPU's are really good, haha.

I main MK, but the lvl 9 MKs in my game BLOW. So I'm not really sure what's going on....
 

Denzi

Smash Master
Joined
Jul 25, 2008
Messages
3,483
Location
Cleveland, OH
I was screwing around against a level 1 link. He started tard trotting(aka craq walking). And not just once. Repeatedly. It even attempted it with lucario a few times. I highly doubt the developers designed the characters with that in mind. I'm not saying they're learning from humans. But I do think that there is an algorithm that calculates a % of success rate on specific button inputs with minor variations in timing removed and weighs it against a constant that they decided was reasonable. If its success rate is greater than the constant, then the cpu will occasionally emulate that button input.

Hey, it's possible? Maybe it's not even a calculation of success rate, but it simply records button input from players and random throws them into the game. Every so often, it just happens to be a useful technique and the rest of the time it's ordinary crap so we can't tell the difference.
It seems you might be right.
And the CPU's do seem better than thay did in previous games.
 

Endless Nightmares

Smash Master
Joined
Sep 23, 2006
Messages
4,090
Location
MN
once in awhile when a CPU kills me they will do it too. its funny lol
i do not believe that CPUs learn, but i do think they were programmed with "human-like" actions such as spamming random tilts after a kill or doing little things like crouching repeatedly between stocks
 

SonicBoom2

Smash Journeyman
Joined
Oct 12, 2008
Messages
480
Location
Florida
Wow.
My CPU Falco actually do something good.
And Falco+DeDeDe sometimes chaingrab me too.

Ike's can sometime Jab Cancel me.

They crouch taunt me all the time too.
 

Sphyra

Smash Apprentice
Joined
Dec 14, 2004
Messages
158
Location
Montreal
I've noticed a few anomalies from the CPUs but nothing major enough to make me certain they're learning. However I have no trouble believing they could be.

People who think it's impossible may want to take a look at http://iamp.mizuumi.net/index.php/Th075booster
Granted it's not for smash, but it still proves a learning AI in a fighting game can and do exist. That doesn't mean they'll be as good as you, they just pick up strings and techniques that you use and try to apply them, which may make them better but never at a human level. Still nifty and I'd be happy if a similar system exists in Brawl.
 

felix0-9

Smash Cadet
Joined
Sep 8, 2008
Messages
28
Location
Yes.
Well, my CPUs never gimped until I did, and now they do all the time... And they never meteor smashed until I did, and now they do that too... But I just don't know how possible it is for computers to learn that way.
 

Rudementry

Smash Journeyman
Joined
Sep 23, 2008
Messages
336
Location
Dallas
Best way to test this:


Put on wavedashing hacks, and wavedash a lot in real matches vs lvl 9s (no training mode or anything). Show me a wavedashing cpu, and I'll believe cpu's learn. There is no way they could've been patched to know wavedashing or it having been already programmed in. The only way its possible for them to be able to wavedash (with the hacks on of course) is by "learning" it from humans.
 

BanjoKazooiePro

Smash Champion
Joined
Sep 20, 2008
Messages
2,144
Location
Wisconsin
Haha yeah, I think mine learn. Some of my computers will ledge hog me at random times. They also seem to catch on to moves or small combos. I'm not really sure if this is all what they were really were programmed to do, but it could definitely be a possibility.
 

fox219

Smash Journeyman
Joined
Oct 31, 2008
Messages
365
Location
CA
cpu

I've gotten meteor smashed by captain falcon, mario, and zelda cpus. I've also seen meta knight and pit glide but I've already mastered this technique.:dizzy::confused::psycho:
 

fromundaman

Henshin a go-go Baby!
Joined
Sep 26, 2008
Messages
6,416
Location
Miamisburg, OH
NNID
Fromundaman
3DS FC
2105-9186-1496
I don't know. On one hand they do seem to imitate some of the techniques you use, but not all of them, and even those that they do, they still use retardedly.

I have definitely noticed the CPU Ganon, who used to be my most ******** "Doh let's walk into smashes and try to spam wizkick" CPU starting to actually do some gerudo follow-ups and not play *as* retardedly (Like it went from a brain damaged Helen Keller to South Park's Timmy... so still not good >.< ) since I started playing Ganon more seriously.
 

Vv2

Smash Apprentice
Joined
Oct 29, 2008
Messages
104
They have learning AI's in games now...

Its not complicated the CPU records your most frequent actions and when deciding probabilities I.E. your next action it essentially rolls a dice...if u spam A alot in X location in X circumstance there will be a higher possibility on the dice that that will be your next action so it does X line of code but its not so much learning as it is recording your most frequent attack style. it might seem the computer is learning but its just your being repetitive is increasing the probability that Line X will run. The AI may seem like its reading your mind or actually learning something but its not. use a different style of play for a while and it will change probability X. this can be easily chained into the cpu's AI to based its attacks off the same probability I.E. making the cpu seem like it copies your style of play.

For Comparison Only
NHL 2008 ON THE FLY AI is similar
Different Game but Same Principles
http://www.youtube.com/watch?v=QMqBejbOAEs
Might Help You Understand...
 

fromundaman

Henshin a go-go Baby!
Joined
Sep 26, 2008
Messages
6,416
Location
Miamisburg, OH
NNID
Fromundaman
3DS FC
2105-9186-1496
Its not complicated the CPU records your most frequent actions and when deciding probabilities I.E. your next action it essentially rolls a dice...if u spam A alot in X location in X circumstance there will be a higher possibility on the dice that that will be your next action so it does X line of code but its not so much learning as it is recording your most frequent attack style. it might seem the computer is learning but its just your being repetitive is increasing the probability that Line X will run. The AI may seem like its reading your mind or actually learning something but its not. use a different style of play for a while and it will change probability X. this can be easily chained into the cpu's AI to based its attacks off the same probability I.E. making the cpu seem like it copies your style of play.

For Comparison Only
NHL 2008 ON THE FLY AI is similar
Different Game but Same Principles
http://www.youtube.com/watch?v=QMqBejbOAEs
Might Help You Understand...
True, but it seems like the computer uses my techniques more than anything. Example: I was practicing canceled hammer swings as Kirby yesterday trying to get the ISJR to work. I switch characters and find myself playing an AI Kirby: Kirby started spamming a lot more aerial hammers.

I think it just looks at the moves you use often and uses them more, trying to fit them as effectively as their programming allows.
 

Vv2

Smash Apprentice
Joined
Oct 29, 2008
Messages
104
Thats what i am saying

True, but it seems like the computer uses my techniques more than anything.
The Game Designers Probably tied the AI for guessing your actions into the same AI that you fight it would make less code to write if they used the same variable assignments I.E. you use hammer spam 50 million times the computer will both tie the probability that u will use hammer spam into fighting you as it will when it fights I.E. it will use hammer spam. the code for guessing your actions is probably tied in the same argument as for guessing its own(yes the computer essentially guesses its every action it has no master plan) which is good on the designers part. When i say probability i say so because the computer needs to not make the perfect decision every time or you wouldn't be able to beat it EVER which is why the CPU sometimes does things that a human would never do. The coders assigned priorities as per when to do certain actions as you lower the CPU's level you decrease the chance that it will choose the most correct choice
For example When lower level AI is in air+in striking distance
50% hammer spam(based off move frequency usage)
20% Fair
10% Nair
20% Do nothing
A higher level they would merely adjust the probability
70% hammer spam
20% Fair
15% Nair
5% do nothing
(these percentages are obviously flawed and are merely to help others to understand don't take them seriously)
I hope You find this useful...
 

themrskills

Smash Apprentice
Joined
Oct 12, 2008
Messages
183
Location
Closer to the wii every day.
I am almost certain that computers emulate human playstyles if the human playstyles are more rewarding than its preprogrammed playstyle. I main lucas, and now my CPU lucas does SH Nairs and RAR bairs like crazy. My roommate was practicing against a CPU lucas yesterday, and was getting mad because the computer was playing just like me.
 

Prosser

Smash Rookie
Joined
Nov 8, 2008
Messages
3
Location
The UK
Surely if a CPU was made to learn new things, it would require an infinite amount of drive space because it would just keep learning all the time therefore taking up more data space to remember it.
 

Vv2

Smash Apprentice
Joined
Oct 29, 2008
Messages
104
Surely if a CPU was made to learn new things, it would require an infinite amount of drive space because it would just keep learning all the time therefore taking up more data space to remember it.
Prosser I don't Think you understand what I said...It doesn't "Learn" it records the most frequent move usage per character which I assure you takes up almost no memory if i use A alot in X location each map would have assigned areas in order to to notify the cpu of its location the computer can only do about 6-7 actions at any given time. the locations would be measured as instances based on the cpu's distance from map edge's and the center of the map and i can tell you that any given instance say position x,y (the game is 2d for play purposes) would be then measured to the most local location I.E. the closest platform. that is where it would decide its actions from simple lines of code

if on platform then
X code
else measure dist (get x,y)
measure fall rate/Speed
detect enemy/Attack (based on move frequency[See Earlier post] when x dist to x dist from platform and based on the if it has enough time to finish attack before hitting ground the computer will never execute a move it doesn't have time to complete)
Nearest Route To safe landing

(Now that is an example the actual code would be more complicated)

The nearest route to safe landing I Learned by messing around with a cpu doing a series of normal play debugger tests...sad to say this is a little disappointing on the programmers side it allows the cpu to suicide in many ways
(Cruel Brawl and etc is not an example that happens because the computers B-Moves have been disabled and the coders didn't change the code for polygons so the computer thinks it can land safely when it jumps not knowing its B move is disabled) my example is when the area is actually unsafe to land in I.E. there is an attack in progress or Spikes etc
As per why i am disappointed it is because this means the computer will measure to see if there is a place to land before it jumps but not whether or not it is safe For example you can create a custom map

. . . . . . .--------(platform)
. . . . . . .I_I_I_I_I . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . ^^^(spikes). . . . . .
The computer will recognize the spikes as a platform in which it can land before it jumps but not whether it is safe or not (its Not Safe) when you jump off the ledge the computer will follow you and try to attack etc only after said attack will it try to find a safe place to land now this was lazy on the programmers part but the cpu has been told to NEVER touch spikes for any reason So the computer will automatically try to find the next safe location which is the above platform which it is to far to make it to but the computer has been told to use its recovery move any way (this is for ascetic reasons people don't like watching things fall to there death without trying to survive) at which point it will fall to its death I did this little experiment in order to prove the computers AI is only based on measured distances and move frequency
the computer WILL NEVER LEARN to jump on the spikes to survive no matter how many times you do it because falling on spikes is not a move (you don't actually have to land on the spikes you could use pit to fly back etc) So I repeat hopefully for the final time the CPU does not learn it records move frequency and acts accordingly I play pikachu alot and i use Quac+Dair the computer has started to use agility alot more often and down Air but it does not use it out of agility because the move does not actually have enough time to finish the computer will never glide toss or do anything that there technically isn't enough time to do because it doesn't actually copy you it merely records the move frequency
 
Top Bottom