IEEE Access (Jan 2020)

Metamorphic Testing of an Artificially Intelligent Chess Game

  • Aisha Liaqat,
  • Muddassar Azam Sindhu,
  • Ghazanfar Farooq Siddiqui

DOI
https://doi.org/10.1109/ACCESS.2020.3024929
Journal volume & issue
Vol. 8
pp. 174179 – 174190

Abstract

Read online

Artificially intelligent (AI) game software incorporates different algorithms to generate intelligent human-like responses to the users playing them. Testing AI game software poses great difficulty because of the complex possibilities that can result at a given point and analysis of said possibilities is a tedious task. Also during software development there are resource constraints due to which testing targets specific parts of the software. An AI game of Chess takes into consideration a large amount of possible outcomes at any given point before deciding a move. Therefore, testing it in its entirety is impractical. In this paper we propose a metamorphic testing approach for testing an AI Chess game i.e. a Chess engine's algorithm of determining and pruning out possible outcomes and ultimately deciding on a final outcome. For validating our approach, we have done error seeding on an open source Chess engine and tested it through our approach. The results for our proposed approach for testing an AI Chess game through metamorphic relations show that it is successful in revealing 71% of the total seeded faults. On comparison of our proposed approach with the existing technique of testing Chess engine i.e., perft function, we have come across situations in which our proposed approach reveals errors overlooked by the existing technique. In the future we aim to extend our approach towards other AI game software.

Keywords