I recently saw Stephen Wolfram give a great talk where he mentioned that Alpha correctly answers more than 90% of all questions. My guess is that this number is artificially high because people have learned what sorts of questions Alpha is good at and don’t bother asking it questions that they know it can’t answer.
I personally get most frustrated when I know Alpha knows an answer, but I can not trick it into telling me. For example…
Q: how long do I have to run to burn off a cup of oatmeal?
Here, Alpha’s answer is totally hopeless even though I know it knows all the necessary facts. I just wish that I would tell Alpha how to answer a question like this, both so that it would give me the answer I want but also so that it would be then be able to answer this type of question if anyone else asked it.
How can you expand the realm of questions that Alpha can correctly answer?
Unfortunately, as productive and brilliant as the Wolfram employes are, they will never have to resources to do everything. Compounding that, they do not have an empirical way to prioritize their efforts. What work should you do next? They should consider measures like…
- how hard is the work? Will it take a summer intern one hour, or a team of PhD’s a month?
- how much does the work expand the number of answerable questions? Will the work make a whole new class of questions answerable, or just make it possible to use a different form to an already answerable question?
- how valuable are the questions the work would make answerable? The ability to answer “How many fingers am I holding up?” may not have as much value as being able to answer “What is the structure of a protein that is able to selectively block the absorption of carbohydrates?”
Wolfram is in a pretty good position to estimate how much effort it might to to add some functionality to the system, but the other two are much harder and they are critical. There is no way currently for Wolfram to be able to expend the correct amount of effort in the correct places to improve the system with maximal efficiency. They just don’t have either the resources or the information they would need.
Markets are the answer
Markets are great at solving problems like this. They can prioritize problems based on which solutions would provide the most total value, and then provide the incentives to for people to actually create these solutions. They even encourage solutions to come from people in a position to most efficiently supply them.
For markets to work, each question needs to have a time-value associated with it. This quantifies how important and urgent the question is.
Some questions might not be very valuable to any one person, but they are a little valuable to lots and lots of people over and over again. There might be 100 million people willing to pay $0.05 every day for the answer to “What is the weather?“
Some questions might be extremely valuable to one person, one time. There might be a forgetful user willing to pay $100,000 for the answer to “What is a password that would match the following hash?”
And everything in between.
Every answer also needs a time-value. This quantifies how difficult and time consuming generating the answer is.
Q: “What is fastest way to get to New York City from Heathrow Terminal 1?” Time-value: $50 for an answer in the next 60 seconds, otherwise $0.
Q: “What are the prime factors of this 512 digit number?” Time-value: $250 for an answer today, $249 tomorrow, $248 the next day, etc…
Once you capture the time-value of questions and answers, the more valuable a questions is the more likely it will be answered, and answered quickly. Just as importantly, questions that are not worth the effort will not get answered.
Note that questions need not come before their answers. I should be able to enter an answer into the system at any time along with a price, and my answer will sit there until someone asks the matching question- assuming that the price they are willing to pay for the answer is less than or equal to my price for the answer.
I should also be able to offer answers to a whole class of questions, not just individual ones. I might offer to answer any question in the form of “What is the interest rate for a ___ year loan?” where the blank can be any number from 1 to 30.
I further should be able to offer answers that are compiled by combining the answers from sub-questions that I don’t necessarily know how to answer. I might offer to answer the question “Which has a lower interest rate between a 10 year or 30 year loan?” by myself asking the two questions “What is the interest rate for a 10 year loan?” and “What is the interest rate for a 30 year loan?”and then answering based on the answers I got. This would only be worth doing if the value of the question I was answering was more than the cost of the sub-questions (plus hopefully a little extra for me to keep for my effort of putting them together).
How would this work on Alpha?
This market approach could be practically implemented on Alpha by adding a few features.
First you need to be able to time-value questions. This could be as simple as adding a button on the Alpha results page that basically says “This is not the answer I was looking for, but I would be willing to pay”…
This immediately gives Wolfram a metric to prioritize on. They could also add a “Most Wanted Questions” gallery to the site so users could see and vote for the most popular and valuable open questions.
Next they could create a way to supply external answers to open questions. This could start as simply a “I know the answer!” button added to the open questions gallery. Users could click on the button and enter an answer.
So far this is a lot like uClue, but different. On uClue, once a question is answered- it is over. There is no incentive to answer questions that might have a low value but are very popular so lots of people want the answer. Also, there is no way to systematically answer questions- you have to wait for a specific question to be asked and then answer it.
With Alpha there is the possibility to answer a whole class of questions rather than just a single instance of a single question. This would require way to to submit “Answer Filters” into the Alpha system. The “Answer Filters” would likely come in the form of Mathamatica programs (Alpha uses Mathamatica internally) and would take the form of “I can answer questions that that a certain form, and I am willing to do so for these prices.”. Note that a Mathamatica program has full access to the internet, so an answer filter could potentially connect to an external web service to get any external data needed and not be constrained to the (amazingly rich) resources available in Mathamatica or Alpha. Wolfram almost certainly already has a of doing this internally, so it would be a matter of opening it up and adding some functionality.
Now every time Alpha gets a question, it can offer it to any and all of the Answer Filters in the system that claim to be able to solve it. Since people only pay for answers that they deem to be correct, the system can sort the matching Answer Filters with the cheapest and most likely to be right answer is listed first. This very similar to the way Google sorts AdWords ads – the top ad is not the one with the highest bid nor it is the one most likely to be clicked, but instead an optimization of both of those factors.
As more people offered to pay for answers, more people would create “Answer filters” able to provide them- especially for valuable and popular questions. As more Answer Filters are added to the system, the Alpha system would become more and more capable and attract more users. Growth is no longer limited by Wolfram’s resources – the growing userbase is now helping guide Alpha to learn exponentially more and more in exactly the places where it will be most useful.
There is friction with trying to actually get money from people asking questions, especially for questions with relatively low prices but that are still valuable because they get asked very often. In these cases, advertizing revenue might be a way to compensate the answer filter creators. Alternately, Wolfram Corp. could just pay “answer bounties” themselves out of a pot, similarly to the way Amazon makes free books available with their Kindle Selects program. This strategy is based on the idea that the long-term value of having a vibrant system with lots of answer filters is worth shelling out some cash now.