How about an app that tracks the ball positions and gives advice on the "leave?" Knowing how to optimize for your own fallibility and minimize positional advantages for your opponent if you miss and maximize them for when your aim is good is actually the most important part of the game.
So it learns your strengths/weaknesses then when you're playing uses this information to evaluate each possible shot based on the predicted final position of the ball and how useful this would be to the opponent and your chances of success...
One possible difficulty would be the learning phase - it would have to be able to know your intentions when you take a shot, which would be difficult to guess automatically. I believe it might be billiards where players have to say which ball they're going for - you might have to build that in...