Recall that each player is provided a partial view of the complete plan. For processing, each plan is stored as a list of tuples, representing all materials present in the plan and their links with (1) the materials needed to create them and (2) the tools needed to break them—i.e. nodes (materials) are linked with their children (composite materials and tools) as in the graph representation. The goal material, the root node, is always first in the list. All subsequent nodes are added in a breath first fashion, except in cases whereby a node has already been added to the list (as cycles are allowed). Each material and tool is given a one-hot encoding; mined materials have their children represented as zero vectors, as no other material is needed to make them. Partial plans and their representations are generated from the complete plan by hiding the children of randomly selected nodes—excluding the goal and mines—to depict a lack in knowledge. For encoding, each tuple has the one-hot encodings of (1) the material itself, (2) its parent node, (3) its children nodes, and (4) its associated tool concatenated; the list of tuples are then input to a GRU [1]}, which takes in an input vector of size 81 and has a hidden state size of 32. In the tasks that involve predicting a player's mental state from the perspective of the other player, only the partial plan associated to the other player's point of view is used.
