Sargon Posted April 5, 2002 Share Posted April 5, 2002 QUESTION TO MAT .........,is it like CC..? LETS US HAVE THE REAL GRIT OF IT ... thanks SCOTT The final implementation did not use blackboards. Here's a brief description of the implementation. The Strategic Artificial Intelligence (SAI) in Close Combat (CC) handles the task of creating high and medium level orders for the teams under direct computer control and medium level orders for the teams under player control. Sometimes, a player's teams will be placed under computer control (either by the player clicking the advance or retreat buttons or if the player has not issued an order to a teams for a long period of time) in which case the SAI will also generate high level orders for the player's teams placed under computer control. When creating orders, the SAI reasons only about the teams as a whole--It never reasons about individual soldiers in the teams. In reasoning about locations on the CC map, the SAI divides the map into a square grid. The squares in the grid are referred to as megatiles. The size of a megatile is roughly the size of the smallest square building which can be found on the CC maps (about 18 by 18 meters). High level orders correspond to the orders in the pop-up menu that appear when a player clicks on a team. An example of a high level order would be "Move alpha team from megatile grid location (3,5) to megatile grid location (6,11)." The SAI generates high level orders for the computer controlled squads using information about the current game situation and victory conditions. Player controlled units are given high level orders by the player through the pop-up menu that appears when the player clicks on units under his control. Medium level orders are generated by the SAI to accomplish high level orders at a team level. For the previous example of a high level order, the medium level orders might include "Move alpha squad from megatile grid location (3,5) to megatile grid location (4,6)," "Move alpha team from megatile grid location (4,6) to megatile grid location (5,7)," and so forth. The SAI always generates the medium level orders required to accomplish high level orders regardless of whether the high level orders were created by the SAI or the player. The SAI is comprised of three main systems: the location selector, the path planner, and the target selector. The location selector is used by teams under SAI control for generating high level goals. It determines where the team should be on the CC map. If the team is not at its desired location, the path planner is invoked to determine the medium level movement orders needed to get the team where it needs to be. The path planner can generate paths based on speed, safety, or a combination of the two. Once at its desired location, a team uses the target selector to determine which enemy team (if any) it should attack. When a player gives a move order to a player controlled team, the player's order becomes a high level movement order. The path planner is then invoked to generate the medium level goals to get the team to the specified location. Fire and smoke orders issued by the player are converted to medium level orders indicating that the team should fire at the specified location. A defend order issued by the player invokes the target selector which picks an enemy target for the player's team to attack. The location selector uses a number of criteria for selecting a desired location for a team. First, it determines if the team should just stay where it is. When a tank first sees an enemy tank or anti-tank team, it's most likely to try to get the first shot at the enemy rather than moving on its way. Infantry under intense fire or in a good defensive position tend to stay at their current location as do mortar teams since they like to deploy and stay out of the enemy's line of sight. If the location selector decides that a team should consider moving to other megatiles, it begins a search for the best megatile in which to position the team. Since each CC map contains hundreds of megatiles, the location selector uses a number of heuristics to prune the search space. For example, moving a rifle team into the middle of a large open field is almost always a bad idea. The location selector uses a number of factors to both prune and rank the list of megatile locations being considered. The factors include the defensive benefit of the megatile, the strategic importance of the megatile (is it a victory location), the amount of time it will take to reach the megatile, the amount of danger involved to reach the megatile, and the number of friendly and enemy causualties expected when the team attacks the enemy from the megatile. When dealing with enemy teams, the location selector hypothesizes the location of enemy units rather than cheating by looking at the real positions of teams that it should not be able to see. Gary Riley garyr@atomic.com Gary has provided some interesting additional information concerning why blackboards were not used in CC (and why they won't be used in the upcoming CC2). The reasons seem to boil down, basically, to those evil twins of time and resources.... The designer's note article that mentioned blackboards was written at the very earliest stages of development. At the time, it was not apparent that handling interaction between the low level simulator and the high level AI would be such a difficult task. A lot of effort went into resolving these issues. For example, the simulator determines line of sight to a team by tracing from individual soldier to individual soldier, but the high level AI has to have some type of abstraction which divides the map into locations and provides information about whether a team can fire from one location at another. If the abstraction didn't work well, you'd either have teams moving to locations from which they couldn't attack the enemy and moving out of location from which they could. The solution we ended up with was to iterate over all locations on the map deploying teams into the divided map locations and then have the simulator determine whether a line of sight existed (which took a considerable amount of time). Anyway, we had a lot of issues like these that had to be worked on through almost the entire development cycle, so as the AI was being developed I just used very straight forward approaches to determining team actions (i.e. if the AI can't figure out a location to move to from which a team can attack the enemy, no one is going to care whether the AI uses blackboards or not). In fact, because so much time was spent on getting fundamental capabilities working, a design for using blackboards never got beyond a very high level hand waving stage. It would be nice to chunk the current code and do a complete redesign which utilized blackboards and made use of what I learned from the first attempt since one of the AI's weaknesses is team coordination, but I don't see that happening. So CC2 will use the same basic design as CC1. Gary Commentary: It's interesting to note that after playing up the blackboard technology aspect of CC's AI, Atomic quietly dropped it in favor of a more traditional style AI. One wonders why (and I'm trying to find out)--was the blackboard simply not reliable? too slow? too tough? too dumb? Either way it's a pity they weren't able to make it work, as blackboards offer some promising solutions for making different AIs cooperate. More if/when I get more data. -------------------------------------------------------------------------------- Game: Close Combat 2 Link to comment Share on other sites More sharing options...
Gyrene Posted April 5, 2002 Share Posted April 5, 2002 CM uses a variant of the Steve-o-tronic™ 6000™ Artificial Intelligence system. Fairly similar to the one used in the HAL9000 series computers. Gyrene Link to comment Share on other sites More sharing options...
imported_Hiram Sedai Posted April 5, 2002 Share Posted April 5, 2002 Dont forget the inclusion of the patented Gefingerpoken technology. Link to comment Share on other sites More sharing options...
Muggles Posted April 5, 2002 Share Posted April 5, 2002 Now THAT was a mouthful... ;D Good read though. Link to comment Share on other sites More sharing options...
BeauCoupDinkyDau Posted April 5, 2002 Share Posted April 5, 2002 They scanned Matt's brain and then coded it to the game. That's why the AI won't flank. Link to comment Share on other sites More sharing options...
CMplayer Posted April 5, 2002 Share Posted April 5, 2002 What's a blackboard? Link to comment Share on other sites More sharing options...
Eric Young Posted April 6, 2002 Share Posted April 6, 2002 A blackboard is something on the front wall of a class room a teacher writes on. Wow, what a blast from the past. All I can say is that Gary is a fine fellow, his NASA work hardly ever falls out of the sky. E Link to comment Share on other sites More sharing options...
Juju Posted April 6, 2002 Share Posted April 6, 2002 Someone will be coming along shortly and mention kitchensinks. Link to comment Share on other sites More sharing options...
Michael Emrys Posted April 6, 2002 Share Posted April 6, 2002 kitchensinks. Michael Link to comment Share on other sites More sharing options...
Commissar Posted April 6, 2002 Share Posted April 6, 2002 The AI was taken out of the officers which is the reason for their tendency to rush forward in an attack without any support from the men they command. I guess that sort of models some officer's behaviour in real life (?) Link to comment Share on other sites More sharing options...
Ales Dvorak Posted April 6, 2002 Share Posted April 6, 2002 Originally posted by Gyrene: Steve-o-tronic™ 6000™TM!(What do you mean next time;) ) [ April 05, 2002, 06:14 PM: Message edited by: Ales Dvorak ] Link to comment Share on other sites More sharing options...
Juju Posted April 6, 2002 Share Posted April 6, 2002 Originally posted by Juju: Someone will be coming along shortly and mention kitchensinks. Originally posted by Michael emrys: kitchensinks. MichaelSee? Link to comment Share on other sites More sharing options...
Shadow 1st Hussars Posted April 6, 2002 Share Posted April 6, 2002 AI = Arificial Incompotence? Tactical wise I find CM AI fine, on the strategic side it's no so hot unless on +3 Link to comment Share on other sites More sharing options...
Gyrene Posted April 6, 2002 Share Posted April 6, 2002 Originally posted by Hiram Sedai: Dont forget the inclusion of the patented Gefingerpoken technology.Ah, yes! One must not must not forget the patented Gefingerpoken Kitchensinkian Mnemonic Algorithms! It makes the little figures say "Yes Sergeant!" at the right times. Gyrene Link to comment Share on other sites More sharing options...
CMplayer Posted April 6, 2002 Share Posted April 6, 2002 So what's a blackboard (in the context of AI)? And to all you guys making wisecracks...put it in the can. It ain't no funny no mo. Link to comment Share on other sites More sharing options...
Guest PondScum Posted April 6, 2002 Share Posted April 6, 2002 Originally posted by CMplayer: So what's a blackboard (in the context of AI)? And to all you guys making wisecracks...put it in the can. It ain't no funny no mo.Blackboard is just a metaphor for a big internal scratchspace. The AI system can then use lots of different "experts" (e.g. a targetting expert, a LOS expert, a movement-through-cover expert, etc), each of which generates results/recommendations independently and puts them on the blackboard. Then you have some top-level controller that looks at everything on the blackboard, and decides (based on the various results) which recommendations to follow. The nice thing about a blackboard is that the experts can be completely independent of each other, interacting only through the blackboard (cf the comment about "making different AIs cooperate). The hard part is that because they're completely independent of each other they can't use each other's expertise to make their decisions (cf the comment about "handling interaction"). So it's good for coding something up quickly, but it might be too limited for some applications. Link to comment Share on other sites More sharing options...
Recommended Posts