Some small pokemon may be completely hidden by the mist. But for large ones it is possible to find it using deep learning.
Neural networks may be slow to run, and there is limited time in choosing the path. Therefore the network could be put into a separate thread to not block the main thread.
Also since the pokemon silhouette diversity is limited, a smaller network can be used and therefore it would be faster to run.