Oleksiy's Problog Agent Analysis¶
Libraries¶
from analyse import analyse, analyze_inference_and_actions
FightingICE's Mcts Agent vs Oleksiy's Problog Agent¶
analyse('stats_k3/match-*.json')
Win Rate: 98.33% ,Loss Rate: 0.00%
Analysis of the Agent Performance, Pt. 1
The ProbLog agent demonstrated remarkable effectiveness again, winning 98.3% of all matches, with 71.7% being landslide victories (winning all three rounds). This represents a significant but not complete dominance over the game MCTS opponent.
In comparative assessments against Marco's agent, the game's default agent exhibited superior performance across multiple metrics. Notably, the default agent consistently inflicted higher damage, secured a greater number of match victories, and presented a more formidable challenge to our agent.
Combat metrics show the ProbLog agent dealt approximately 300 units of damage per round, while the MCTS agent averaged around 200 units. The damage efficiency distribution (boxplot) reveals that most exchanges resulted in a damage ratio between 1.5 and 2.0, with some exceptional rounds reaching up to 7.0, indicating moments of particularly effective combat performance.
Action usage analysis reveals a highly skewed distribution, with the most frequent action being executed over 40,000 times same as with Marco's, followed by a sharp decline in usage for other moves. This suggests that the action CROUCH_FB
is the most efficient to inflict damage, gain energy and win the games.
The round duration histogram shows an interesting bimodal distribution centered around 800 and 1000 time units, suggesting two distinct types of round conclusions: quick victories and more prolonged exchanges.
The temporal damage analysis (bottom graph) reveals dynamic combat patterns where the ProbLog agent (blue line) consistently maintained higher damage output compared to damage received (orange line). Notable fluctuations in both lines suggest active exchanges rather than one-sided dominance, though the ProbLog agent maintained tactical superiority throughout most encounters. Furthermore, the plot indicates the occurrence of rounds characterized by minimal damage inflicted by both agents. This observation suggests a potential pattern of cautious or avoidant behavior.
analyze_inference_and_actions('stats_k3/match-*.json')
,Detailed Statistics: ,Action Mismatch Rate: 100.00% ,Average Inference Time: 0.0302 seconds ,Median Inference Time: 0.0246 seconds ,Total Actions Analyzed: 132878
Analysis of the Agent Performance, Pt. 2
The inference time distribution (first plot) demonstrates highly efficient decision-making, with a median inference time of 0.0246 seconds and an average of 0.0302 seconds, showing slightly better performance than against the Marco's agent.
The time series (second plot) encloses approximately 120,000 actions, double the scale of our previous results. The temporal pattern exhibits consistent performance throughout extended gameplay sessions, with no significant degradation in response times, again. While the plot shows periodic spikes reaching up to 0.35 seconds, these represent a smaller fraction than the previous plot of total actions and don't substantially impact overall agent responsiveness.
The action analysis reveals interesting patterns in both inferred and executed moves. The executed actions (green plot) show "CROUCH_FB" as the dominant strategy with over 40,000 executions, while the inferred actions (red plot) show an even stronger preference for this move with approximately 60,000 inferences. This behaviour is consistent throughout multiple agents. A comparative analysis of inferred actions between matches involving Marco's agent and the game's default agent reveals the adaptive capacity of our bot to adjust its strategy based on the opponent's playing style. The FightingICE default agent exhibits a greater tendency toward aerial combat, frequently jumping and executing maneuvers in the air. In response, our agent demonstrates a corresponding increase in the selection of both aerial actions and anti-air countermeasures, indicating an adaptive response tailored to the opponent's preferred tactics.
During our evaluation, we observed a specific challenge in our agent's predictive capabilities. It exhibited difficulty in anticipating opponent jump actions, frequently selecting the 'CROUCH_FB' action, which is ineffective against airborne opponents. This limitation highlights an area for potential improvement in future iterations of the agent's decision-making logic.