Support Vector Machines

Started by
10 comments, last by Emergent 14 years, 2 months ago
Has anyone ever worked with one of these? They are like a neural network. If anyone has had experience would you reccomend using one? Im thinking about doing a Masters Dissertation on using one of these to collaborate the AI of things like police cars in GTA so the cars dont just ram the player but try to intelligently take you down or bring you to dead ends or the sea or something. They were mentioned to me as a possibility instead of neural networks as they can be too much hassle. Any other suggestions are welcome. Cheers
Advertisement
Wow... there are plenty of techniques for individual and group tactics other than SVMs and NNs. Have you looked into other ideas yet?

Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC
Professional consultant on game AI, mathematical modeling, simulation modeling
Co-founder and 10 year advisor of the GDC AI Summit
Author of the book, Behavioral Mathematics for Game AI
Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play

"Reducing the world to mathematical equations!"

I think that something like an SVM would be at most a very small part of such an AI, and that planning algorithms are the more interesting (and useful) thing to be looking at for this problem. SVMs or the like might be useful to classify certain configurations as "good" or "bad;" then you might plan to reach a "good" or "bad" configuration... I'm not sure that you need the function approximator (which is all an SVM is -- an approximator of boolean-valued functions) in there at all, but maybe it'd be useful to cut down the length of the plans you consider...
Planners, blackboards, variations on bin-packing... all sorts of different ways.

Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC
Professional consultant on game AI, mathematical modeling, simulation modeling
Co-founder and 10 year advisor of the GDC AI Summit
Author of the book, Behavioral Mathematics for Game AI
Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play

"Reducing the world to mathematical equations!"

Its for a dissertation. So it cant be a rehash of ideas out there. Its more for seeing how they would work in the idea. I also like the online learning aspect of SVM. Im still not sure of the application ill be working with. Ive heard Robocup as an idea. Im looking into that. Anyone know anymore
Quote:Original post by discodowney
Has anyone ever worked with one of these? They are like a neural network. If anyone has had experience would you reccomend using one? Im thinking about doing a Masters Dissertation on using one of these to collaborate the AI of things like police cars in GTA so the cars dont just ram the player but try to intelligently take you down or bring you to dead ends or the sea or something. They were mentioned to me as a possibility instead of neural networks as they can be too much hassle. Any other suggestions are welcome.


I have worked on an SVM project, but the other person did most of the SVM work. My perception was that they are needlessly complex, but some people have claimed great success working with them on some applications. I don't think that neural networks need be as complicated as many people make them out to be. Consider my article on simplifying neural network configuration:

http://abbottanalytics.blogspot.com/2006/11/family-recipe-for-neural-networks.html

If you're looking for other modeling tools, there are too many to list. Take a look at the tools listed on KDnuggets:

http://www.kdnuggets.com/software/index.html

If you're looking for other applications, think about data mining. There are several annual competitions and practical, interesting applications abound.
They are definitly NOT like a neural network.

They are simply a linear sum-of-squared classifier made non-linear by using the kernel trick. They can also be used for regression ('curve-fitting') instead of classification. How conveniently can you express your problem in terms or a classification or regression problem?

Neural networks are a representation of a cost (or 'fit', depending on how you see it) function as something closely resembling a polynomial.

I dont see how any of those two have anything to do with collaborative AI. Seems like you want an AI that thinks ahead, which implies some form of planning.
Quote:Original post by Steadtler
[SVMs] can also be used for regression ('curve-fitting') instead of classification.


I'm only familiar with their use in classification... How does this work? Do you use the surface which separates "yes" from "no" as your curve, courtesy of the implicit function theorem? Or is this something else?
Quote:Original post by Emergent
Quote:Original post by Steadtler
[SVMs] can also be used for regression ('curve-fitting') instead of classification.


I'm only familiar with their use in classification... How does this work? Do you use the surface which separates "yes" from "no" as your curve, courtesy of the implicit function theorem? Or is this something else?


You just use a linear regression algorithm with your kernel, instead of a classifier. The biggest difference lies with the support: for classification, you want to consider the points closest to the solution's hyperplane ('inside' the support). For regression however, you want to consider the points that are far enough from the solution ('outside' the support). Obviously in regression you can ignore on which side of the hyperplane a point lies.
Quote:Original post by Steadtler
You just use a linear regression algorithm with your kernel, instead of a classifier. The biggest difference lies with the support: for classification, you want to consider the points closest to the solution's hyperplane ('inside' the support). For regression however, you want to consider the points that are far enough from the solution ('outside' the support). Obviously in regression you can ignore on which side of the hyperplane a point lies.


Oh! Ok! So you're not really talking about SVMs any more; you're talking about applying the kernel trick to a (different) linear regression algorithm...

So, got it; thanks.

This topic is closed to new replies.

Advertisement