Posted on December 19, 2021
Imagine you want to predict exactly what someone is going to respond to you in a texting conversation. The options are potentially infinite; they could just keep typing forever, until you or they die. But you might not be able to read the text then… that might not count.
So it would probably make some sense to impose a limit on the total length of message that someone would send you, or the total amount of time they spend writing it. Even if that limit is huge (like, they spend the next four months doing nothing but typing their response), there are a finite number of things that the person can respond with.
The number of potential responses is incredibly, mind-bogglingly huge – many many many many many many many orders more gargantuan than the arbitrary upper limit you choose. For each character space we’re considering, you could put a letter, number, special character, another language’s equivalent of all these, an emoji… it’s a big number that gets bigger.
but the number is finite.
From there, it’s just a matter of whittling down to the best options through probabilities.
You can pretty quickly snip off many “text paths” that are completely unintelligible, and those that would be so much work to write that it’s incredibly unlikely that anyone has written the text before – or will ever write in the future. Sure, I might text you 800 emojis in a row, but I’m probably not going to arrange those emojis into an intricate pattern that displays a French translation of the American Constitution. That’s not going to happen, ever (unless I decide to do it now, but that sounds like a lot of work).
You can further prune some branches by somehow “utilizing computers”. If you train a machine to analyze the last million texts that your conversational partner has sent, you could define their typical speech patterns and general texting mannerisms. You could then rule out any paths that, while intelligible, don’t nearly resemble any of these.
You can narrow it down even more by getting another, more powerful machine to analyze how you speak to each other. Tracking these patterns and assigning favorable probability to the paths that resemble them give you an even better idea of the response that’s coming.
Then, you’re nearly done. At some point, though, you do have to go back and multiply your number by some amount because of the probability of typos or other unexpected events, but at this point, you’d be looking at such a smaller number than before that this may seem like a non-factor. You’d also have to consider that they could send you one of those one-in-a-trillion texts that shows the French translation of the Constitution. If they do that instead of just saying “ok lol”, we’re out of luck. But that’s beside the point – we’re trying to get as close as possible, without worrying about the long-tail of rare events.
Of course, this whole time we’ve been looking at predicting exactly what your partner would say. If we loosen that restriction a bit and gather our existing options into branches of similar ideas of meanings, we could probably predict what they would say pretty accurately, or narrow it down to a few main options… so why have a conversation at all?
Generalizing beyond conversation
Conversation is chess – it’s just that the board states are dynamic and the complexity is multiplied by the difference between a pawn and a person. But, if you limit the amount of time that a participant has to make their next move – or say their next sentence – the number of potential states becomes a finite number. You can then whittle down the probability in the exact same way we did above, just with a bigger, faster computer.
Let’s say you had the ability to define essentially every single variable that could affect the outcome of an event (such as, in the consideration of a text you’re sending, how the bowel movements of your cousin could affect how they act towards their aunt who then texts your other aunt who then texts your mom who then calls you and messes up your text-writing flow). If you then determine the most likely outcomes of each of those variables individually, no matter how many there are, then put them all together… you would need a very big computer. But you would get some prediction, or some range of the most probable outcomes.
The future is chess
Maybe it turns out that there are just too many variables – and there probably are, to consider them all. But we are getting closer to the day that we could, in theory, try. And if we had enough sensors, enough data, enough compute power, and enough data scrubbers to do the dirty work, we could try to predict the future – or at least help us guide our actions towards a future that we prefer.
And a future we can all prefer is what we should be moving towards. Probably.