SAT-Powered Preferences: Mining Social Media for Logical Recommendation
System for Building and Analyzing Preference Models Based on Social Networking Data and SAT Solvers
The paper introduces a novel automated system for building and analyzing user preference models by mining social networking data (Facebook and Twitter). It uniquely combines NLP techniques like LDA and Bag-of-Words (BOW) with sophisticated Boolean Satisfiability (SAT) solvers to match user interests with commercial offers.
TL;DR
Researchers have developed a system that harvests social media data from Facebook and Twitter, converts user metadata into logical keywords using NLP, and employs SAT (Satisfiability) solvers to mathematically "prove" which commercial offers best suit a user. This moves recommendation logic from simple "people also liked" heuristics to rigorous logical matching.
Background & Motivation: Moving Beyond Surveys
In the era of Smart Cities and proactive AI, understanding what a user wants before they ask is the "Holy Grail." Traditionally, this required intrusive surveys. The author argues that our digital footprints—likes on Facebook, tweets on Twitter—are a "priceless source of information" that is both easily accessible and reflective of true behavior.
The technical challenge lies in the reasoning. Most systems use statistical proximity (Collaborative Filtering). This paper proposes a transition to symbolic AI, where preferences are treated as variables in a complex logical equation that a computer must solve.
Methodology: From Social Posts to CNF Formulas
The system architecture is divided into three distinct phases: Data Acquisition, Preference Modeling, and Logical Reasoning.
1. Data Harvesting and NLP
Using the Facebook Graph API and Twitter API, the system captures liked pages and recent posts. To turn this raw text into meaning, it uses:
- Bag-of-Words (BOW): To count frequency and significance of terms.
- Latent Dirichlet Allocation (LDA): To categorize these words into broader topics like "Sport," "Transport," or "Food."
2. The Logic Engine (SAT4J)
This is the core innovation. Every offer (e.g., a hotel stay) and every user preference (e.g., likes skiing and coffee) is converted into a logical formula.

The system uses MaxSAT solvers. Unlike a standard SAT solver which only looks for a TRUE/FALSE answer, a MaxSAT solver looks for the substitution that satisfies the maximum number of conditions. This allows the system to recommend an offer even if it doesn't meet 100% of a user's criteria, effectively "ranking" the best possible matches.
Experiments and Results
The paper provides a proof-of-concept using various categories such as Nature, Dwelling, and Transport. For instance, a user who frequently tweets about "mountains" and "walking" is modeled as:
P = mountains ∧ walking
When compared against three different offers—a "Ski Station," a "Mountain Trip," and a "Beach Tournament"—the MaxSAT solver identifies the "Ski Station" as the highest logical match.

The logic allows for complex exclusions as well. For example, if an offer specifically includes ¬airconditioning, a user who requires air conditioning will be logically excluded by the solver, ensuring higher "quality" in recommendations compared to fuzzy statistical models.
Critical Analysis & Conclusion
Takeaway
The integration of SAT solvers into the recommendation pipeline brings a level of precision and mathematical rigor that is often missing from black-box neural network models. It allows system administrators to set hard constraints and rules that the AI must follow.
Limitations
- Cold Start & Data Privacy: The system relies heavily on API tokens and user consent, which are increasingly restricted by social platforms.
- Scalability: While SAT solvers have improved, solving CNF formulas for millions of users and millions of offers in real-time remains a significant computational hurdle.
Future Outlook
The author suggests that the next step is incorporating more advanced logical schemes like deductive reasoning and modus ponens. As Smart Cities become more context-aware, using logic to negotiate between the needs of thousands of agents (users) and city resources will be a critical field of study.
