# Graph Thinking

--

A kind of cognitive framework called *graph thinking* is circulating through the KGC community. So let’s explore this notion. Also, let’s suspend any discussion about technology, for the moment, and talk about **cognition**. Among the people who use knowledge graphs effectively, how do they conceptualize the problem? Ostensibly, when we consider how we think about problems, machine cognition may be able to help. In other words, which portions of the human cognition involved are likely candidates for AI applications?

To frame this, let’s look at two precursors for graph thinking. First, **Seymour Papert** first described *computational thinking* (CT) at MIT in 1980. A more fully developed version is explored in the 2006 article “Computational Thinking” by **Jeannette Wing**. Wing led a program to leverage this for courses at Carnegie Mellon University, and there are excellent resources at the CMU Center for Computational Thinking.

CT provides a structured way of conceptualizing a problem which computing may help to solve. The general approach, in four parts, can be stated as:

**decomposition**: break down a complex problem into smaller solvable problems;**pattern recognition**: identify when a known approach can be leveraged (e.g.,*design patterns);***abstraction**: extrapolate from those patterns into generalizations as strategies;**algorithm design**: articulate strategies as*algorithms*(i.e., as general recipes for how to handle complex problems).

In terms of software development, these steps are related to an earlier notion in computer science called *stepwise refinement*. This can also provide a structured way of developing notes for yourself and your team — which in turn can become the basis for team process, software requirements, and so on.

Second, let’s consider the notion of *statistical thinking, *which **Russ Poldrack** at Stanford explores in *Statistical Thinking for the 21st Century*:

a way of understanding a complex world by describing it in relatively simple terms that nonetheless capture essential aspects of its structure, and that also provide us some idea of how uncertain we are about our knowledge

A central tenet of statistics is that systems involve interconnected processes and variation exists in all processes. In other words, real-world processes are probabilistic. To make effective decisions, we should design a methodology to collect meaningful data and analyze it, so we can quantify the observed variation. We must first understand the variance in the data before we can determine how and when we can draw valid inferences from it. This often occurs in contexts where human intuition tends to fail.

Taking both *computational thinking* and *statistical thinking *together, we have means of approaching complex problems — while embracing and leveraging *uncertainty* — and then apply computing resources for *analysis* and *inference* to find solutions, help make decisions, etc. Another notion — closely related to this combo — is *systems thinking*. Great, but how does all this apply for graph technologies?

Two of our speakers from Knowledge Graph Conference (KGC) 2021, **Denise Gosnell** and **Matthias Broecheler,** recently published *The Practitioner’s Guide to Graph Data*. Check out their first chapter, titled “Graph Thinking,” which they define as:

understanding a problem domain as an interconnected graph and using graph techniques to describe domain dynamics in an effort to solve domain problems

Denise and Matthias also explore a history of *data management *approaches through the decades, evolving toward the contemporary use of graph technologies. A recurring theme within their text is about the need to solve *complex* problems.

Another KGC 2021 speaker, **Dan McCreary** wrote an article last year about graph thinking in the context of *systems thinking*: “The God Graph.” Dan also led the KGC workshop “How Graphs Improve Systems Thinking.” Again, the central theme is about understanding a complex system by representing the relations among its component parts.

**Andreas Kollegger** from neo4j also explored this theme in the 2016 talk “Graph Thinking: Why it Matters.” This provides several deep-dives into the business use cases for graph databases.

More recently, **Jürgen Müller** at BASF and I have been talking about *graph thinking* as a way to bring business stakeholders into this discussion about leveraging graphs. An article called “Sense and Scalability” captures some of what Jürgen and I have been using to these ends. We explore some of the foundations of how people and organizations understand complex systems in the face of uncertainty. In other words, how do individuals and teams *learn* when confronted with a complex, unknown situation?

A good starting point is *How Learning Works* by **Susan Ambrose**, et al., — quite literally, an exploration of the learning theory that describes how people acquire expertise. It’s quite interesting to see how human cognition typically develops as people progress from *novice *to *expert *in a particular subject. This is effectively about how people organize knowledge.

Novices tend to start out by memorizing an unconnected set of simple facts. As they become more adept in a subject, these facts become increasingly connected into more structured cognition. At an expert stage, people typically connect these kinds of cognitive structures into *graphs*. This is especially the case when the experts must understand how to contend with nuances, uncertainty and exceptions to the rules. For sense-making, experts leverage emergent patterns within graph structures.

This is what cognitive psychology plus studies in pedagogy tell us about human cognition — “As we may think,” so to speak. No technology is involved per se. Even so, consider the key phrases used here: *complex systems*, *uncertainty*, *patterns*, *graphs*, etc. Do these sound a wee bit familiar? Yes, quite. Graph technologies are an embodiment of what Ambrose, et al., present, with the added benefit of being something that both people and machines can leverage. It’s no coincidence that artificial intelligence has mimicked this approach of the more organic intelligence.

Of course, that kind of argument may be fine to use when one has the luxury of 1,000 words, plus a dozen or so primary sources. However, when engaging stakeholders, one must obey the discipline of an “executive overview” at its distillate level — which Jürgen and I attempt to present in “The Village” (video) (slides).

It’s something to think about.

Over the next several months, leading up to KGC 2022, we’ll be exploring this notion of *graph thinking* and how this gets applied in business. In particular, we’ll be talking with people in industry who are leading large graph practices to find out more about how their teams *think* about business problems that can be solved by leveraging graphs.

— — — — — — — — — — — — — — — — — — — — — — — — — —

# What’s on Your Mind?

KGC is interested in knowing how we can serve our community better. Please take our survey and tell us what you liked (or didn’t) about KGC’s offerings and events over the last year, and what features you’d like to see in the future. Click here for our survey. Thanks in advance!

— — — — — — — — — — — — — — — — — — — — — — — — — —

# KGC Video Library

KGC has a collection of more than 100 video presentations with featured speakers from our annual conferences and Knowledge Espresso sessions over the last two years. There are sure to be topics you’ll find interesting and useful. Different subscription levels are available, and you can start off with a free trial. Click here to learn more.

— — — — — — — — — — — — — — — — — — — — — — — — — —

**Join our Slack Channels**

KGC Community

KGC Business Partnership

Knowledge Espresso