
www.Usenet.com
| <-- __Chronological__ --> | <-- __Thread__ --> |
On Mon, 03 Nov 2003, Eternal Vigilance <[EMAIL PROTECTED]> wrote: > > Assumptions: Options are relatively equal > How many games these days have no additional modifiers that effect the > success/failure (ie-whether is underwater, or if char has his 'Hat Dear Nordic God, You are of course correct. All actions are context-sensitive. When shooting a basketball, two options are to go for the two-point or three-point shot. Other options include eating a sandwich (acceptable at lunch), taking off your clothes (acceptable when showering) and throwing up (acceptable when "partying"). But we don't and the player don't consider those options because they are not appropriate within the current context Something i want to stress and something i picked up over the last 4 years of doing AI stuff - AI in academia traditionally focuses on a single one-size-fits-all general purpose algorithm that does everything. Be it rule-based expert systems or "neural" nets or genetic algorithms or Bayesian networks, it's all about a single technique used in a single straight forward way. Some decently good work has been done on hybrid systems, but not enough of it in my opinion and the work that was done is rarely if ever presented in AI text books or classrooms There is probably no parallel to AI's approach in the real world. When building a house, there are screws, nails, staples, glue and hexagonal sockets. Electrical, plumbing and framing are all handled with different tools and different techniques. Your brain is the same way. The eye has separate modules to find color, lines and depth. There's an object recognition module for faces and a separate one for everything else. You have more than a dozen different memory centers - working, procedural, short term, general declarative, self-referential declarative, exemplar situational, situational, emotional situational, etc. Lots and lots and LOTS of little specialized parts, just like in your car, computer, operating system, company, etc. The technique described here, the matching law, is like a nail or a hammer. It's good for certain, specific situations, situations that are common but hardly in the majority. If we were building a lego person, the matching law would be single lego. You'll need a whole lot of other stuff to make a human-like NPC i tried to come up with a short, easy to understand format/template that told all the important information up front. My buddy Darrin says it looks like the format used to describe design patterns. i listed it as a medium-level detail - not as low as information culling via habituation and not as high as goal-directed behavior. Under assumptions i listed that there needed to be a limited set of actions, all of which are of relatively equal value So what could i have done better? Under assumptions, i could have listed that the context needs to have already been determined and that the actions are relatively equal under the given situation. Or perhaps better, i could have shown a hierarchy of cognition and where this fits into it. Of course, then i'd have to actually know where it fits, and obviously i don't :) i'm not sure if i mentioned it originally, but when tracking the success and failure of a given action, it needs to be done in a given context. Shooting two-pointers in a game is easy because that's the only state/context they're ever in (well, OK, they need to be in the holdingBall state). In an FPS, the important context is a combination of spatial considerations (enemy is in a small room, far away, etc.) and whether you have friends there (or have friendly fire turned off). i made zippo detail on how to determine your current context. So either the designer has to hard code this or it can be keyed to the current state (i'm assuming the game has a state machine or two). Or even better, somebody else can write a trick for the bag of tricks so i don't have to do it :) If i ever stop being so damn busy and/or lazy, i'll add a form on my Web site so people can type in their little tips and tricks. That way you guys can do all the work and i'll like take all the credit ;-) -b
| <-- __Chronological__ --> | <-- __Thread__ --> |
Please check out one of the premium Usenet Newsgroup Service Providers below for access to Usenet.