Table of Contents
Fetching ...

Tree of Problems: Improving structured problem solving with compositionality

Armel Zebaze, Benoît Sagot, Rachel Bawden

TL;DR

This paper proposes Tree of Problems (ToP), a simpler version of ToT, which it is hypothesised can work better for complex tasks that can be divided into identical subtasks.

Abstract

Large Language Models (LLMs) have demonstrated remarkable performance across multiple tasks through in-context learning. For complex reasoning tasks that require step-by-step thinking, Chain-of-Thought (CoT) prompting has given impressive results, especially when combined with self-consistency. Nonetheless, some tasks remain particularly difficult for LLMs to solve. Tree of Thoughts (ToT) and Graph of Thoughts (GoT) emerged as alternatives, dividing the complex problem into paths of subproblems. In this paper, we propose Tree of Problems (ToP), a simpler version of ToT, which we hypothesise can work better for complex tasks that can be divided into identical subtasks. Our empirical results show that our approach outperforms ToT and GoT, and in addition performs better than CoT on complex reasoning tasks. All code for this paper is publicly available here: https://github.com/ArmelRandy/tree-of-problems.

Tree of Problems: Improving structured problem solving with compositionality

TL;DR

This paper proposes Tree of Problems (ToP), a simpler version of ToT, which it is hypothesised can work better for complex tasks that can be divided into identical subtasks.

Abstract

Large Language Models (LLMs) have demonstrated remarkable performance across multiple tasks through in-context learning. For complex reasoning tasks that require step-by-step thinking, Chain-of-Thought (CoT) prompting has given impressive results, especially when combined with self-consistency. Nonetheless, some tasks remain particularly difficult for LLMs to solve. Tree of Thoughts (ToT) and Graph of Thoughts (GoT) emerged as alternatives, dividing the complex problem into paths of subproblems. In this paper, we propose Tree of Problems (ToP), a simpler version of ToT, which we hypothesise can work better for complex tasks that can be divided into identical subtasks. Our empirical results show that our approach outperforms ToT and GoT, and in addition performs better than CoT on complex reasoning tasks. All code for this paper is publicly available here: https://github.com/ArmelRandy/tree-of-problems.

Paper Structure

This paper contains 42 sections, 9 figures, 16 tables.

Figures (9)

  • Figure 1: Overview of the Tree of Problems (ToP) framework for two tasks. On the left (a canonical task consisting of independent subproblems organised in a tree structure), the task is to concatenate the last letters of a list of names, accomplished by breaking the list in two, finding their solutions, and recombining them. On the right (an extension of the canonical structure to handle sequential tasks), the task is to determine the final position of an object after a series of steps. We first find its position after half of the steps, and then determine the final position by tracing the object through the remaining steps. See Section \ref{['sec:method']} for a description of ToP.
  • Figure 2: Per-level accuracy of Least to Most prompting and ToP (match) for Last Letter Concatenation.
  • Figure 3: Overview of ToP (2, 2) for Last Letter Concatenation. The list of words is divided into 2 sublists which are recursively divided into two sublists. The problems at the leaves, which consist into concatenating the last letters of 2-word lists are solved first. The solutions are then merged in a bottom-up way until the main instance is solved.
  • Figure 4: Overview of $ToP~(1, 3)$ on an instance of Tracking Shuffled Objects (three objects).
  • Figure 5: Overview of L2M prompting on Last Letter Concatenation with 4 words.
  • ...and 4 more figures