{'fraction_non_alphanumeric': 0.019498607242339833, 'fraction_numerical': 0.0, 'mean_word_length': 5.145299145299146, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Opponent Modeling in Machiavelli

Opponent modeling is a technique in computer game-playing which attempts to create a model of an opponent’s strategy. This model can then be used to predict the opponent’s future actions. This paper attempts to apply opponent modeling to the commercial card game Machiavelli, a game containing imperfect information. Neural networks are used to build the models. These neural networks are trained using both the backpropagation algorithm and genetic algorithms. To test this approach, neural network opponent models are trained on a number of bot strategies. Some promising results are obtained. However, both methods of training are currently unfit for use in practical applications.