way to encode the underlying graph [ R2 ] and a scalable approach to solving more complex domains [ R3