A method for decision tree based recommendations with improved computer memory performance achieved through minimized memory utilization comprising:
- storing an array of flag bits using single-bit logic to record which textual prompts from a set of possible textual prompts correspond to a first subset of textual prompts, wherein the single-bit logic improves computing efficiency through minimizing the memory utilization for the representation of each textual prompt to a single data bit;
- accessing the array of flag bits to determine the first subset of textual prompts;
- providing, via a user interface, a user device with a series of initial textual prompts from the first subset of textual prompts;
- receiving responses to the series of initial textual prompts, said responses entered into the user interface;
- storing the responses to the series of initial textual prompts;
- determining additional textual prompts, from the set of possible textual prompts, to provide to the user device based upon the responses to the series of initial textual prompts, where predefined relationships between responses and the set of possible textual prompts are used in determining the additional textual prompts;
- providing the user device with the additional textual prompts via the user interface;
- receiving responses to the additional textual prompts;
- storing the responses to the additional textual prompts;
- determining a think-ahead textual prompt to provide to the user device based at least in part on at least one of the received responses to the additional textual prompts, wherein the think-ahead textual prompt is determined without use of predefined relationships between responses and the set of possible textual prompts, and wherein determining the think-ahead textual prompt at a first time provides efficient decisional operation compared to determining the think-ahead textual prompt closer in time to when that query will be provided to the user device, said decisional operation reflected by the fact that the first time for determining the think-ahead textual prompt is closer in time to when the responses to the additional queries, used in making that think-ahead determination, were received;
- providing the user device, via the user interface, with an intervening textual prompt after the think-ahead textual prompt has been determined, the intervening textual prompt different than the think-ahead textual prompt;
- receiving a response to the intervening textual prompt via the user interface, wherein the response to the intervening textual prompt does not affect the previously-made determination to provide the user device with the think-ahead textual prompt;
- storing the response to the intervening textual prompt;
- providing the user device, via the user interface, with the think-ahead textual prompt without requiring, after the providing of the intervening textual prompt, memory retrieval of the responses to the additional textual prompts upon at least one of which the think-ahead textual prompt was based at least in part upon;
- receiving a response to the think-ahead textual prompt via the user interface;
- storing the response to the think-ahead textual prompt;
- determining a recommendation based at least in part on the responses to the series of initial textual prompts, the responses to the additional textual prompts, the response to the intervening textual prompt, and the response to the think-ahead textual prompt;
- generating a natural language note reflecting the responses to the series of initial textual prompts, the responses to the additional textual prompts, the response to the intervening textual prompt, the response to the think-ahead textual prompt, and the recommendation;
- and
- providing the natural language note to the user device via the user interface,
- wherein the method is performed by one or more computer hardware processors.