Frankly's matching algorithm creates balanced discussion groups by matching participants with different perspectives based on their responses to a set of binary (e.g. yes/no) questions.
For example, if some participants prefer dogs while others prefer cats, the system will ensure they're mixed together rather than clustered with like-minded peers.
Contents:
General Guidance
- Use binary-outcome questions. While questions can have multiple answer choices, they should map to two algorithmic buckets (e.g., options 1/1B vs. 2/2B/2C).
- Choose meaningful dimensions. Select topics relevant to your event's purpose where diverse perspectives add value. For example, if gender is relevant to your discussion topic, make sure you have a matching question for it.
- Ensure questions differentiate. If most participants answer a question the same way, it won't help create diverse groups.
- Balance your buckets (usually). In most cases, good matching questions should split participants somewhat evenly between the two algorithmic buckets, unless you specifically need to ensure each group has at least one person with a particular characteristic.
- Consider demographic sensitivity. For demographic questions, ensure all participants have comfortable answer options while maintaining the binary algorithmic structure.
- All questions are weighted equally. If ensuring diversity along a specific metric is extremely important, you can either make it the only matching question or include multiple questions measuring similar dimensions (e.g., asking both democrat/republican and liberal/conservative).
- Aim for 3-5 questions. This typically provides enough data points for effective matching without overwhelming participants. You can have up to 8.
- Phrase neutrally. Word questions to avoid implying a preferred answer.
- Questions must be answered. Matching questions cannot be skipped. If you include a "Prefer not to answer" option, you must decide which algorithmic bucket (1 or 2) those responses belong to.
- Avoid neutral middle options. Questions with a middle option (e.g., "Somewhere in between") tend to attract too many responses, making them ineffective for matching. Force a choice between clear alternatives.
How the Matching Algorithm Works
Caution: Nerdy 🤓
The algorithm uses a distance-based approach to form diverse groups. First, it identifies participants with identical answer patterns and places them in the same "bucket." It then calculates how different each bucket is from every other bucket using Hamming distance (counting the number of different answers).
To form groups, it constructs a graph where similar answer patterns are connected, then uses breadth-first search starting from the largest buckets to create clusters of diverse participants. The algorithm prioritizes pairing participants whose answer patterns differ by an ideal threshold, ensuring meaningful diversity while avoiding extreme differences that might hinder productive conversation.