• Request a Demo

Defined Learning (formerly Defined STEM) Homepage

Educators Blog

difference between problem solving and problem finding

Problem-Solving or Solving Problems?

By Carolyn Marchetti,

In both math and science, problem-solving is a critical skill.  It is a process that students will use throughout their schooling, work life, and beyond.  By developing problem-solving skills, our students not only learn how to tackle a math or science problem but also how to logically work their way through any types of problems that they face.  Our textbooks include word problems after every lesson – so this incorporates problem-solving skills, right?  Not necessarily.

I was at a conference over 10 years ago and heard a presenter say, “Problem-solving is what you do when you don’t know how to solve a problem”.  Solving problems, like the typical word problems found in our texts, on the other hand, is applying a known method to a problem that has already been solved before.

Here’s an example of how the majority of textbooks phrase a lesson — “Today we are going to learn how to multiply fractions.  Here are the steps to multiplying 2 fractions.   Here are some non-contextual examples to hone your skill”.  Then most follow with ‘real-life’ word problems which, more times than not, involve fractions that require multiplication. This is a routine of practicing skills.  I’m not saying that this isn’t important, just that problem solving is much more than this.

As teachers, we need to know the differences between the 21st-century skill of problem-solving and the traditional way of solving problems, and we especially need to learn how to recognize and even create true problem-solving experiences for our students.

I would like to give some tips on creating a problem-solving classroom by using an example of a task that I used when doing professional development with math teachers. The task is called The McDonald’s Claim Problem.  There are several versions of this task on the internet, but basically, it goes like this:

  • Wikipedia reports that 8% of all Americans eat at McDonald’s every day.
  • There are 310 million Americans and 12,800 McDonald’s in the United States.
  • Do you believe the Wikipedia report to be true? Create a mathematical argument to justify your position.

Tips on creating a problem-solving classroom:

  • Engage students in real-world problems that students can relate to and have a prior understanding of.  For McDonald’s, it was an interesting problem because it engaged students in prior learning – they’ve all been to McDonald’s and have all used Wikipedia.  For other tasks, videos can be used to spark interest.  For example, Dan Meyer’s 3 Act Tasks are one way to spark interest.  Another suggestion is to use a career video like the Defined STEM videos that are included with each performance task.  These videos grab students interest by answering the question of “When will I ever use this?”.
  • Use group work for problem-solving. Students can frequently help each other, and talking about a problem helps them think more critically about the steps needed to solve the problem.  By discussing the problem, students will start to realize that problems have multiple solution strategies, and some may be more effective than others.  For the McDonald’s problem, I would have teachers work in groups of 4-5. There would be many discussions among the members before even starting the task. Discussions around what does “eat at” mean?  Does the drive-through count?  Does the question mean the same 8% eat there every day?  These questions and discussions had teachers brainstorming ideas before deciding on a course of action to solve the problem.
  • There should not be a direct path to the solution.  Even better if there is not one right answer, like the McDonald’s problem, but these are harder to find.  Monitor student progress and solutions.  When they get stuck, answer their questions with other probing questions.  When the math teachers would ask me questions regarding the McDonald’s problem, I would always come back with “What does your group think?”, to encourage them to collaborate and come to a consensus.
  • Have students share their solutions. When everyone is finished, have groups present their solution to the others, especially the ones that went about the problem in different or unique ways. Having the groups share their solutions and justifications is very important for others to see various ways of problem-solving. For the McDonald’s problem, even though groups often used calculations to solve the problem and would get the same numbers, many had a different answer of “yes or no” depending on their reasoning. Hearing the different reasons from other groups can be very enlightening.  I heard a lot of “I never thought of it that way”, which is a powerful aspect of problem-solving.

There are many other tips I can give, which I will continue in a later post.  For now, I would like to leave you with a quote from a colleague: “It is better to answer 1 problem 5 different ways than to answer 5 different problems”.  In one short sentence, that is the difference between problem-solving and solving problems.

Subscribe

Subscribe to the #1 PBL Blog!

Receive new articles in the world of Project Based Learning, STEM/STEAM, and College & Career Readiness. 

  • Project-Based Learning (370)
  • STEM/STEAM (170)
  • College and Career Readiness (56)
  • Professional Learning (52)
  • Career-Connected Learning (38)
  • Social and Emotional Learning (38)
  • Computer Science (16)
  • Assessment (6)
  • Highlights (6)

Subscribe to our blog

difference between problem solving and problem finding

  • Onsite training

3,000,000+ delegates

15,000+ clients

1,000+ locations

  • KnowledgePass
  • Log a ticket

01344203999 Available 24/7

difference between problem solving and problem finding

Problem Solving and Decision Making: Key Differences & Applications

Explore the nuances of solving complex problems and making intricate decisions in this insightful blog. Gain a deeper understanding of the key distinctions between them. In this blog, explore Problem Solving and Decision Making, their key differences and how to apply these abilities in the workplace. Let's dive in!

stars

Exclusive 40% OFF

Training Outcomes Within Your Budget!

We ensure quality, budget-alignment, and timely delivery by our expert instructors.

Share this Resource

  • Introduction to Management
  • Introduction to Managing People
  • Senior Management Training

course

Have you ever faced the trouble of deciding what is right or wrong? In our daily lives, we often come across situations that require us to confront challenges and make choices. This is why two critical cognitive processes are involved in addressing these situations: Problem Solving and Decision Making. While the terms are frequently used interchangeably, they represent distinct mental activities with specific objectives. Problem Solving involves identifying and resolving issues using critical thinking and creativity. On the other hand, Decision Making entails choosing the best course of action among alternatives and considering risks and rewards. In this blog, we will Learn the differences between Problem Solving and Decision Making, how to apply these abilities at work, and some advice on how to improve them.

Table of Contents 

1) What do you understand by Decision Making? 

2) Understanding Problem Solving 

3) What are the differences between Problem Solving and Decision Making?

4) Tips on how to improve Problem-solving and Decision-making skills

5) How can you integrate Decision Making and Problem Solving? 

6) Conclusion 

What do you understand by Decision Making? 

It is a hard choice when we are faced with the question to make important decisions, in organisational setting and personal life as well. Nevertheless, it is not a reason to be afraid, but rather, to master these tasks through comprehensive knowledge of their consequences. First, we should define Decision Making before going on to the difference between Decision Making and Problem Solving.

It is an intellectual process that has a direct impact on our everyday and work-life matters. It is the process of analysing different options to find the best one in line with various factors and the one that is going to meet the objectives.

Effective Decision Making combines Critical Thinking, analysis, and judgment, and it can be the determinant of outcome and consequences. Let's uncover the important steps to Decision -making and some real-life examples:

Steps of Decision Making

1) Evaluation of alternatives: The first step in Decision Making requires the identification of problems and conceptualisation of possible alternatives that can help to deal with the given situation or problem.

2) Rationality and objectivity: The correct Decision Making process consists of a detailed analysis of all the data that is accessible, assessing the pros and cons of each scenario, and selecting a logical and beneficial option. 

3) Heuristics and biases: Sometimes, it is possible that you may have mental heuristics to be quick in the decision process. However, biases may be introduced by shortcuts and suboptimal choices could become inevitable for you.

4) Decision Making under uncertainty: Some times, you have to make important decisions based on the information that is not complete or with determined assumptions. The risk is directly connected and making risk assessment is considered to be the answer to this question. You must enhance on your flexibility to address the unpredictable.

5) Group Decision Making: In collaborative contexts, people may arrive at a decision together having discussed, brainstormed and found a common consensus with one another. Such a method taps into the different perceptions and skills.

6) Strategic Decision Making: In organisations, Strategic Decision Making requires being concerned with the possible long-term implications, aligning decisions with organisational goals, and trying to anticipate potential impacts on stakeholders.  

7) Ethical considerations:  This involves assessing the moral implications of choices, decisions, and actions. It revolves around making the right and just choices, guided by one's ethical values and principles.

8) Learning from outcomes: As an effective decision-maker, one should have the audacity to learn from both successful and unsuccessful outcomes because learning from these will only enhance future Decision Making processes. 

Here are some real-life examples that may require you to make some justified decisions: 

a) Choosing between two job offers based on salary, benefits, and career prospects. 

b) Deciding which college or university to attend, considering factors like location, courses offered, and campus culture. 

c) Selecting an investment option after analysing risk, return potential, and financial goals. 

d) Determining the best marketing strategy for a new product launch, considering target audience, budget, and competition. 

e) Making a medical treatment choice for a patient after weighing the benefits, risks, and patient preferences.   

Problem Solving Course

Understanding Problem Solving  

You're now aware of how you can make effective Decision Making. Let us now learn how to effectively carry out Problem Solving tasks in our daily life. Problem Solving is a fundamental cognitive process that entails identifying challenges, finding solutions, and accompliching the set goals. 

It is a logical process aimed at knowing the problem, looking for possible solutions, and choosing the most efficient solution. This helps you to navigate complexities and arrive at successful conclusions. Let us now look at some tips that can help you in Problem Solving effectively:  

Steps to be efficient in problem Solving

1) Problem identification: As a first step towards Problem Solving, effectively carry out tasks. Also, recognise and define the issue or challenge that needs to be addressed.  

2) Data gathering: Gathering relevant information and data related to the problem is essential for understanding its root causes and implications. This helps you become a good problem solver. 

3) Analysis and diagnosis: Analyse the gathered information to identify the underlying causes of the problem. This helps you in devising targeted solutions. 

4) Solution generation: Brainstorming and generating multiple potential solutions is crucial for you when you are exploring diverse approaches to resolve the problem. 

5) Evaluation of alternatives: Carefully evaluate the pros and cons of each solution. This helps you in selecting the most feasible and effective one. 

6) Implementation: After choosing a solution, you have to put the chosen solution into action. This requires planning, coordination, and effective execution. 

7) Creative thinking: Sometimes adopting an open-minded view towards finding a solution to the challenging situations will encourage you to be creative.

8) Root cause analysis: Finding and tackling the cause behind the problem in itself can make a change that lasts and you will get a much better, sustainable solution to your problem.

Let us now see some real-life examples where you need to apply your Problem Solving skills: 

a) Resolving a technical issue with a computer by identifying and troubleshooting the actual cause of the problem. 

b) Finding an alternative transportation route when faced with unexpected road closures. 

c) Addressing a communication breakdown within a team by facilitating open discussions and conflict resolution. 

d) Solving a math problem by applying various Problem Solving Techniques and mathematical principles. 

e)  Fixing a malfunctioning appliance by diagnosing the issue and performing necessary repairs. 

Learn to be more Mindful when you are applying your Problem Solving skills with our Conflict Management Training .  

What are the differences between Problem Solving and Decision Making?

Let us now have a look how Problem Solving and Decision Making skills are different from each other:

 

 

 

 

Selecting from available alternatives to achieve a specific goal or outcome. 

Identifying and resolving an issue or challenge to reach a desired state. 

 

Making a choice among options. 

Finding a solution to a problem

  

Choosing the best course of action. 

Understanding the problem and generating potential solutions

 

Evaluating alternatives, considering risks and rewards. 

Identifying the problem, gathering data, analysing, and implementing solutions. 

 

Often involves a logical and systematic approach. 

Requires critical thinking and creativity. 

 

It involves available information and past experiences. 

Data and insights related to the problem at hand. 

 

Leads to a final decision. 

Results in a resolved problem or improved situation. 

 

Often applied to challenges or obstacles in various domains. 

Troubleshooting technical issues and finding solutions to production problems. 

  Decision Making may follow effective Problem Solving.  Effective Problem Solving often leads to better Decision-making. 
  Applicable to a wide range of situations.  Often applied to challenges or obstacles in various domains. 

1) Definition  

Problem Solving is a step-by-step approach that one uses to identify, analyse, and finally come up with the solution to the issues or challenges they face. It seeks to find the origin of a problem, generate possible ideas or solutions, and choose the best alternative to be implemented. In most researches and practices, the primary aim of Problem Solving is reducing or overcoming the negative impacts of the problem.

On the other hand, the Decision Making process gives the choice, which can be taken from different alternatives. Every process of Decision Making produces a choice like taking action, a strategy, or making a resolution. There is not necessarily a problem but it is applicable in any situation which requires making a choice.

2) Objective 

Problem Solving is an effort to overcome a given obstacle or challenge. Its basic aim is to produce a solution that would change the current situation from less desirable to more desirable. On the other hand, Decision Making aims at selecting the best possible choice from among several alternatives. It could be proactive, such as deciding on an expansion strategy for the market, or it could be reactive, such as deciding on a course of action in response to the moves of a competitor.

3) Nature 

In the Problem Solving process, a problem often arises as a response to a discrepancy between what was expected and what is actually experienced, necessitating a solution. This process is typically reactive. On the other hand, Decision Making can be both proactive and reactive. Proactive Decision Making involves making choices based on anticipation of future events, while reactive Decision Making involves selecting courses of action in response to an immediate situation or problem.

4) Process 

The process of Problem Solving usually starts with understanding and diagnosing the problem. This is followed by brainstorming various solutions and analysing the suitability of each before finally implementing the most fitting one.

On the other hand, the Decision Making process typically begins with identifying a need, often through gathering information. This leads to the search for alternatives and compiling a list of these options. The alternatives are then weighed against criteria such as risks, benefits, and implications before making a choice.

5) Tools and techniques 

In Problem Solving, commonly used tools include root cause analysis, brainstorming, SWOT analysis, and fishbone diagrams (Ishikawa). These tools help in pinpointing the origin of a problem and exploring all possible solutions.

On the other hand, Decision Making often utilises techniques such as decision trees, cost-benefit analysis, pros and cons lists, and grid analysis. These methods assist in evaluating the implications of each available choice.

6) Skills required 

The major skills required in Problem Solving include critical thinking, analytical skills, creativity, and resilience. It is crucial to have the ability to persevere and not be overwhelmed by challenges.

However, Decision Making requires analytical skills, risk assessment, intuition, and foresight. The essential capability here is to be accountable for decisions, which involves predicting the outcomes of every choice

7) Duration and finality  

Problem Solving is time-consuming. It requires a deep dive into understanding the problem before moving on to solutions. The process concludes once a solution is implemented, and the problem is resolved. 

On the other hand, Decision Making can be swift (like everyday decisions) or prolonged (strategic decisions) depending on the complexity of the problems. Once a decision is made, the next step is to implement it, but decisions can sometimes be revisited based on outcomes or changing scenarios. 

Gain a deeper understanding of yourself to take more effective Decision Making with our Decision Making Course .

Tips on how to improve Problem Solving and Decision Making skills

Decision Making and Problem Solving are two most important skills that every individual must possess to excel in their career and in their personal life. There are multiple ways which can be used to improve these skills. Let’s have a look at some of these tips to improve these skills:

Developing skills related to Decision Making and Problem Solving

You can improve your Decision-making and Problem-solving skills by developing other skills such as analytical thinking, creativity and critical thinking. These allied skills will help you boost your analytical thinking skills, will help you think creatively and outside the box. Moreover, honing these skills will help you understand the problems deeply and analyse them without getting partial with your decisions.

Effective communication

Communication is the one of the major keys to success. Effective communication helps in solving problems, miscommunications and helps you understand different perspectives to the same problem. By practicing effective communication, you can convey an information or tasks seamlessly to you team members or colleagues. It helps you understand the root cause of any problem and helps you take an informed decision.

Think about past decisions

It may seem unrelated to you in this context, however, thinking back on your decisions that you made previously can help you not repeat the mistakes, or save you the time that you previously took to make a small decision. Reflecting on past decisions helpin analysing the current problems impartially and help you learn more about your own methods to decide or solve a problem.

Research your industry

Before you make any important decision, or solve out a problem, you need to know about your industry in detail. Since not all situations are same, neither are the industries. Every industry, company or business have their own set of goals, requirements, ideologies, and policies. Whenever you are a part of that specific industry, you should keep in mind, their framework. If you are going beyond their framework or their principles, while solving a problem, there may not be any significant impact taken by your decisions.

Keep yourself updated

It is necessary that you keep yourself updated. As you know that our world is going through many technological advancements. Hence you need to know and update yourself so that you can incorporate all these inventions and discoveries in your industry.

Crack Your Interview with Management Interview Questions and Answers .

How can you integrate Decision Making and Problem Solving? 

Even though Decision Making and Problem-solving have their differences, there are still instances where you need to integrate these two special skills so that you can carry out any challenging tasks or situations, whether it be in the workplace or in your personal life. The following tips will help you show how you can take effective decisions and simultaneously solve problems: 

1) Foster a systematic approach: You can start by adopting a systematic approach to Problem Solving. It involves defining the issue, gathering relevant information, analysing data, generating potential solutions, and evaluating alternatives. Then, you can implement your structured Problem Solving process, which provides a solid foundation for your informed Decision Making. 

2) Identify decision points: You can recognise the key decision points within the Problem-solving process. Then you have to determine which factors require choices and weigh the consequences of each decision on the overall Problem Solving outcome.  

3) Incorporate critical thinking: You can emphasise your critical thinking throughout both Problem Solving and Decision Making. Engage in objective analysis so that you can consider multiple perspectives and challenge assumptions to arrive at well-rounded solutions and decisions.  

4) Utilise data-driven decisions: Ensure that the decisions made during the Problem Solving process are backed by relevant data and evidence. Your data-driven Decision-making minimises biases and increases the chances of arriving at the most suitable solutions. 

Gain a deeper understanding of yourself to take more effective Decision-mking with our Personal & Organisational Development Training . 

Conclusion 

If you integrate both Problem Solving and Decision Making, you can have a more potent approach toward various challenges or tasks. This will help you in making well-informed choices in those circumstances. Moreover, this synergy will empower you to have a Problem -solving mindset to navigate complexities with clarity and achieve effective outcomes. 

Enhance your remote leadership skills with our Managing Remote Teams Course .

Frequently Asked Questions

Problem Solving is both a skill and a competency. It involves the ability to analyse situations, identify issues, generate solutions, and implement them effectively. Developing this capability enhances decision-making, creativity, and adaptability in various personal and professional contexts.

The five steps for Problem Solving and decision-making are: 

1) Define the problem

2) Identify possible solutions 

3) Evaluate alternatives

4) Make a decision 

5) Implement and monitor the chosen solution.

The Knowledge Academy’s Knowledge Pass , a prepaid voucher, adds another layer of flexibility, allowing course bookings over a 12-month period. Join us on a journey where education knows no bounds.

The Knowledge Academy offers various Management Courses , including the Management Training for New Managers Course, Problem Solving Course and Introduction to Management Course. These courses cater to different skill levels, providing comprehensive insights into 10 Ways for Developing Leadership Skills .

Our Business Skills Blogs cover a range of topics related to Decision Making, offering valuable resources, best practices, and industry insights. Whether you are a beginner or looking to advance your Management skills, The Knowledge Academy's diverse courses and informative blogs have got you covered.

The Knowledge Academy takes global learning to new heights, offering over 30,000 online courses across 490+ locations in 220 countries. This expansive reach ensures accessibility and convenience for learners worldwide.  

Alongside our diverse Online Course Catalogue , encompassing 17 major categories, we go the extra mile by providing a plethora of free educational Online Resources like News updates, blogs, videos, webinars, and interview questions. Tailoring learning experiences further, professionals can maximise value with customisable Course Bundles of TKA .  

Upcoming Business Skills Resources Batches & Dates

Fri 27th Sep 2024

Fri 29th Nov 2024

Fri 14th Feb 2025

Fri 16th May 2025

Fri 25th Jul 2025

Fri 29th Aug 2025

Fri 10th Oct 2025

Fri 28th Nov 2025

Get A Quote

WHO WILL BE FUNDING THE COURSE?

My employer

By submitting your details you agree to be contacted in order to respond to your enquiry

  • Business Analysis
  • Lean Six Sigma Certification

Share this course

Our biggest summer sale.

red-star

We cannot process your enquiry without contacting you, please tick to confirm your consent to us for contacting you about your enquiry.

By submitting your details you agree to be contacted in order to respond to your enquiry.

We may not have the course you’re looking for. If you enquire or give us a call on 01344203999 and speak to our training experts, we may still be able to help with your training requirements.

Or select from our popular topics

  • ITIL® Certification
  • Scrum Certification
  • ISO 9001 Certification
  • Change Management Certification
  • Microsoft Azure Certification
  • Microsoft Excel Courses
  • Explore more courses

Press esc to close

Fill out your  contact details  below and our training experts will be in touch.

Fill out your   contact details   below

Thank you for your enquiry!

One of our training experts will be in touch shortly to go over your training requirements.

Back to Course Information

Fill out your contact details below so we can get in touch with you regarding your training requirements.

* WHO WILL BE FUNDING THE COURSE?

Preferred Contact Method

No preference

Back to course information

Fill out your  training details  below

Fill out your training details below so we have a better idea of what your training requirements are.

HOW MANY DELEGATES NEED TRAINING?

HOW DO YOU WANT THE COURSE DELIVERED?

Online Instructor-led

Online Self-paced

WHEN WOULD YOU LIKE TO TAKE THIS COURSE?

Next 2 - 4 months

WHAT IS YOUR REASON FOR ENQUIRING?

Looking for some information

Looking for a discount

I want to book but have questions

One of our training experts will be in touch shortly to go overy your training requirements.

Your privacy & cookies!

Like many websites we use cookies. We care about your data and experience, so to give you the best possible experience using our site, we store a very limited amount of your data. Continuing to use this site or clicking “Accept & close” means that you agree to our use of cookies. Learn more about our privacy policy and cookie policy cookie policy .

We use cookies that are essential for our site to work. Please visit our cookie policy for more information. To accept all cookies click 'Accept & close'.

SkillsYouNeed

  • INTERPERSONAL SKILLS
  • Problem Solving and Decision Making

Identifying and Structuring Problems

Search SkillsYouNeed:

Interpersonal Skills:

  • A - Z List of Interpersonal Skills
  • Interpersonal Skills Self-Assessment
  • Communication Skills
  • Emotional Intelligence
  • Conflict Resolution and Mediation Skills
  • Customer Service Skills
  • Team-Working, Groups and Meetings
  • Decision-Making and Problem-Solving
  • Effective Decision Making
  • Decision-Making Framework
  • Introduction to Problem Solving
  • Investigating Ideas and Solutions
  • Implementing a Solution and Feedback
  • Creative Problem-Solving
  • Social Problem-Solving
  • Negotiation and Persuasion Skills
  • Personal and Romantic Relationship Skills

Subscribe to our FREE newsletter and start improving your life in just 5 minutes a day.

You'll get our 5 free 'One Minute Life Skills' and our weekly newsletter.

We'll never share your email address and you can unsubscribe at any time.

This page continues from Problem Solving an Introduction that introduces problem solving as a concept and outlines the stages used to successfully solve problems.

This page covers the first two stages in the problem solving process: Identifying the Problem and Structuring the Problem .

Stage One: Identifying the Problem

Before being able to confront a problem its existence needs to be identified. This might seem an obvious statement but, quite often, problems will have an impact for some time before they are recognised or brought to the attention of someone who can do anything about them.

In many organisations it is possible to set up formal systems of communication so that problems are reported early on, but inevitably these systems do not always work. Once a problem has been identified, its exact nature needs to be determined: what are the goal and barrier components of the problem?  Some of the main elements of the problem can be outlined, and a first attempt at defining the problem should be made.  This definition should be clear enough for you to be able to easily explain the nature of the problem to others.

Looking at the problem in terms of goals and barriers can offer an effective way of defining many problems and splitting bigger problems into more manageable sub-problems.

Sometimes it will become apparent that what seems to be a single problem, is more accurately a series of sub-problems.  For example, in the problem:

“I have been offered a job that I want, but I don't have the transport to get there and I don't have enough money to buy a car.”

“ I want to take a job ” (main problem)

“ But I don't have transport to get there ” (sub-problem 1)

“ And I don't have enough money to buy a car ” (sub-problem 2)

Useful ways of describing more complex problems are shown in the section, ' Structuring the Problem' , below.

During this first stage of problem solving, it is important to get an initial working definition of the problem.  Although it may need to be adapted at a later stage, a good working definition makes it possible to describe the problem to others who may become involved in the problem solving process.  For example:

Problem Working Definition

Stage Two: Structuring the Problem

The second stage of the problem solving process involves gaining a deeper understanding of the problem. Firstly, facts need to be checked.

Problem Checking Facts
“I want to take a job, but I don’t have the transport to get there
and I don’t have enough money to buy a car.”
“Do I really want a job?”
“Do I really have no access to transport?”
“Can I really not afford to buy a car?”

The questions have to be asked, is the stated goal the real goal?  Are the barriers actual barriers and what other barriers are there?  In this example, the problem at first seems to be:

Goal Barrier 1 Barrier 2
Take the job No transport No money

This is also a good opportunity to look at the relationships between the key elements of the problem .  For example, in the 'Job-Transport-Money' problem, there are strong connections between all the elements.

By looking at all the relationships between the key elements, it appears that the problem is more about how to achieve any one of three things, i.e. job, transport or money, because solving one of these sub-problems will, in turn, solve the others.

This example shows how useful it is to have a representation of a problem.

Problems can be represented in the following ways:

  • Visually: using pictures, models or diagrams.
  • Verbally: describing the problem in words.

Visual and verbal representations include:

  • Chain diagrams
  • Flow charts
  • Tree diagrams

Chain Diagrams

Chain diagrams are powerful and simple ways of representing problems using a combination of diagrams and words.   The elements of the problem are set out in words, usually placed in boxes, and positioned in different places on a sheet of paper, using lines to represent the relationship between them.

Chain Diagrams are the simplest type, where all the elements are presented in an ordered list, each element being connected only with the elements immediately before and after it.  Chain diagrams usually represent a sequence of events needed for a solution.  A simple example of a chain diagram illustrates the job-transport-money example as as follows:

TAKE JOB

Flow Charts

Flow charts allow for inclusion of branches, folds, loops, decision points and many other relationships between the elements.  In practice, flow charts can be quite complicated and there are many conventions as to how they are drawn but, generally, simple diagrams are easier to understand and aid in 'seeing' the problem more readily.

Tree Diagrams

Tree diagrams and their close relative, the Decision Tree , are ways of representing situations where there are a number of choices or different possible events to be considered.  These types of diagram are particularly useful for considering all the possible consequences of solutions.

Remember that the aim of a visualisation is to make the problem clearer.  Over-complicated diagrams will just confuse and make the problem harder to understand.

Listing the elements of a problem can also help to represent priorities, order and sequences in the problem.  Goals can be listed in order of importance and barriers in order of difficulty.  Separate lists could be made of related goals or barriers.  The barriers could be listed in the order in which they need to be solved, or elements of the problem classified in a number of different ways.  There are many possibilities, but the aim is to provide a clearer picture of the problem.

1. Get money
2. Get car
3. Get job

A visual representation and a working definition together makes it far easier to describe a problem to others. Many problems will be far more complex than the example used here.

Continue to: Investigating Ideas and Possible Solutions

See also: Social Problem Solving Project Management Risk Management

Rebel's Guide to Project Management

Making the Difference: Problem Solving vs Decision Making

This blog is reader-supported. When you purchase something through an affiliate link on this site, I may earn some coffee money. Thanks! Learn more .

Do you ever find yourself stuck between a rock and hard place, unable to decide what the best course of action is?

I have. Whether it’s what desk to put in our new conservatory space (and I’ll tell you what we ended up deciding later), or who to invite to meetings, or managing to order everyone else’s food and then getting so overwhelmed with having made decisions all day for all the people that I couldn’t choose anything for myself.

I left the café with nothing for me and ended up with a couple of slices of peanut butter toast at home.

Making decisions can be difficult for even the most experienced project managers. But before making any decision, it’s important to understand the difference between problem solving and decision making.

Ready to get into it?

Problem solving involves diagnosing issues that arise during projects while decision making requires taking appropriate steps based on those diagnoses. While they may appear similar at first glance, there are key differences in how each process should be approached – understanding these differences will help you make more informed decisions!

Let’s explore both processes as well as their similarities and differences.

What is problem solving?

You’ve been solving problems since you were a baby: how to stand up, how to get your socks off, how to get your parents to bring you your favorite sippy cup.

As an adult, we solve problems every day at work and at home.

So it probably sounds a bit odd to want to define problem solving before we go any further. Surely we all know what we are talking about as we do it all the time?

Humor me. Problem solving is the process of identifying and analyzing a problem, generating potential solutions, and selecting the best solution to address the issue. It involves breaking down complex problems into smaller components and then finding ways to solve them.

The problem solving process

If you think that description sounds linear, then you’d be right. Problem solving fits neatly into a process, one that we don’t even know we’re following most of the time.

The problem solving process typically consists of four steps:

  • Identify the problem
  • Generate possible solutions
  • Evaluate each option
  • Select an appropriate course of action.

That does make it sound easy. Wicked problems need a slightly different approach (PMI has a problem solving training course that is brilliant and will help with that).

But for now, let’s stick with a high-level approach that works for most problems.

1. Identify the problem

First, it’s important to understand what caused the issue in order to determine how best to resolve it.

You’d be surprised at how many managers don’t bother to find the root cause of the problem to truly understand it. Use techniques like the 5 Whys or an Ishikawa diagram to dig down into what the problem actually is.

2. Generate possible solutions

Brainstorming is one way to come up with different ideas for potential solutions. You could also interview experts, review lessons learned or innovative solutions from previous projects, research what the rest of your industry is doing or consult customers on what they’d like to see. There are no silly ideas at this point!

Choose the creative approach that gets you a range of options to review.

Read next: How to improve problem solving with lessons learned.

3. Evaluate each option

Once you have several options to consider, you can evaluate each one based on its effectiveness and cost before deciding which one is most suitable for your situation.

Use pairwise prioritisation, multi-criteria decision making or analytical hierarchy process (AHP) to help with the evaluation.

analytical hierarchy process

4. Select an appropriate course of action

Now you’ve got all the options for solving your problem, you can actually solve it by choosing a course of action that will sort it out. This is where decision making comes in. in this step you make the decision.

Finally, implement your chosen solution and monitor its progress over time so that any necessary adjustments can be made as needed.

Benefits of problem solving skills

There are many benefits associated with having effective problem solving skills.

These include improved decision making abilities (more on that in a minute), increased creativity, better communication skills, greater confidence when faced with challenging situations, enhanced ability to think critically, more efficient use of resources, improved relationships between colleagues or team members due to shared understanding of goals and increased productivity levels due to fewer mistakes being made during projects or tasks.

(Breathe. That was a long sentence, sorry.)

All these advantages make problem solving an invaluable skill in both personal life and professional life scenarios.

What is decision making?

Basically, decision making is the process of selecting a course of action from a number of alternatives. It involves gathering information, weighing options, and choosing the best option for achieving a desired outcome.

But how is that different to problem solving?

Decision making is the process of doing Step 4 of the problem solving process. It’s the choice making, option selection, conclusion of the analysis and thinking.

It’s decisive (duh), purposeful, specific. It removes the ambiguity of the ‘what do we do?’ and helps the team move towards the ‘OK, how do we do that?’

It brings action to a situation.

The decision making process

There is a simple method for decision making too, although the actual decision itself might be tough to make.

  • Identify that a decision is required
  • Ensure you have the data to make the decision
  • Make the decision
  • Tell whoever needs to implement the decision

1. Identify that a decision is required

The decision-making process typically begins with identifying what decision needs to be made. Are you making the right decision, or is there something else, deeper, different that is really what’s required?

In this step you also want to identify who is making the decision. That could be your project sponsor, a panel, you by yourself, a committee or whoever. Getting this step clear saves headaches later.

2. Ensure you have the data to make the decision

Do you have all the info you need to make the decision? If not, get it.

When decisions are made quickly but thoughtfully, they can save time and resources while still producing quality results.

Major decisions need more time spent on this step to make sure you understand all the variables.

decision chart example

3. Make the decision

After considering all potential solutions, it’s time to make a choice based on what will yield the best results for everyone involved.

This is the hard part: make the decision! The person or people responsible for this should weigh up the data and use their professional judgement to choose the right course of action. Decision trees can be useful here to avoid unconscious bias (or conscious bias!).

Obviously this is harder for complex decisions. What vendor to choose for a 3-year outsourcing arrangement is harder to decide than what venue to book for a team away day.

4. Tell whoever needs to implement the decision

Great – you’ve made the call and know what to do, but does the rest of the team? Don’t keep the decision to yourself!

Make sure whoever needs to know the next steps is aware that the decision has been made so they can implement it and take the right action.

Having confidence in decisions leads to greater trust between team members and better collaboration overall, which can lead to improved project outcomes over time. Well-made decisions often create opportunities for growth within teams by allowing them to learn from their mistakes as well as their successes along the way.

Similarities between problem solving and decision making

Problem solving and decision making sound very similar, right?

Well, that is true. Both processes involve gathering information, analyzing it, and coming up with solutions or courses of action. They both require critical thinking skills to identify potential solutions or options that are most likely to be successful.

The processes use a similar flow

Both processes involve identifying a problem or issue, researching possible solutions, evaluating those solutions based on criteria such as cost-effectiveness or feasibility, selecting an option from among the available choices, implementing the chosen solution, and you’d also want to monitor its effectiveness over time.

The process can be iterative if necessary; if one solution does not work out as expected then another may need to be tried until a satisfactory outcome is achieved.

They both produce a satisfactory solution

Problem solving and decision making usually lead to some kind of action being taken in order to address a given issue or situation. Problem solving often involves finding creative solutions for complex problems, while decision making typically entails selecting a course of action from several possibilities after carefully evaluating each option’s advantages and disadvantages.

But ultimately, the goal is for something positive (or at least neutral) to come out of the helpful process so that whatever challenge was initially presented can be effectively addressed.

Despite being so similar you could pretty much interchange them in some circumstances, there are some differences.

problem solving vs decision making

Differences between problem solving and decision making

Although they have similarities in terms of the process used to come up with a solution, their goals differ significantly.

Process goals are different

The goal of problem solving is to find a solution to an existing issue. It involves identifying the cause of a problem and then finding ways to address it. Problem solving often requires input from multiple stakeholders who can provide different perspectives on how best to solve the issue at hand.

On the other hand, decision making focuses on choosing the best option from multiple alternatives. This could include selecting between competing products or services or deciding which strategy will be most effective for achieving certain objectives.

In other words: decision making doesn’t necessarily mean there is a problem. We make decisions every day about small things and big things, but they aren’t all problems that need the creative step of solutioning.

Sometimes a decision just needs to be taken and the options are clearly known.

They require different stakeholders

Another key difference between problem solving and decision making is that while problem solving typically requires input from multiple stakeholders, decision making is usually done by one individual or group who has access to all relevant information needed for the decision-making process.

To give you an example. Let’s say on a technical project the development team hit a problem. They have to bring in various subject matter experts to research and identify the parameters involved. They consult, brainstorm and debate. It’s a group effort, and it’s likely to end in a solution.

However, if I need my project sponsor to choose between two risk treatments, I’ll take him my recommendation and a summary of options and he’ll simply choose. Done.

Decisions are made based on what is known about a situation rather than relying on external opinions or advice when trying to make an informed choice about what course of action should be taken next.

They produce different results

The nature of both processes also differs in terms of the types of solutions they produce. Problem solving typically results in creative solutions that can be implemented over time, while decision making produces immediate choices from among existing alternatives without necessarily creating something new or unique.

Both processes involve the identification of a problem or issue, the collection of information to evaluate possible solutions, and an analysis of potential outcomes. The main difference between them is in their goals: problem solving seeks to identify the root cause of an issue and develop a solution that will address it; decision making focuses on selecting from among available options.

Both processes require careful consideration of facts and opinions before any action is taken. Problem solving often involves more people than decision making as it requires collaboration to identify underlying causes and brainstorm potential solutions. Decision makers may consult with others for input but ultimately make decisions independently based on their own judgment.

prioritization example

Still got a question?

What is the difference between decision and decision making.

A decision is the act of making a choice between two or more alternatives. Decision making is the process by which decisions are made. It involves gathering information, analyzing data, evaluating alternatives and choosing a course of action based on this analysis. The outcome of the process is the decision. The decision-making process also includes monitoring progress to ensure that goals are being met and taking corrective action if needed.

What is the importance of problem-solving and decision making?

Problem-solving and decision making are essential skills for project managers and managers in general. The processes keep work moving by making sure problems get solved and decisions get made so team members are not blocked from finishing their tasks.

What are the steps in problem-solving and decision making?

Problem-solving and decision making involve a series of steps that can help ensure the best possible outcome. The first step is to identify the problem or opportunity, then analyze it by gathering relevant information and evaluating potential solutions. After considering all options, select an appropriate solution and develop an action plan for implementation. Finally, monitor progress to ensure success and make necessary adjustments along the way. By following these steps, project managers can effectively manage projects while minimizing risks and maximizing results.

Before you go…

Sometimes there isn’t a right decision – it’s simply important to make a decision. As for the desk, in the end, we used a piece of furniture we already had upstairs and didn’t buy one at all.

I spent a morning measuring and researching options, and I’ll never get that time back, but that’s OK.

As a leader, you should be skilled at solving problems and making decisions, and the processes that support them. However, you don’t have to be doing all the solving and making all the calls yourself. As long as you facilitate the process and get the right people in the room, you can step back and let the experts do their thing.

Let the right people do the work and create an environment where your projects move forward because everyone’s got what they need to keep things moving.

Elizabeth Harrin wearing a pink scarf

Project manager, author, mentor

Elizabeth Harrin is a Fellow of the Association for Project Management in the UK. She holds degrees from the University of York and Roehampton University, and several project management certifications including APM PMQ. She first took her PRINCE2 Practitioner exam in 2004 and has worked extensively in project delivery for over 20 years. Elizabeth is also the founder of the Project Management Rebels community, a mentoring group for professionals. She's written several books for project managers including Managing Multiple Projects .

  • Prompt Library
  • DS/AI Trends
  • Stats Tools
  • Interview Questions
  • Generative AI
  • Machine Learning
  • Deep Learning

Problem, Symptoms & Root Cause Analysis (RCA) Examples

Process for identifying problem and doing root cause analysis

Last updated: 30th Jan, 2024

Have you found yourself stuck in a cycle of solving the same or similar problems over and over again? Ever wondered why some solutions seem to only offer a temporary fix? Have you wondered if you have identified the correct problem or if you are trying to fix one of the symptoms? The key lies in your understanding of how we define problem statements, associated symptoms, root causes , and approach to problem-solving , which is fundamentally rooted in analytical thinking and critical thinking . What exactly is the difference between a problem and its symptoms ? And why is it crucial to conduct a root cause analysis to arrive at a lasting solution?

In both personal and professional spheres (workplace), the ability to identify correct problems and solve them is highly valued. Often, the issues we face are more complex than they first appear. Simply treating the visible symptoms of a problem rarely offers a lasting solution . This is where analytical thinking comes into play . Understanding the difference between a problem and its symptoms, and the role of root cause analysis in identifying and solving the actual problem, is a cornerstone of analytical thinking. This blog aims to throw light on these distinctions and demonstrate the importance of root cause analysis, empowering you to approach problems with a more analytical mindset for enduring solutions.

Table of Contents

What is a Problem?

In the context of problem-solving, a “ problem ” is a situation or condition that represents the obstruction for an entity (a person or a thing) to remain in or achieve the desirable or ideal state of being. Problems can also be referred to as “ challenges “. For example, a company aims to achieve a 20% increase in sales revenue by the end of the year. The problems or challenges that the company may face can be some of the following:

  • Determining whether the product is not positioned correctly, and then coming up with the most apt product positioning in the manner that matches the needs of the customer
  • Analyzing marketing strategy, identifying gaps, and coming up with a marketing strategy to reach out to potential customers matching the product positioning
  • Create a potential customer pipeline from which X% can convert into the real ones
  • Determine a sales strategy that can help make the sales to the potential customers.
  • Determine the most apt communication channels for the potential customer to reach out and enquire
  • Need for timely and cost-effective customer service

When the entity is moved to the ideal state (positive change) or most desirable condition, the problem stands resolved . The thing that takes the entity from an undesirable to a desirable state is called the solution .

Often, what we initially identify as a problem turns out to be merely a symptom of the underlying problem (or root cause). Symptoms of a problem can be understood as the indicators of the underlying “real problem”. Unlike symptoms , which are mere indicators or manifestations of the problem or real problem , the real problem itself is the root cause that leads to the observable symptoms. It is very important to discern between the symptom and the real problem. If not done well, there is a risk of solving the “ symptoms ” when you think that you are solving the problems.

Here is a problem vs symptom example . When you have a cough problem, it is important to differentiate between whether a cough is a problem and take medicines for it, or, if a cough is due to some lung problem and take the medicine to cure that lung-related problem.

Here is another example to understand problem vs symptoms . Let’s say, when a business is experiencing declining sales, one may call out the problem as “declining sales”. However, the “declining sales” is merely a symptom. The actual problem or the root cause can be traced to poor customer service based on the root cause scenario. It is the core issue that needs to be identified and resolved to bring about a positive change.

What are Symptoms? What’s the difference between Symptoms & Problems?

Symptoms of a problem are the observable effects or indicators that point towards an existing problem ; they are not the problem themselves. These are the signs that something is wrong, but they often don’t reveal the underlying cause. Understanding the distinction between symptoms and the actual problem is crucial because treating symptoms won’t eliminate the root issue.

The following are some of the problem vs symptom, or, symptom vs root cause examples :

  • On the personal front, let’s consider recurring headaches. You might think the problem is the headache itself, but that is a symptom. The real problem or the root cause could be anything from dehydration to stress. Taking painkillers will temporarily relieve the headache but won’t resolve the underlying issue causing it.
  • In a business setting, consider declining sales. At first glance, you might think the problem is the product or its pricing. However, declining sales are a symptom. The actual problem or the root cause could be poor customer service or ineffective marketing. Addressing only the symptom by slashing prices may bring a temporary boost in sales but won’t provide a long-term solution

By identifying and treating the root cause or actual problem rather than its symptoms , you can find a lasting solution that prevents the issue from recurring. This approach not only saves time and resources but also promotes better analytical thinking and decision-making.

The following are some of the key differences between symptoms and the problems or root cause :

  • Symptoms when resolved can reappear after some time. Problems or root causes when resolved stay resolved.
  • Symptoms are evident . They can be easily identified. Problems or root causes are difficult to unearth or determine. They can be deep-rooted .
  • A problem can manifest in the form of many symptoms.

What is Root Cause Analysis (RCA)? Why is it needed?

Root Cause Analysis (RCA) is a structured approach for identifying the underlying causes of what is referred to as the problem (symptoms on the surface) . The goal is to find out what, how, and why something happened, thereby preventing recurrence. It’s like a detective’s investigation to find the “criminal” causing the symptoms, which in this context, are the undesired outcomes or challenges.

RCA is valuable because it helps you go beyond treating symptoms to find the real problem. It’s the difference between mopping up a water leak and fixing the pipe that’s leaking. By focusing on the root cause, you not only solve the immediate problem but also prevent similar issues in the future.

For instance, if a company is facing high employee attrition, addressing the symptoms might involve conducting exit interviews and providing compensation packages. However, a root cause analysis may reveal that the real issue is a toxic work culture or poor management. Addressing these root causes would lead to more effective and lasting solutions.

There are various methods for conducting RCA, and the choice often depends on the complexity of the problem and the resources available. Some popular techniques include:

  • The 5 Whys : This method involves asking “Why?” repeatedly (usually five times) to drill down into the layers of a problem.
  • Fishbone diagram : This visual tool allows you to categorize potential causes of a problem, helping to identify the root cause systematically.
  • Analytical thinking : One can break down problems into sub-problems and continue this process until one reaches to most fundamental problems.
  • First principles thinking : One can analyze a problem based on final, formal, material, and efficient causes and then repeat the process.

By understanding and applying these RCA techniques, you can develop a more analytical approach to problem-solving, thereby addressing issues at their core and preventing future recurrence.

Process for Arriving at the Root Cause of Symptoms / Problems

The following represents the process for arriving at the root cause of stated symptoms or problems:

Process for identifying problem and doing root cause analysis

  • Distinguish Between Problem and Symptom : Your first task is to determine if what has been stated is the problem or merely a symptom of something deeper. For instance, experiencing a headache is generally a symptom, not the underlying problem itself.
  • Identify the Underlying Problem : If what is stated is a problem, well and good. However, if you’ve identified a symptom, your next step is to discover what the problem could be. For example, if you’re dealing with headaches, the underlying issue may be something like ill-health.
  • List All Observable Symptoms : Expand your perspective by identifying all the symptoms related to the issue at hand. This will give you a more comprehensive view and may provide additional clues about the root cause.
  • Generate Cause Hypotheses for Stated Symptoms : Formulate hypotheses for what could be causing the symptoms for the identified problem. This step is essentially a diagnosis . Employ techniques like the “Five Whys” to dig deeper and identify potential underlying causes.
  • Test Each Hypothesis to identify the real root cause : For each hypothesized cause, perform diagnostic tests to either validate or negate it. This could be in the form of data collection, interviews, or even controlled experiments. The aim is to gather evidence that either supports or refutes each hypothesis.
  • Identify the Root Cause : After you’ve rigorously tested each hypothesis, you should be able to pinpoint one root cause that stands out as the most likely “actual problem” or “root cause” of the issues you’re observing.

Defining Problem Statement

The problem statement should consist of information related to the following:

  • Ideal state: The ideal state outlines what the perfect scenario would look like once the problem is solved. This sets the vision and provides a clear goal for problem-solving efforts.
  • What : Define the problem precisely. You can use root cause analysis to dig deep into the “What” aspect.
  • Why : Identify why the problem is important.
  • Where : Specify the areas or departments affected.
  • When : Determine when the problem occurs or comes to notice.
  • Who : Note who is impacted, either directly or indirectly.
  • How : Describe the nature of the impact, be it financial, operational, or emotional.
  • Outcome as a result of problem resolution : The outcome section elaborates on what success looks like, linking back to the ideal state. It can include quantitative and qualitative measures that indicate the problem has been solved.

Understanding the difference between a problem and its symptoms is the cornerstone of effective problem-solving. Many times, organizations or individuals get sidetracked by addressing symptoms without ever reaching the core issue. By employing a structured approach, like distinguishing between problems and symptoms, identifying all associated symptoms, formulating hypotheses for root causes , and rigorously testing these hypotheses, you set the stage for finding the actual root cause of the problem. This not only saves time and resources but also leads to long-lasting solutions.

From an analytical thinking standpoint, mastering this approach equips you with a crucial skill set. It helps you avoid the pitfalls of surface-level solutions and encourages a deeper understanding of challenges. So the next time you’re confronted with a “problem,” take a step back and consider: Is this the real issue, or is it just the tip of the iceberg? The answer to this question could be the first step toward effective and sustainable problem-solving.

Recent Posts

Ajitesh Kumar

  • Model Parallelism vs Data Parallelism: Examples - August 24, 2024
  • Overfitting & Underfitting in Machine Learning - August 24, 2024
  • Self-Supervised Learning: Concepts, Examples - August 20, 2024

Ajitesh Kumar

Leave a reply cancel reply.

Your email address will not be published. Required fields are marked *

  • Search for:

ChatGPT Prompts (250+)

  • Generate Design Ideas for App
  • Expand Feature Set of App
  • Create a User Journey Map for App
  • Generate Visual Design Ideas for App
  • Generate a List of Competitors for App
  • Model Parallelism vs Data Parallelism: Examples
  • Overfitting & Underfitting in Machine Learning
  • Self-Supervised Learning: Concepts, Examples
  • MSE vs RMSE vs MAE vs MAPE vs R-Squared: When to Use?
  • K-Fold Cross Validation in Machine Learning – Python Example

Data Science / AI Trends

  • • Prepend any arxiv.org link with talk2 to load the paper into a responsive chat application
  • • Custom LLM and AI Agents (RAG) On Structured + Unstructured Data - AI Brain For Your Organization
  • • Guides, papers, lecture, notebooks and resources for prompt engineering
  • • Common tricks to make LLMs efficient and stable
  • • Machine learning in finance

Free Online Tools

  • Create Scatter Plots Online for your Excel Data
  • Histogram / Frequency Distribution Creation Tool
  • Online Pie Chart Maker Tool
  • Z-test vs T-test Decision Tool
  • Independent samples t-test calculator

Recent Comments

I found it very helpful. However the differences are not too understandable for me

Very Nice Explaination. Thankyiu very much,

in your case E respresent Member or Oraganization which include on e or more peers?

Such a informative post. Keep it up

Thank you....for your support. you given a good solution for me.

Why Problem Finding Is More Important Than Problem Solving

' src=

Solving problems, that’s what entrepreneurs do. But, more importantly: they identify, recognize and find problems worth solving.

This is where it starts, finding problems worth solving.

Problem solving refers to the process of identifying and resolving a problem that has already been identified. It involves using existing knowledge and skills to analyze the problem, generate potential solutions, and implement the best course of action.

Problem finding, on the other hand, refers to the process of identifying new or previously unseen problems. It involves actively seeking out new problems and opportunities, and requires a different set of skills and mindset compared to problem solving. Problem finding often involves creativity, curiosity, and a willingness to challenge assumptions and think outside the box. It is usually considered as the first step in the innovation process.

While problem solving is important for addressing current issues, problem finding is essential for generating new ideas and driving innovation . Both are critical for organizations to achieve their goals and stay competitive. Problem finding is more important than problem solving, for if we don’t define the most important problems clearly, we can end up promoting a single solution to every issue, i.e., I’ve got a hammer so everything looks like a nail.

5 Reasons Why Problem Finding Is More Important Than Problem Solving

Problem finding is more important than problem solving for several reasons, here are 5 of them:

  • Innovation: Problem finding is the first step in the innovation process, it allows organizations to identify new opportunities and create new products, services, and processes that can give them a competitive edge.
  • Adaptability: Problem finding helps organizations anticipate and proactively address potential issues, rather than simply reacting to problems as they arise. This allows them to be more adaptable and resilient in an ever-changing business environment.
  • Growth: Problem finding is essential for business growth and expansion. Identifying new problems and opportunities can lead to new markets, products, and revenue streams.
  • Creativity: Problem finding requires creativity and a willingness to think outside the box, it encourages employees to challenge assumptions and come up with new ideas.
  • Continuous improvement: Problem finding is a continuous process, it allows organizations to continuously identify and address new problems and opportunities, which can lead to continuous improvement and business success.

However, it’s worth noting that both problem finding and problem solving are important for organizations, problem solving is necessary to address current issues, while problem finding is essential to generate new ideas and drive innovation.

With that said, how can you get better at finding problems worth solving?

Here are 10 ways:

  • Stay curious: Keep an open mind and look for new and different perspectives. Be curious about the world around you, and always question assumptions and the status quo.
  • Research and gather information: Research the industry and market you are working in. Gather information from different sources, including customers, employees, and competitors.
  • Network: Network with people from different backgrounds and industries. They can provide valuable insights and perspectives that can help you to identify new problems and opportunities.
  • Encourage diversity: Encourage diversity in your team, and actively seek out perspectives and ideas from different people.
  • Stay informed: Stay informed about the latest industry trends and advancements in technology. This will help you to identify new problems and opportunities.
  • Take calculated risks: Be willing to take calculated risks to test new ideas and concepts. Learn from failures and iterate.
  • Challenge assumptions: Challenge assumptions and question the status quo. This can help you to identify new problems and opportunities that others may have overlooked.
  • Collaborate: Collaborate with other teams or departments within the organization to share ideas and perspectives, and to gain new insights.
  • Empower others: Empower others in your organization to drive problem finding, Create a culture of continuous improvement that encourages people to identify and solve problems.
  • Practice: Practice problem finding regularly, by making it a habit, you can improve your ability to identify new and important problems.

Bottom line: For innovation, problem finding is more important than problem solving!

Related Posts

15 Ways Leaders Stop Innovation In Their Business

Next Article

7 methods for finding opportunities for innovation.

Logo for BCcampus Open Publishing

Want to create or adapt books like this? Learn more about how Pressbooks supports open publishing practices.

Chapter 9. Cognition

Problem-Solving: Heuristics and Algorithms

Dinesh Ramoo

Approximate reading time : 11 minutes

Learning Objectives

By the end of this section, you will be able to:

  • Describe the differences between heuristics and algorithms in information processing

When faced with a problem to solve, should you go with intuition or with more measured, logical reasoning? Obviously, we use both of these approaches. Some of the decisions we make are rapid, emotional, and automatic. Daniel Kahneman (2011) calls this “fast” thinking. By definition, fast thinking saves time. For example, you may quickly decide to buy something because it is on sale; your fast brain has perceived a bargain, and you go for it quickly. On the other hand, “slow” thinking requires more effort; applying this in the same scenario might cause us not to buy the item because we have reasoned that we don’t really need it, that it is still too expensive, and so on. Using slow and fast thinking does not guarantee good decision-making if they are employed at the wrong time. Sometimes it is not clear which is called for, because many decisions have a level of uncertainty built into them. In this section, we will explore some of the applications of these tendencies to think fast or slow.

We will look further into our thought processes, more specifically, into some of the problem-solving strategies that we use. Heuristics are information-processing strategies that are useful in many cases but may lead to errors when misapplied. A heuristic is a principle with broad application, essentially an educated guess about something. We use heuristics all the time, for example, when deciding what groceries to buy from the supermarket, when deciding what to wear before going out, when choosing the best route to drive through town to avoid traffic congestion, and so on. Heuristics can be thought of as aids to decision making; they allow us to reach a solution without a lot of cognitive effort or time.

The benefit of heuristics in helping us reach decisions fairly easily is also the potential downfall: the solution provided by the use of heuristics is not necessarily the best one. Let’s consider some of the most frequently applied, and misapplied, heuristics in Table CO.3 below.

Table CO.3. Heuristics that pose threats to accuracy.
Heuristic Description Examples of Threats to Accuracy
Representativeness A judgment that something that is more representative of its category is more likely to occur We may overestimate the likelihood that a person belongs to a particular category because they resemble our prototype of that category.
Availability A judgment that what comes easily to mind is common We may overestimate the crime statistics in our own area because these crimes are so easy to recall.
Anchoring and adjustment A tendency to use a given starting point as the basis for a subsequent judgment We may be swayed towards or away from decisions based on the starting point, which may be inaccurate.

In many cases, we base our judgments on information that seems to represent, or match, what we expect will happen, while ignoring other potentially more relevant statistical information. When we do so, we are using the representativeness heuristic . Consider, for instance, the data presented in the lists below. Let’s say that you went to a hospital, and you checked the records of the babies that were born on that given day. Which pattern of births do you think you are most likely to find?

  • 6:31 a.m. – Girl
  • 8:15 a.m. – Girl
  • 9:42 a.m. – Girl
  • 1:13 p.m. – Girl
  • 3:39 p.m. – Boy
  • 5:12 p.m. – Boy
  • 7:42 p.m. – Boy
  • 11:44 p.m. – Boy
  • 6:31 a.m. – Boy
  • 9:42 a.m. – Boy
  • 3:39 p.m. – Girl
  • 7:42 p.m. – Girl

Using the representativeness heuristic may lead us to incorrectly believe that some patterns of observed events are more likely to have occurred than others.

Most people think that list B is more likely, probably because list B looks more random, and matches — or is “representative of” — our ideas about randomness, but statisticians know that any pattern of four girls and four boys is mathematically equally likely. Whether a boy or girl is born first has no bearing on what sex will be born second; these are independent events, each with a 50:50 chance of being a boy or a girl. The problem is that we have a schema of what randomness should be like, which does not always match what is mathematically the case. Similarly, people who see a flipped coin come up “heads”five times in a row will frequently predict, and perhaps even wager money, that “tails” will be next. This behaviour is known as the gambler’s fallacy . Mathematically, the gambler’s fallacy is an error;: the likelihood of any single coin flip being “tails” is always 50%, regardless of how many times it has come up “heads” in the past. Think of how people choose lottery numbers. People who follow the lottery often have the impression that numbers that were chosen before are unlikely to reoccur even though the selection of numbers is random and not dependent on previous events. But the gambler’s fallacy is so strong in most people that they follow this logic all the time.

The representativeness heuristic may explain why we judge people on the basis of appearance. Suppose you meet your new next-door neighbour, who drives a loud motorcycle, has many tattoos, wears leather, and has long hair. Later, you try to guess their occupation. What comes to mind most readily? Are they a teacher? Insurance salesman? IT specialist? Librarian? Drug dealer? The representativeness heuristic will lead you to compare your neighbour to the prototypes you have for these occupations and choose the one that they seem to represent the best. Thus, your judgment is affected by how much your neighbour seems to resemble each of these groups. Sometimes these judgments are accurate, but they often fail because they do not account for base rates , which is the actual frequency with which these groups exist. In this case, the group with the lowest base rate is probably drug dealer.

Our judgments can also be influenced by how easy it is to retrieve a memory. The tendency to make judgments of the frequency or likelihood that an event occurs on the basis of the ease with which it can be retrieved from memory is known as the availability heuristic (MacLeod & Campbell, 1992; Tversky & Kahneman, 1973). Imagine, for instance, that I asked you to indicate whether there are more words in the English language that begin with the letter “R” or that have the letter “R” as the third letter. You would probably answer this question by trying to think of words that have each of the characteristics, thinking of all the words you know that begin with “R” and all that have “R” in the third position. Because it is much easier to retrieve words by their first letter than by their third, we may incorrectly guess that there are more words that begin with “R,” even though there are in fact more words that have “R” as the third letter.

The availability heuristic may explain why we tend to overestimate the likelihood of crimes or disasters; those that are reported widely in the news are more readily imaginable, and therefore, we tend to overestimate how often they occur. Things that we find easy to imagine, or to remember from watching the news, are estimated to occur frequently. Anything that gets a lot of news coverage is easy to imagine. Availability bias does not just affect our thinking. It can change behaviour. For example, homicides are usually widely reported in the news, leading people to make inaccurate assumptions about the frequency of murder. In Canada, the murder rate has dropped steadily since the 1970s (Statistics Canada, 2018), but this information tends not to be reported, leading people to overestimate the probability of being affected by violent crime. In another example, doctors who recently treated patients suffering from a particular condition were more likely to diagnose the condition in subsequent patients because they overestimated the prevalence of the condition (Poses & Anthony, 1991). After the attack on 9/11, more people died from car accidents because more people drove instead of flying in a plane. Even though the attack was an isolated incident and even though flying is statistically safer than driving, the mere fact of seeing the attack on television again and again made people think that flying was more dangerous than it is.

The anchoring and adjustment heuristic is another example of how fast thinking can lead to a decision that might not be optimal. Anchoring and adjustment is easily seen when we are faced with buying something that does not have a fixed price. For example, if you are interested in a used car, and the asking price is $10,000, what price do you think you might offer? Using $10,000 as an anchor, you are likely to adjust your offer from there, and perhaps offer $9000 or $9500. Never mind that $10,000 may not be a reasonable anchoring price. Anchoring and adjustment happens not just when we’re buying something. It can also be used in any situation that calls for judgment under uncertainty, such as sentencing decisions in criminal cases (Bennett, 2014), and it applies to groups as well as individuals (Rutledge, 1993).

In contrast to heuristics, which can be thought of as problem-solving strategies based on educated guesses, algorithms are problem-solving strategies that use rules. Algorithms are generally a logical set of steps that, if applied correctly, should be accurate. For example, you could make a cake using heuristics — relying on your previous baking experience and guessing at the number and amount of ingredients, baking time, and so on — or using an algorithm. The latter would require a recipe which would provide step-by-step instructions; the recipe is the algorithm. Unless you are an extremely accomplished baker, the algorithm should provide you with a better cake than using heuristics would. While heuristics offer a solution that might be correct, a correctly applied algorithm is guaranteed to provide a correct solution. Of course, not all problems can be solved by algorithms.

As with heuristics, the use of algorithmic processing interacts with behaviour and emotion. Understanding what strategy might provide the best solution requires knowledge and experience. As we will see in the next section, we are prone to a number of cognitive biases that persist despite knowledge and experience.

To calculate this time, we used a reading speed of 150 words per minute and then added extra time to account for images and videos. This is just to give you a rough idea of the length of the chapter section. How long it will take you to engage with this chapter will vary greatly depending on all sorts of things (the complexity of the content, your ability to focus, etc).

Problem-Solving: Heuristics and Algorithms Copyright © 2024 by Dinesh Ramoo is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License , except where otherwise noted.

Share This Book

Challenge vs. Problem

What's the difference.

Challenge and problem are two terms that are often used interchangeably, but they have distinct differences. A challenge refers to a difficult task or situation that requires effort, skill, or determination to overcome. It is often seen as an opportunity for growth and personal development. On the other hand, a problem refers to an issue or obstacle that needs to be solved or resolved. It is typically seen as a negative or undesirable situation that requires finding a solution. While both challenge and problem require effort and problem-solving skills, the key distinction lies in the perspective and mindset with which they are approached. Challenges are seen as opportunities, while problems are seen as obstacles.

Challenge

AttributeChallengeProblem
DefinitionA difficult task or situation that requires effort and determination to overcome.An undesirable situation or condition that needs to be resolved or solved.
NatureCan be seen as an opportunity for growth and development.Usually seen as an obstacle or barrier to progress.
PerceptionOften viewed as a positive and motivating factor.Generally perceived as negative and causing distress.
ComplexityCan vary in complexity, ranging from simple to highly intricate.Can also vary in complexity, but often implies a more difficult or intricate issue.
ApproachRequires strategic planning, problem-solving skills, and determination.Requires problem-solving skills, analysis, and finding effective solutions.
OutcomeOvercoming challenges can lead to personal growth and achievement.Solving problems can lead to resolution and improvement of a situation.

Problem

Further Detail

Introduction.

Challenges and problems are two terms often used interchangeably, but they have distinct attributes that set them apart. Understanding the differences between challenges and problems can help individuals and organizations approach them more effectively. In this article, we will explore the various attributes of challenges and problems, highlighting their unique characteristics and implications.

Definition and Nature

A challenge can be defined as a difficult task or situation that requires effort, skill, or determination to overcome. It is often seen as an opportunity for growth, learning, and personal development. Challenges are typically viewed in a positive light, as they push individuals to stretch their abilities and achieve new heights.

On the other hand, a problem refers to an undesirable situation or obstacle that hinders progress or creates difficulties. Problems are often seen as negative or unwanted, as they require resolution or mitigation to restore normalcy or achieve desired outcomes. Unlike challenges, problems are typically associated with frustration and the need for immediate attention.

Perception and Mindset

One of the key differences between challenges and problems lies in the perception and mindset associated with each. Challenges are often embraced with a positive mindset, as they are seen as opportunities for growth and self-improvement. Individuals facing challenges tend to approach them with determination, resilience, and a belief in their ability to overcome obstacles.

Problems, on the other hand, are often perceived with a negative mindset, as they represent barriers or setbacks that need to be resolved. Individuals facing problems may experience frustration, stress, or a sense of helplessness. The mindset associated with problems is often focused on finding solutions and restoring normalcy rather than embracing the situation as an opportunity for growth.

Goal Orientation

Challenges and problems also differ in terms of their goal orientation. Challenges are typically associated with specific goals or targets that individuals strive to achieve. These goals may be personal, professional, or related to a particular task or project. The focus during a challenge is on overcoming obstacles and achieving the desired outcome.

Problems, on the other hand, are often characterized by the absence of a desired outcome or the presence of an undesirable situation. The goal during a problem is to identify the root cause, find a solution, and restore normalcy. The focus is on resolving the problem rather than achieving a specific goal.

Approach and Strategy

When it comes to approaching challenges and problems, different strategies and approaches are often required. Challenges are typically approached with a proactive mindset, where individuals actively seek opportunities to overcome obstacles and achieve their goals. Strategies for tackling challenges may involve breaking them down into smaller, manageable tasks, seeking guidance or support from others, or developing new skills or knowledge.

Problems, on the other hand, require a more reactive approach. Individuals facing problems need to identify the root cause, analyze the situation, and develop strategies to resolve the issue. Problem-solving techniques such as brainstorming, root cause analysis, and decision-making frameworks are often employed to address problems effectively.

Emotional Impact

Challenges and problems can have different emotional impacts on individuals. Challenges, despite their difficulties, often evoke a sense of excitement, motivation, and accomplishment when overcome. The process of facing and conquering challenges can boost self-confidence, enhance resilience, and foster personal growth.

Problems, on the other hand, can evoke negative emotions such as frustration, stress, or anxiety. The presence of problems can disrupt normal routines, create uncertainty, and hinder progress. However, successfully resolving problems can bring relief, satisfaction, and a sense of achievement.

While challenges and problems are often used interchangeably, they have distinct attributes that set them apart. Challenges are seen as opportunities for growth, embraced with a positive mindset, and approached with proactive strategies. On the other hand, problems represent obstacles that hinder progress, evoke negative emotions, and require reactive problem-solving approaches.

Understanding the differences between challenges and problems can help individuals and organizations navigate them more effectively. By recognizing the unique characteristics and implications of each, individuals can develop appropriate strategies, mindset, and approaches to overcome challenges and resolve problems, ultimately leading to personal and professional growth.

Comparisons may contain inaccurate information about people, places, or facts. Please report any issues.

difference between problem solving and problem finding

Distinguishing Between Research & Problem Solving

Maria Nguyen

Key Difference – Research vs Problem Solving

Research and problem solving are often confused, as both involve a problem. However, there is a key difference between the two. While problem-solving focuses on finding a solution to an already identified problem, research involves answering a research problem by gathering and analyzing data. In problem-solving, the individual already has the necessary information to make a decision or come up with a solution, but in research, the researcher needs to gather the information before answering the research problem.

Key Takeaways

  • Research requires gathering and analyzing information, while problem-solving involves finding a solution to a known problem.
  • Research is scientific and often requires a sample, whereas problem-solving may not be scientific and doesn’t require a sample.
  • Research involves a hypothesis, while problem-solving usually does not require one.

What is Research?

Research is a process in which the researcher attempts to answer a research problem by gathering and analyzing data. Research is conducted in both natural and social sciences, with the intention of finding answers to a research problem. The process begins with identifying a research problem, developing research questions and objectives, conducting a literature review, creating a methodology, identifying a sample for data collection, and analyzing the data to write a research report.

What is Problem Solving?

Problem-solving is a process in which an individual defines a problem, identifies possible solutions, and evaluates these solutions to find the most effective solution. Problem-solving is not limited to academic disciplines; it is also vital in the industrial setting and within organizations. The process begins with defining the problem, gathering information on possible solutions, and then evaluating and deciding on the most effective solution.

What is the difference between Research and Problem Solving?

Definitions of Research and Problem Solving:

  • Research: A process in which the researcher attempts to answer a research problem by gathering and analyzing data.
  • Problem Solving: A process in which an individual defines a problem, identifies possible solutions, and evaluates these solutions to find the most effective solution.

Characteristics of Research and Problem Solving:

  • Scientific: Research is scientific, while problem-solving may not always be scientific.
  • Process: Research involves a specific process that begins with identifying a research problem and ends with analyzing data to answer the research problem. Problem-solving begins with defining the problem and implementing the identified strategy or solution.
  • Sampling: Research requires a sample to gather information, while problem-solving may not require a sample, as the information is already available.
  • Hypothesis: Research, especially in the natural sciences, requires a hypothesis. Problem-solving does not usually require a hypothesis.

LEAVE A REPLY Cancel reply

Save my name, email, and website in this browser for the next time I comment.

Related Articles

Difference between power & authority, distinguishing could of & could have, distinguishing pixie & bob haircuts, distinguishing between debate & discussion, distinguishing between dialogue & conversation, distinguishing between a present & a gift, distinguishing between will & can, distinguishing between up & upon.

simply_coach_logo-2

  • Business Coach
  • Career Coach
  • Leadership Coach
  • Stakeholder Centered Coach®
  • Goal & Development Planning
  • Stakeholder Integration
  • Action Plans
  • Coaching Programs
  • Coach Matching
  • Scheduling Software for Coaches
  • Client Workspace
  • Resource Library
  • Team Engagements
  • Subscription & Session Packages
  • Showcase Page
  • Invoicing & Payments
  • Email Integration
  • LinkedIn Intergration
  • Contact Management
  • Prospect Management
  • Embedded Video Conferencing
  • Professional Development Log
  • Pricing Solopreneurs Pricing plans that help you grow and flourish as a solopreneur Businesses Agile pricing plans that keep up with your business’ needs

Differences and Similarities Between Coaching and Consulting

difference between problem solving and problem finding

  • Share this article

Table of Contents

You may have probably wondered what is the difference between coaching and consulting , right? It’s a common dilemma for many coaching professionals. Understanding the nuances between these two service offerings can be pivotal in determining the best fit for you and your clients.

Coaching vs consulting, while often intertwined, are distinct approaches to professional development and problem-solving. Coaching focuses on long-term personal and professional growth, empowering individuals or teams to unlock their full potential. In contrast, consulting addresses specific challenges with expert solutions and tactical guidance.

Our goal is to illuminate the key differences and similarities between coaching and consulting, empowering you to make informed decisions about which model aligns best with your expertise and client needs. Let’s move ahead and have a detailed look at what makes it coaching vs consulting.

What is Coaching?

Coaching is about working with clients to help them unlock their full potential and achieve their best performance. As a coach, your role involves asking insightful questions, actively listening, providing constructive feedback, and helping clients set clear, actionable goals. Through this process, you guide them in finding their own solutions and strategies.

It’s crucial to create a safe, non-judgmental space where clients feel comfortable sharing their thoughts and feelings. Your aim is to support their personal growth and development, helping them overcome challenges and build confidence in their decision-making. By empowering clients to reach their goals and continually improving your skills, you play a key role in their journey toward achieving lasting success.

What is Consulting?

Consulting , on the other hand, is more about assessing and resolving specific problems. As a consultant, you are an external expert brought in to provide specialized knowledge and solutions to organizations facing challenges or seeking to capitalize on opportunities. Your role involves delving into complex business issues, conducting thorough analyses, and developing strategic recommendations. You’ll collaborate closely with clients, translating your findings into actionable plans to drive tangible results. Essentially, you are a trusted advisor, bringing an objective perspective and innovative thinking to propel organizations forward.

For instance, a business consultant might be engaged to optimize a company’s supply chain operations. This involves analyzing current processes, identifying inefficiencies, and recommending solutions to improve cost, speed, and reliability.

Core Differences Between Coaching and Consulting

difference between problem solving and problem finding

Coaching and consulting are often confused due to their overlapping objectives of improvement and development. However, these two disciplines employ distinct approaches, roles, and methodologies. Let’s summarize the main differences:

Role in problem-solving

  • Coaching: Coaches typically act as guides, helping clients explore their own challenges and develop solutions. They facilitate self-discovery and growth by asking probing questions and offering perspectives rather than directly solving problems.
  • Consulting: Consultants often take a more direct approach to problem-solving. They analyze data, diagnose issues, and provide specific recommendations or solutions based on their expertise. Examples include leadership coaching which helps you develop managers’ skills and career coaching which helps individuals achieve career goals.

Data approach

  • Coaching: Coaching is often less reliant on quantitative data and more focused on the client’s experiences, values, and perceptions. Coaches emphasize understanding the meaning behind behaviors and decisions.
  • Consulting: Consultants frequently rely on data-driven analysis and industry benchmarks to identify problems and propose solutions. They prioritize measurable outcomes and empirical evidence to drive their recommendations.

Questioning technique

  • Coaching: Coaches use open-ended, exploratory questions to help clients dig deeper into their thoughts and motivations. The aim is to provoke reflection, challenge assumptions, and broaden perspectives.
  • Consulting: Consultants employ systematic questioning techniques to gather specific information about problems, goals, and processes. Their questions are often structured to extract detailed data that inform their analysis and recommendations.

Guidance vs. Authority

  • Coaching: Coaches provide guidance and support to empower clients in achieving their own solutions. They focus on personal and professional development, helping clients build skills and confidence to tackle challenges independently.
  • Consulting: Consultants typically assume an authoritative role, offering expert advice and solutions based on their specialized knowledge and experience. They often take direct responsibility for delivering solutions that meet client needs.

The type of change facilitated

  • Coaching: Coaching primarily focuses on facilitating behavioral and mindset changes within individuals or teams. It aims to improve leadership skills, communication, decision-making, and overall effectiveness.
  • Consulting: Consulting tends to focus on implementing specific changes within organizations or industries. Consultants address operational, strategic, or technical issues to optimize processes, enhance efficiency, or achieve competitive advantage.

While coaching and consulting differ in their core approaches, it’s important to note that they can be complementary and used in conjunction to achieve comprehensive development and organizational success.

Core Similarities Between Coaching and Consulting

Coaching and consulting, while distinct in their approaches, share fundamental commonalities that underscore their value in driving organizational and individual growth. Let’s break it down further: 

  • Results-oriented: Both coaching and consulting are driven by the goal of achieving measurable outcomes and improvements for their clients.
  • Expertise application across levels: Professionals in both roles apply their expertise at various organizational levels, from individual coaching clients to advising senior management.
  • Strong problem-solving skills: Both coaches and consultants possess strong analytical and problem-solving abilities, albeit applied in different contexts and with different methodologies.
  • Leadership and analytical abilities: Both roles require strong leadership skills to guide clients or organizations through change processes, coupled with analytical abilities to assess situations and develop effective strategies.

Understanding the key differences between a coach and a consultant is crucial to determining who can best support your personal or professional growth. Coaches and consultants each offer unique expertise, but their roles and approaches are distinct. By knowing when to engage a coach or a consultant, you can make informed decisions to achieve your specific goals and overcome challenges.

Technology: Adding Value to Consulting & Coaching

Today success in consulting and coaching hinges on efficiency and delivering exceptional value to your clients.  But how can you manage multiple clients, personalize programs, and track progress, all while ensuring a seamless experience?  The answer lies in leveraging the power of technology.

Streamline collaboration & communication:

Gone are the days of endless email chains and scattered documents cluttering your inbox and desk. Technology allows you to create a centralized platform for collaboration, fostering a more connected coaching or consulting experience.  Think of a system where clients can take session notes and store them in a Client Workspace , effortlessly track goals they set with you using Goal & Development Planning , and communicate directly with you – all in one place. Simply.Coach provides exactly that, with a user-friendly interface that facilitates effortless communication through features like  Notes and messaging, and keeps everyone on the same page thanks to a centralized platform for all coaching or consulting activities.

Digitize Processes & Engagements:

Ditch the paper-based proposals and manual progress tracking. Technology empowers you to streamline your entire process, from onboarding new clients to delivering tailored coaching or consulting programs. Simply.Coach empowers you to ditch the stacks of paperwork and time-consuming administrative tasks. By leveraging features like Scheduling Software for Coaches , Business Management tools, and secure document storage, you can focus on what truly makes your coaching or consulting unique – fostering deep connections with your clients and guiding them towards achieving transformative results.

Also read: 11 Best Online Coaching Platforms 2024

Save time & invest in impact:

The most valuable resource you possess is your time. Technology automates time-consuming tasks, allowing you to invest your energy where it counts, developing personalized strategies and fostering deeper connections with your clients. With Simply.Coach, you can create custom coaching packages, track client progress through insightful analytics, and automate repetitive tasks, giving you back precious hours to focus on what truly makes your coaching or consulting unique.

Also read: Simplify Coaching Administration: Payment Processing and Activity Tracking

Choosing the Right Approach

You’re in a unique position to guide individuals and businesses towards growth and success. But how do you know whether coaching or consulting is the right fit for your client? It’s a common dilemma. Let’s break it down.

The client’s perspective

What’s truly challenging them? Is it a personal hurdle or a business obstacle? This is crucial because it will determine the most effective approach. If they’re seeking a ready-made solution, consulting might be the answer. But if they want to unlock their own potential and discover their path forward, coaching could be the key.

Consider their desired outcome. Are they looking to transform personally or professionally? Are they aiming for immediate results or sustainable growth? Each path has its merits. Consulting offers expert advice and quick fixes while coaching fosters long-term development and self-reliance.

And let’s not forget the budget. Coaching and consulting services vary in cost. It’s essential to align your offerings with their financial capabilities. Remember, the ideal approach isn’t about what’s best for you; it’s about what best serves your client.

Tailoring your approach

If your client is grappling with specific business challenges that demand immediate solutions, consulting is likely the way to go. You bring a wealth of industry knowledge and experience to the table. You’re the problem-solver, the strategist, the expert they turn to in times of crisis. Your role is to provide clear recommendations, develop actionable plans, and guide them through implementation.

On the other hand, if your client is seeking personal or professional growth, coaching is your arena. You’re the catalyst for change, the thought partner who helps them uncover their potential. Your focus is on building their capabilities, enhancing their self-awareness, and empowering them to make informed decisions. You’re not just providing solutions; you’re equipping them to find their solutions.

Ultimately, the choice between coaching and consulting depends on the client’s unique needs and goals. By carefully assessing their situation and aligning your services accordingly, you can be a true partner in their journey towards success.

Also read: Top Business Coaching Podcasts for Growth and Performance (2024)

This detailed exploration of “coaching vs consulting” highlights the distinct paths each strategy offers, empowering you to make an informed choice that aligns with your client’s personal or business goals. Understanding these differences and similarities will help you decide the best approach to take for sustainable growth and problem resolution.

Here at Simply.Coach , we answer the needs of coaching and consulting. You, as our client, are the expert on your situation. Our role is to empower you by combining the best of both, the power of coaching and consulting. Sign up for a free trial today and see how we can make a difference in your journey towards success!

  • What is the difference between coaching and consulting?

Coaching differs from consulting in its focus and approach. Coaching prioritizes long-term personal and professional growth, empowering individuals or teams to discover their own solutions through guidance and support. In contrast, consulting addresses specific challenges with expert advice and tactical recommendations, providing immediate solutions and direction.

  • When to choose a coach?

If you’re looking to create a cohesive, long-term development plan that focuses on achieving personal or professional goals, a coach is your best choice. Coaches guide you through a tailored journey, helping you unlock your potential and track your progress every step of the way. Simply.Coach enhances this experience by taking your entire client journey online, providing tools for goal tracking, session management, digital assessments, and more, ensuring a seamless and effective coaching process.

  • When to choose a consultant?

If you’re facing a pressing issue that requires swift resolution, expert guidance, and hands-on implementation, a consultant can be your solution. Consultants offer specialized knowledge to quickly diagnose problems, develop effective strategies, and then put those plans into action, saving you valuable time and resources while ensuring optimal outcomes.

  • How do they approach problems?

A coach and a consultant offer distinct approaches to support clients. A coach primarily acts as a guide, using questions to help clients uncover their solutions and develop strategies. In contrast, a consultant provides expert analysis and specific recommendations based on data and industry knowledge. While both roles aim to assist clients, the coach focuses on empowering the client to find their own path, while the consultant offers direct solutions and expertise.

  • How do they engage with clients?

A coach offers a long-term partnership centered on personal development through regular sessions, aiming to foster continuous growth. In contrast, a consultant provides project-based expertise to address specific challenges, delivering solutions within a defined scope and timeframe.

  • What technology do they use?

Coaches and consultants both leverage technology for similar tasks: scheduling appointments, communicating with clients, and sharing resources. Both coaches and consultants can benefit from platforms like Simply.Coach. Coaches use it to streamline client management and conduct assessments, while consultants leverage its capabilities for data analysis, project management, and creating interactive client portals.

How to Create and Maintain a Coaching Log Template

How to Become a Certified Executive Functioning Coach?

6 Best Mindset Coach Certifications and Training Programs (2024)

Strategies for Conducting Great One-on-One Coaching Sessions

The Ultimate Guide to Executive Coaching Pricing in 2024

Crafting Effective Payment Policies for Your Coaching Business: A Guide with Examples

About Simply.Coach

Simply.Coach  is an enterprise-grade coaching software designed to be used by individual coaches and coaching businesses. Trusted by ICF-accredited and EMCC-credentialed coaches worldwide, Simply.Coach is on a mission to elevate the experience and process of coaching with technology-led tools and solutions.  

Other Categories

  • Business Coaching
  • Career Coaching
  • Coaching Business
  • Coaching Enterprise
  • Coaching Management Software
  • Coaching Tools
  • Executive Coaching
  • Featured Blogs
  • Independent Coaching
  • International Blogs
  • Leadership Coaching
  • Life Coaching
  • Relationship Coaching
  • The Business of Coaching
  • Therapy & Counselling
  • Training & Development

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Save my name, email, and website in this browser for the next time I comment.

  • Why Simply.Coach
  • Coach Reviews
  • All-In-One Coaching Software
  • Affiliate Program
  • Refer and Earn
  • Press Release
  • Web Stories
  • Privacy Policy
  • Cookie Policy
  • Platform Status
  • Business Coach Software
  • Life Coach Software
  • Career Coach Software
  • Leadership Coach Software
  • Pricing for Solopreneurs
  • Pricing for Businesses
  • Coaching Software Comparison
  • Client Management
  • Business Management
  • [email protected]

software advice

Efficient estimation of the modified Gromov–Hausdorff distance between unweighted graphs

  • Open access
  • Published: 23 August 2024
  • Volume 48 , article number  14 , ( 2024 )

Cite this article

You have full access to this open access article

difference between problem solving and problem finding

  • Vladyslav Oles   ORCID: orcid.org/0000-0001-8872-7463 1 ,
  • Nathan Lemons 1 &
  • Alexander Panchenko 1  

Gromov–Hausdorff distances measure shape difference between the objects representable as compact metric spaces, e.g. point clouds, manifolds, or graphs. Computing any Gromov–Hausdorff distance is equivalent to solving an NP-hard optimization problem, deeming the notion impractical for applications. In this paper we propose a polynomial algorithm for estimating the so-called modified Gromov–Hausdorff (mGH) distance, a relaxation of the standard Gromov–Hausdorff (GH) distance with similar topological properties. We implement the algorithm for the case of compact metric spaces induced by unweighted graphs as part of Python library scikit-tda , and demonstrate its performance on real-world and synthetic networks. The algorithm finds the mGH distances exactly on most graphs with the scale-free property. We use the computed mGH distances to successfully detect outliers in real-world social and computer networks.

Avoid common mistakes on your manuscript.

1 Introduction

1.1 isometry-invariant distances between metric spaces.

The Gromov–Hausdorff (GH) distance, proposed by Gromov in Gromov ( 1981 ) (see also Tuzhilin ( 2016 )), measures how far two compact metric spaces are from being isometric to each other. Since its conception four decades ago, the GH distance was mainly studied from a theoretical standpoint, as its computation poses an intractable combinatorial problem (Chazal et al. 2009 ; Mémoli 2007 ; Schmiedl 2017 ). Computing the GH distance can be thought of as an extension of the NP-hard Quadratic Bottleneck Assignment Problem (QBAP) that allows non-injective assignments in its search space. In particular, it was shown that approximating the distance up to a factor of \(\sqrt{N}\) in the general case (or up to a factor of 3 for ultrametric spaces or metric trees) cannot be done in polynomial time unless \(\text {P}=\text {NP}\) (Schmiedl 2017 ; Pankaj K et al. 2018 ). However, a polynomial-time algorithm for \(\sqrt{N}\) -approximation was given for unweighted metric trees in Pankaj K et al. ( 2018 ), and a superlinear \(\frac{5}{4}\) -approximation algorithm for subsets of \(\mathbb {R}^1\) was derived in Majhi et al. ( 2016 ). In Mémoli and Sapiro ( 2004 ), the GH distance was first considered for shape comparison, and several of its computationally motivated relaxations were presented since then.

Different variations of the Gromov–Wasserstein distance, a relaxation of the GH distance for metric measure spaces motivated by the optimal transport problem (Villani 2003 ), were proposed in Sturm ( 2006 ) and in Mémoli ( 2007 ), and further studied in e.g. Mémoli ( 2009 ), Mémoli ( 2011 ), Peyré et al. ( 2016 ). The Gromov–Wasserstein distances are based on a generalization of bijective assignments, which are less expressive than the assignments allowed in the GH distance. Similarly to the GH distance, computing the Gromov–Wasserstein distance also requires solving a non-convex optimization problem. Recently, semidefinite relaxations of both the GH and Gromov–Wasserstein distances were studied in Villar et al. ( 2016 ). While allowing polynomial-time approximation, these relaxations admit distance 0 between non-isometric objects, losing the desired property of being a metric. Another result of potential interest from Villar et al. ( 2016 ) is a feasible algorithm for an upper bound of the GH (and therefore the mGH) distance. In Lipman and Daubechies ( 2011 ), the authors define the conformal Wasserstein distance, inspired by the Gromov–Wasserstein distance. It is a metric on the isometry classes of Riemannian 2-manifolds that can be accurately approximated in polynomial time under some reasonable conditions.

In Mémoli ( 2012 ), Mémoli introduces the modified Gromov–Hausdorff (mGH) distance, another relaxation of the GH distance that preserves the property of being a metric on the isometry classes of compact metric spaces. Same as the GH distance, the mGH distance is based on assignments between the metric spaces that are allowed to be non-injective. It turns out that the two distances are not equivalent in the general case (Oles and Vixie 2022 ), although they are topologically equivalent within precompact (in the GH-distance sense) families of compact metric spaces (Mémoli 2012 ).

Directly computing the mGH distance still poses an intractable combinatorial optimization of \(O(N^N)\) time complexity (as compared to \(O(N^{2N})\) for the standard GH distance). Our focus on the mGH distance in this paper is partially motivated by the so-called “structural theorem” (Theorem 5.1 in Mémoli ( 2012 )), which allows for the decomposition of the computation into solving a sequence of polynomial-time problems.

1.2 Shape-based graph matching

Because graphs are ubiquitous in applications, the task of graph matching, i.e. measuring how much a pair of graphs are different from each other, is extensively studied. Common approaches to exact graph matching are those based on graph shape, such as subgraph isomorphism and maximum common subgraph (Conte et al. 2004 ; Foggia et al. 2014 ). The shape-based approaches appear in many fields including neuroscience (Van Wijk et al. 2010 ), telecommunications (Shoubridge et al. 2002 ), and chemoinformatics (Raymond and Willett 2002 ; Vandewiele et al. 2012 ). While efficient heuristics for these approaches exist for special cases (e.g. planar graphs), applying them in the general case requires solving an NP-complete problem (Bunke 1997 ; Conte et al. 2004 ).

Recently, the Gromov–Hausdorff framework for graph matching was explored both theoretically (Aflalo et al. 2015 ) and in applications, e.g. in the fields of neuroscience (Lee et al. 2011 , 2006 ; Hendrikson 2016 ), social sciences, and finance (Hendrikson 2016 ). Undirected graphs admit metric space representation using the geodesic (shortest path length) distances on their vertex sets. However, the high computational cost of computing the isometry-invariant distances impedes a more widespread application of this approach.

1.3 Our contribution

Our main contribution is a theoretical framework for producing polynomial-time lower bounds of the GH and mGH distances. Furthermore, we present an algorithm for estimating the mGH distance, built upon this framework. We implement the algorithm for metric representations of unweighted graphs, leveraging their properties to reduce the polynomial order in the algorithm’s time complexity. We demonstrate the performance of the algorithm on several datasets of real-world and synthesized graphs of up to several thousand vertices.

The rest of the paper is structured as follows. Section 2 briefly reviews (Mémoli 2013 ) to formally define the GH and mGH distances, show their relation to each other, and state some of their properties. In Sects. 3 and 4 we discuss the ideas for establishing lower and upper bounds, respectively, of the mGH distance between finite metric spaces. In Sect. 5 , we describe the algorithm for estimating the mGH distance, show that it has polynomial time complexity, then discuss and present its implementation for the case of unweighted graphs. Computational examples from real-world and synthetic datasets are given in Sects. 6 and 7 summarizes our work. The Appendix contains pseudocode for the procedures and algorithms, omitted from the main paper for brevity.

2 Background

When talking about metric space given by set X and distance function \(d_X: X \times X \rightarrow \mathbb {R}\) , we use notation \((X, d_X)\) and its shorter version X interchangeably. We expect the distinction between a set X and a metric space X to be clear from the context.

2.1 Definition of the Gromov–Hausdorff distance

Given \((X, d_X), (Y, d_Y) \in \mathcal {M}\) , where \(\mathcal {M}\) denotes the set of all compact metric spaces, the GH distance measures how far the two metric spaces are from being isometric. It considers any “sufficiently rich” third metric space \((Z, d_Z)\) that contains isometric copies of X and Y , measuring the Hausdorff distance (in Z ) between these copies, and minimizes over the choice of the isometric copies and Z . Formally, the GH distance is defined as

where \(\phi _X : X \rightarrow Z\) and \(\phi _Y : Y \rightarrow Z\) are isometric embeddings of X and Y into Z , and \(d_{\mathcal {H}}^Z\) is the Hausdorff distance in Z :

(see Fig. 1 ). Gromov has shown in Gromov ( 2007 ) that \(d_{\mathcal{G}\mathcal{H}}\) is a metric on the isometry classes of \(\mathcal {M}\) , constituting what is called a Gromov–Hausdorff space.

figure 1

Illustration of the idea underlying the Gromov–Hausdorff distance

Although the above definition gives the conceptual understanding of the GH distance, it is not very helpful from the computational standpoint. The next subsection introduces a more practical characterization of the GH distance.

2.2 Characterization of the GH distance

For two sets X and Y , we say that relation \(R \subseteq X \times Y\) is a correspondence if for every \(x \in X\) there exists some \(y \in Y\) s.t. \((x, y) \in R\) and for every \(y \in Y\) there exists some \(x \in X\) s.t. \((x, y) \in R\) . We denote the set of all correspondences between X and Y by \(\mathcal {R}(X, Y)\) .

If R is a relation between metric spaces \((X, d_X)\) and \((Y, d_Y)\) , its distortion is defined as the number

Notice that any mapping \(\varphi : X \rightarrow Y\) induces the relation \(R_\varphi \buildrel \textrm{def}\over =\big \{\big (x, \varphi (x)\big ): x \in X \big \}\) , and we denote

Similarly, any \(\psi : Y \rightarrow X\) induces the relation \(R_\psi \buildrel \textrm{def}\over =\big \{\big (\psi (y), y\big ): y \in Y \big \}\) . If both \(\varphi : X \rightarrow Y\) and \(\psi : Y \rightarrow X\) are given, we can define the relation \(R_{\varphi , \psi } \buildrel \textrm{def}\over =R_\varphi \cup R_\psi \) , and realize that it is actually a correspondence, \(R_{\varphi , \psi } \in \mathcal {R}(X, Y)\) .

A useful result in Kalton and Ostrovskii ( 1999 ) identifies computing GH distance with solving an optimization problem, either over the correspondences between X and Y or over the functions \(\varphi : X \rightarrow Y\) and \(\psi : Y \rightarrow X\) :

By definition, distortion of any relation \(R \subseteq X \times Y\) is bounded by \({{\,\textrm{dis}\,}}R \le d_{\max }\) , where \(d_{\max } \buildrel \textrm{def}\over =\max \{{{\,\textrm{diam}\,}}X, {{\,\textrm{diam}\,}}Y\}\) . Combined with the characterization of the GH distance, it yields \(d_{\mathcal{G}\mathcal{H}}(X, Y) \le \frac{1}{2} d_{\max }\) .

Let \(*\) denote the (compact) metric space that is comprised of exactly one point. For any correspondence \(R \in \mathcal {R}(X, *)\) , \({{\,\textrm{dis}\,}}R = \sup _{x, x' \in X} \big |d_X(x, x') - 0\big | = {{\,\textrm{diam}\,}}X\) . The above characterization implies that \(d_{\mathcal{G}\mathcal{H}}(X, *) = \frac{1}{2}{{\,\textrm{diam}\,}}X\) , and, by an analogous argument, \(d_{\mathcal{G}\mathcal{H}}(Y, *) = \frac{1}{2}{{\,\textrm{diam}\,}}Y\) . From the triangle inequality for the GH distance, \(d_{\mathcal{G}\mathcal{H}}(X, Y) \ge \big |d_{\mathcal{G}\mathcal{H}}(X, *) - d_{\mathcal{G}\mathcal{H}}(Y, *)\big | = \frac{1}{2}|{{\,\textrm{diam}\,}}X - {{\,\textrm{diam}\,}}Y|\) .

2.3 Modifying the GH distance

Recall that for some \(\varphi : X \rightarrow Y\) and \(\psi : Y \rightarrow X\) , correspondence \(R_{\varphi , \psi }\) is defined as \(R_{\varphi , \psi } = R_\varphi \cup R_\psi \) . For any two elements in \(R_{\varphi , \psi }\) , either both belong to \(R_\varphi \) , or both belong to \(R_\psi \) , or one of them belongs to \(R_\varphi \) while the other belongs to \(R_\psi \) . It follows that

where \(C_{\varphi , \psi } \buildrel \textrm{def}\over =\displaystyle \sup _{x \in X, y \in Y} \big |d_X\big (x, \psi (y)\big ) - d_Y\big (\varphi (x), y\big )\big |\) .

Notice that the number \(C_{\varphi , \psi }\) acts as a coupling term between the choices of \(\varphi \) and \(\psi \) in the optimization problem

making its search space to be of the size \(|X|^{|Y|}|Y|^{|X|}\) . Discarding the coupling term \(C_{\varphi , \psi }\) yields the notion of the modified Gromov–Hausdorff distance

Computing \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y)\) requires solving two decoupled optimization problems whose search spaces are of the size \(|X|^{|Y|}\) and \(|Y|^{|X|}\) , respectively. An equivalent definition emphasizing this fact is given by

Similarly to \(d_{\mathcal{G}\mathcal{H}}\) , \({\widehat{d}}_{\mathcal{G}\mathcal{H}}\) is a metric on the isometry classes of \(\mathcal {M}\) . Moreover, \({\widehat{d}}_{\mathcal{G}\mathcal{H}}\) is topologically equivalent to \(d_{\mathcal{G}\mathcal{H}}\) within GH-precompact families of metric spaces (Mémoli 2012 ).

2.4 Curvature sets and the structural theorem

Let \(X \in \mathcal {M}\) , and consider \((x_1, \ldots , x_n) \in X^{\times n}\) , an n -tuple of points in X for some \(n \in \mathbb {N}\) . The \(n \times n\) matrix containing their pairwise distances is called the distance sample induced by \((x_1, \ldots , x_n)\) , and denoted by \(D^{(x_1, \ldots , x_n)} \buildrel \textrm{def}\over =\big (d_X(x_i, x_j)\big )_{i,j=1}^n\) . A distance sample generalizes the notion of distance matrix of \(\{x_1, \ldots , x_n\}\) when \(x_1, \ldots , x_n\) are not necessarily distinct. Unlike a distance matrix, a distance sample may contain zeros off the main diagonal.

The n - th curvature set of X is then defined as a set of all \(n \times n\) distance samples of X , denoted

For example, \(\mathcal {K}_2(X)\) contains the same information as the entries of \(D^X\) , the distance matrix of X ; when X is a smooth planar curve, then its curvature at every point can be calculated from the information contained in \(\mathcal {K}_3(X)\) (Calabi et al. 1998 ), thus providing motivation for the name curvature sets .

Curvature sets contain information about the shape of a compact metric space in permutation-invariant way. In particular, any \(X \in \mathcal {M}\) and \(Y \in \mathcal {M}\) are isometric if and only if \(\mathcal {K}_n(X) = \mathcal {K}_n(Y)\) for every \(n \in \mathbb {N}\) (3.27 in Gromov ( 2007 )). To discriminate the shapes of X and Y , it is therefore reasonable to measure the difference between \(\mathcal {K}_n(X)\) and \(\mathcal {K}_n(Y)\) for various \(n \in \mathbb {N}\) . Since both n -th curvature sets are subsets of the same space \(\mathbb {R}^{n \times n}\) , Hausdorff distance is a natural metric between them. We equip the set of \(n \times n\) matrices with distance \(d_{l^\infty }(A, B) \buildrel \textrm{def}\over =\max _{i,j} \left| A_{i,j}-B_{i,j}\right| \) , and define

where \(d_{\mathcal {H}}^{\mathbb {R}^{n \times n}}\) is the \(d_{l^\infty }\) -induced Hausdorff distance on \(\mathbb {R}^{n \times n}\) .

The choice of distance \(d_{l^\infty }: \mathbb {R}^{n \times n} \times \mathbb {R}^{n \times n} \rightarrow \mathbb {R}\) complies with the notion of distortion of a mapping. If \(\varphi \) is a mapping from X to Y for \(X = \{x_1, \ldots , x_{|X|}\}\) , Y —metric spaces, then

The fact that \(\varphi \) can be non-injective provides intuition for the possibility of identical points in a tuple from the definition of a distance sample.

An important result, extensively relied upon in this paper, is the so-called “structural theorem” for the mGH (Mémoli 2012 , 2013 ):

Notice that the bounds of the GH distance from the inequalities \(\frac{1}{2} |{{\,\textrm{diam}\,}}X - {{\,\textrm{diam}\,}}Y| \le d_{\mathcal{G}\mathcal{H}}(X, Y) \le \frac{1}{2}d_{\max }\) also hold for the mGH distance:

while \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \le d_{\mathcal{G}\mathcal{H}}(X, Y) \le d_{\max }\) trivially follows from the definition of the mGH distance.

3 Lower bound for \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y)\)

This section provides theoretical results and algorithms for an informative lower bound for the mGH distance between a pair of metric spaces X and Y . This and the following sections assume that the metric spaces are non-empty and finite, i.e. \(1 \le |X|, |Y| < \infty \) . When talking about algorithmic time complexities, we denote the input size with \(N \buildrel \textrm{def}\over =\max \{|X|, |Y|\}\) .

We notice that efficient estimation of either the GH or the mGH distance between finite metric spaces allows for its estimation between infinite compact metric spaces with desired accuracy. This is because for any \(X \in \mathcal {M}\) and \(\epsilon > 0\) , there exist finite \(X_\epsilon \subset X\) that is an \(\epsilon \) -net of X , which gives

Similarly, for any \(Y \in \mathcal {M}\) there exists its finite \(\epsilon \) -net \(Y_\epsilon \) , and therefore

Feasible algorithms for lower bounds are important in e.g. classification tasks, where knowledge that a distance exceeds some threshold can make computing the actual distance unnecessary. In particular, if the mGH distance between metric representations of two graphs is \(> 0\) , it immediately follows that the graphs are not isomorphic.

3.1 d -bounded matrices

Let A be a square matrix. We say that A is d - bounded for some \(d \in \mathbb {R}\) if every off-diagonal entry of A is \(\ge d\) . Similarly, A is positive-bounded if its off-diagonal entries are positive. Naturally, any d -bounded matrix for \(d > 0\) is also positive-bounded.

Notice that a distance sample \(D^{(x_1, \ldots , x_n)}\) of X is d -bounded if and only if \(d_X(x_i, x_j) \ge d \quad \forall i \ne j\) , and positive-bounded if and only if \(x_1, \ldots , x_n\) are distinct. By non-negativity of a metric, any distance sample is 0-bounded.

Let A and B be square matrices of the same size. If A is d -bounded for some \(d > 0\) , and B is 0-bounded but not positive-bounded, then \(d_{l^\infty }(A, B) \ge d\) .

Recall that a matrix B is a permutation similarity of a (same-sized) matrix A if \(B = PAP^{-1}\) for some permutation matrix P . Equivalently, B is obtained from A by permuting both its rows and its columns according to some permutation \(\pi \) : \(B_{i,j} = A_{\pi (i),\pi (j)}\) . Given \(n \in \mathbb {N}\) , we will denote the set of permutation similarities of \(n \times n\) principal submatrices of A by \(\textrm{PSPS}_n(A)\) .

A distance sample \(K \in \mathcal {K}_n(X)\) is positive-bounded if and only if it is a permutation similarity of a principal submatrix of \(D^X\) , i.e. if and only if \(K \in \textrm{PSPS}_n(D^X)\) . In particular, there are no positive-bounded distance samples in \(\mathcal {K}_n(X)\) if \(n > |X|\) .

Let \(K \in \mathcal {K}_n(X)\) be d -bounded for some \(d > 0\) . If \(n > |Y|\) , then \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \ge \frac{d}{2}\) .

Notice that \(L \in \mathcal {K}_n(Y)\) implies that L is 0-bounded (by non-negativity of a metric) and not positive-bounded (from Claim 2 ). Then

\(\square \)

For the standard GH distance, its lower bound implied by Theorem 1 is a direct consequence of its relationship with the n -packing number established in Cho ( 1997 ).

3.2 Obtaining d -bounded distance samples of large size

In order to apply Theorem 1 for some \(d > 0\) , one needs to verify the existence of a d -bounded distance sample from X that exceeds Y in size. Ideally, one wants to know M ( X ,  d ), the largest size of a d -bounded distance sample of X :

Equivalently, M ( X ,  d ) is the so-called d -packing number of X : the largest number of points one can sample from X such that they all are at least d away from each other. Finding M ( X ,  d ) is equivalent to finding the size of a maximum independent set of the graph \(G = \big (X, \{(x_i, x_j): d_X(x_i, x_j) < d\}\big )\) . Unfortunately, this problem is known to be NP-hard (Kégl 2002 ), and we therefore require approximation techniques to search for a sufficiently large d -bounded distance sample of X .

We implement greedy algorithm FindLarge K (see Appendix A for the pseudocode) that, given the distance matrix of X and some \(d > 0\) , finds in \(O(N^3)\) time a d -bounded distance sample \(K \in \mathcal {K}_{{\widetilde{M}}(X, d)}(X)\) , where \({\widetilde{M}}(X, d)\) is an approximation of M ( X ,  d ). Informally, the algorithm iteratively removes rows (and same-index columns) from \(D^X\) until all off-diagonal entries of the resulting K are \(\ge d\) . At each step, the algorithm chooses to remove a row that is least d -bounded , i.e. one with the highest (non-zero) count of off-diagonal entries \(< d\) .

Removing a row from K also “collaterally” removes an entry \(< d\) from some of the remaining rows (due to removal of the corresponding column), potentially turning them into d -bounded. The counts of off-diagonal entries \(<d\) in these rows define the number of newly appeared d -bounded rows in the remaining matrix at each step, thus controlling the duration of FindLarge K . In particular, the maximum duration (and therefore the worst approximation \({\widetilde{M}}(X, d)\) ) is attained when “collaterally” removed entries \(< d\) reside in the least d -bounded rows at each step, which minimizes the number of d -bounded rows obtained from the removal. Let w be the maximum count of off-diagonal entries \(<d\) in the rows of \(D^X\) . Assuming the worst case scenario, each iteration of \(\textsc {FindLarge}K(D^X, d)\) reduces the number of rows with w off-diagonal entries \(<d\) by \(w+1\) (one row is removed and the counts for w others become \(w-1\) ), or to zero if fewer than \(w+1\) of them remains. For the sake of simplicity, we will assume that \(w+1\) divides | X |. It follows that after \(\frac{|X|}{w+1}\) iterations the maximum count of off-diagonal entries \(<d\) in the \(\frac{w}{w+1}|X|\) rows of K is at most \(w-1\) . More generally, if for some \(k \le w\) the current K is comprised by \(\big (1-\frac{k}{w+1}\big )|X|\) rows with at most \(w-k\) off-diagonal entries \(<d\) each, then after another

iterations the maximum count will be at most \(w-k-1\) . By induction, K will contain no off-diagonal entries \(<d\) after at most \(w\frac{|X|}{w+1}\) iterations, which implies that its resulting size \({\widetilde{M}}(X, d)\) must be at least \(\frac{1}{w+1}|X|\) . Because \(M(X, d) \le |X|\) , the approximation ratio of \({\widetilde{M}}(X, d)\) is \(\frac{1}{w+1}\) .

Notice that the obtained K does not need to be unique, because at any step there can be multiple least d -bounded rows. Choosing which one of them to remove allows selecting for some desired characteristics in the retained rows of K . In particular, Sect. 3.4 provides motivation to select for bigger entries in the resulting d -bounded distance sample K . To accommodate this, we choose to remove at each step a least d -bounded row with the smallest sum of off-diagonal entries \(\ge d\) , so-called smallest least d -bounded row. Since uniqueness of a smallest least d -bounded row is not guaranteed either, we implemented procedure FindLeastBoundedRow (see Appendix B for the pseudocode) to find the index of the first such row in a matrix.

3.3 Using permutation similarities of principal submatrices of \(D^Y\)

Theorem 1 establishes that \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \ge \frac{d}{2}\) from the existence of some d -bounded distance sample of sufficiently large size. However, such distance samples may not exist in certain cases (e.g. when \(|X| = |Y|\) ), thus deeming Theorem 1 inapplicable. The main result of this subsection, Theorem 2 , complements Theorem 1 by allowing to verify \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \ge \frac{d}{2}\) in those cases.

Let \(K \in \mathcal {K}_n(X)\) be d -bounded for some \(d > 0\) , and let \(n \le |Y|\) . If for some \(i \in \langle n \rangle \buildrel \textrm{def}\over =\{1, \ldots , n\}\)

then \(d_{l^\infty }\big (K, \mathcal {K}_n(Y)\big ) \ge d\) .

Let \(L \in \mathcal {K}_n(Y)\) . If L is not positive-bounded, \(d_{l^\infty }(K, L) \ge d\) follows from Claim 1 and the fact that any distance sample is 0-bounded. If L is positive-bounded, then \(L \in \textrm{PSPS}_n(D^Y)\) from Claim 2 , and the premise entails

Because \(d_{l^\infty }(K, L) \ge d\) for an arbitrary choice of \(L \in \mathcal {K}_n(Y)\) , we have \(d_{l^\infty }\big (K, \mathcal {K}_n(Y)\big ) \ge d.\) \(\square \)

A naive approach to proving \(d_{l^\infty }(K, \mathcal {K}_n(Y)) \ge d\) is to show that \(d_{l^\infty }(K, L) \ge d\) for each \(L \in \mathcal {K}_n(Y)\) , which comprises an instance of the NP-hard QBAP. Instead, the premise of Lemma 1 (for a particular i ) can be checked by solving at most | Y | optimization problems of O (| Y |) time complexity each, as will be shown in the next subsection.

Let \(K \in \mathcal {K}_n(X)\) be d -bounded for some \(d > 0\) , and let \(n \le |Y|\) . If for some \(i \in \langle n \rangle \)

then \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \ge \frac{d}{2}\) .

3.4 Verifying \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \ge \frac{d}{2}\)

Let \(d > 0\) . To see if we can verify \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \ge \frac{d}{2}\) from \(D^X\) and \(D^Y\) , we start by calling FindLarge K to obtain a d -bounded distance sample \(K \in \mathcal {K}_n(X)\) for some \(n \ge \frac{1}{w+1}M(X, d)\) . If \(n > |Y|\) , then \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \ge \frac{d}{2}\) follows immediately from Theorem 1 . Otherwise, we want to obtain this lower bound from Theorem 2 , which requires showing that some \(i \in \langle n \rangle \) satisfies

Let i be fixed. If \(L \in \textrm{PSPS}_n(D^Y)\) , then all entries in \(\textrm{row}_{i}(L)\) come from one row of \(D^Y\) , with \(L_{i,i} = 0\) being the diagonal element in that row. The choice of i thus induces a (disjoint) partition of \(\textrm{PSPS}_n(D^Y)\) :

where \(\textrm{PSPS}_n^{i \leftarrow j}(D^Y)\) is the set of all permutation similarities of principal submatrices of \(D^Y\) whose i -th row is comprised of the entries in \(\textrm{row}_{j}(D^Y)\) . Therefore, the condition

can be verified by showing that

Let j , in addition to i , be fixed. Notice that any \(L \in \textrm{PSPS}_n^{i\leftarrow j}(D^Y)\) corresponds to an injective mapping \(f_L:\langle n \rangle \rightarrow \langle |Y| \rangle \) that defines the entries from \(\textrm{row}_{j}(D^Y)\) that populate \(\textrm{row}_{i}(L)\) : \(L_{i, k} = D^Y_{j, f_L(k)}\) . In particular, \(f_L(i) = j\) , because \(L_{i,i} = D^Y_{j,j}\) for any \(L \in \textrm{PSPS}_n^{i\leftarrow j}(D^Y)\) . Therefore, the condition

is equivalent to the non-existence of an injective \(f_L:\langle n \rangle \rightarrow \langle |Y| \rangle \) such that \(|K_{i, k} - D^Y_{j, f_L(k)}| < d \quad \forall k \in \langle n \rangle \) and \(f_L(i) = j\) . The decision about the existence of a feasible assignment \(f_L\) between the entries of \(\textrm{row}_{i}(K)\) and \(\textrm{row}_{j}(D^Y)\) is an instance of linear assignment feasibility problem. If such \(f_L\) exists, it can be constructed by iteratively pairing the smallest unassigned \(K_{i, k}\) to the smallest available \(D^Y_{j, h}\) s.t. \(|K_{i, k} - D^Y_{j, h}| < d\) , that is, by setting \(f_L(k) = h\) (see Claim 3 ). It follows that each entry in \(\textrm{row}_{j}(D^Y)\) needs to be checked at most once, and hence solving the feasibility problem takes O (| Y |) time if the entries in both \(\textrm{row}_{i}(K)\) and \(\textrm{row}_{j}(D^Y)\) are sorted. Procedure SolveFeasibleAssignment (see Appendix C for the pseudocode) implements the solution for a pair of vectors, given their entries are arranged in ascending order. We notice that ignoring the actual order of the (off-diagonal) entries in \(\textrm{row}_{i}(K)\) and \(\textrm{row}_{j}(D^Y)\) reflects the fact that curvature sets are closed under permutations of the underlying tuples of points.

Let \(\textbf{v} \in \mathbb {R}^p, \textbf{u} \in \mathbb {R}^q\) be s.t. \(v_1 \le \ldots \le v_p, u_1 \le \ldots \le u_q\) . If \(\textsc {SolveFeasibleAssignment}(\textbf{v}, \textbf{u}, d)=\textrm{FALSE}\) , then no injective \(f: \langle p \rangle \rightarrow \langle q \rangle \) s.t. \(|v_t - u_{f(t)}| < d \quad \forall t \in \langle p \rangle \) exists.

Let t be the largest index for which \(u_t\) could be feasibly assigned to some available entry of \(\textbf{v}\) by \(\textsc {SolveFeasibleAssignment}(\textbf{v}, \textbf{u}, d)\) . If such t does not exist, then \(|v_1 - u_l| \ge d \quad \forall l \in \langle q \rangle \) and trivially no feasible assignment between \(\textbf{v}\) and \(\textbf{u}\) can exist.

Denote the partially constructed assignment by \(f: \langle t \rangle \rightarrow \langle q \rangle \) , and notice that it is monotone by construction. In particular, every \(u_l\) for \(l > f(t)\) must remain available for assignments. Moreover, because \(v_{t+1}\) could not be feasibly assigned to any entry of \(\textbf{u}\) after \(u_{f(t)}\) , which means that \(v_t \le u_l - d \quad \forall l > f(t-1)\) .

Let \(r \le t\) be the smallest index such that \(f(r), f(r+1), \ldots , f(t)\) are a contiguous block, i.e. that \(f(r) = f(t) - (t - r + 1)\) . Because \(u_{f(r)-1}\) remains available (or does not exist due to \(f(r)=1\) ), \(v_r\) could not be feasibly assigned to any entry of \(\textbf{u}\) before \(u_{f(r)}\) , which means that \(v_r \ge u_l + d \quad \forall l < f(r)\) .

Because \(v_r \le \ldots \le v_t \le v_{t+1}\) , none of these \(t-r+2\) entries can be feasibly assigned to the entries of \(\textbf{u}\) before \(u_{f(r)}\) or after \(u_{f(t)}\) , meaning that they only have \(t-r+1\) feasible matches in \(\textbf{u}\) . By the pigeonhole principle, no feasible assignment between the two vectors can exist. \(\square \)

Intuitively, either sufficiently small or sufficiently large entries in \(\textrm{row}_{i}(K)\) for some \(i \in \langle n \rangle \) can render a feasible assignment \(f_L\) impossible for every \(j \in \langle |Y| \rangle \) , yielding \(\Vert \textrm{row}_{i}(K) - \textrm{row}_{i}(L)\Vert _\infty \ge d \quad \forall L \in \textrm{PSPS}_n(D^Y)\) and therefore \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \ge \frac{d}{2}\) from Theorem 2 . This provides the motivation behind considering the magnitude of the \(\ge d\) entries when choosing a row to remove at each step of FindLarge K . Recall that such row is chosen by the auxiliary procedure FindLeastBoundedRow , that selects for bigger entries in the resulting K . The approach allows for a tighter lower bound in the case when the entries in \(D^X\) are, generally speaking, bigger than those in \(D^Y\) . The converse case is covered by similarly obtaining and handling a d -bounded distance sample of Y .

Calling SolveFeasibleAssignment \((\textrm{row}_{i}(K), \textrm{row}_{j}(D^Y), d)\) for every \(j \in \langle |Y| \rangle \) is sufficient to check whether a particular i satisfies \(\Vert \textrm{row}_{i}(K) - \textrm{row}_{i}(L)\Vert _\infty \ge d \quad \forall L \in \textrm{PSPS}_n(D^Y)\) . Procedure CheckTheoremB (see Appendix D for the pseudocode) makes such check for each \(i \in \langle n \rangle \) to decide whether \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \ge \frac{d}{2}\) follows from Theorem 2 for the d -bounded K . The procedure sorts the entries in the rows of K and \(D^Y\) prior to the checks, which takes \(O(N\log N)\) time for each of the O ( N ) rows. This allows solving each of the \(O(N^2)\) feasibility problems in O ( N ) time, making the time complexity of CheckTheoremB \(O(N^2\log N + N^3) = O(N^3)\) .

Notice that both Theorem 1 and 2 regard a largest-size d -bounded distance sample of only one metric space, X . However, its counterpart for Y is equally likely to provide information for discriminating the two metric spaces. Making use of the symmetry of \({\widehat{d}}_{\mathcal{G}\mathcal{H}}\) , we summarize theoretical findings of this section under \(O(N^3)\) -time procedure VerifyLowerBound (see Appendix E for the pseudocode), that attempts to prove \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \ge \frac{d}{2}\) .

3.5 Obtaining the lower bound

Procedure VerifyLowerBound is a decision algorithm that gives a “yes” or “no” answer to the question if a particular value can be proven to bound \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y)\) from below. In order to obtain an informative lower bound, one wants to find the largest value for which the answer is “yes”. Since \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \le \frac{1}{2}d_{\max }\) , the answer must be “no” for any value above \(\frac{1}{2}d_{\max }\) , and therefore it suffices to limit the scope to \((0, \frac{1}{2}d_{\max }]\) . To avoid redundancy when checking the values from this interval, we consider the following result.

Let \(\Delta \) denote the set of absolute differences between the distances in X and Y ,

and let \(\{\delta _i\}_{i=1}^{|\Delta |}\) represent the sorting order of \(\Delta \) , \(0 = \delta _1< \ldots < \delta _{|\Delta |} = d_{\max }\) . If \(\delta _i< d_1 < d_2 \le \delta _{i+1}\) for some \(d_1, d_2\) and \(i \in \langle |\Delta |-1 \rangle \) , then \(\textsc {VerifyLowerBound}(D^X, D^Y, d_1) = \textsc {VerifyLowerBound}(D^X, D^Y, d_2)\) .

VerifyLowerBound considers the value of its argument d only through comparisons of the form “ \(\delta < d\) ” for some \(\delta \) , that occur in FindLarge K and SolveFeasibleAssignment . Notice that the values of \(\delta \) compared with d in FindLarge K are the entries of \(D^X\) or \(D^Y\) , and therefore belong to \(\Delta \) as

The values of \(\delta \) compared with d in SolveFeasibleAssignment belong to \(\Delta \) by construction.

For any \(\delta \in \Delta \) , \(\delta < d_1\) if and only if \(\delta < d_2\) . This is because \(\delta < d_2\) implies \(\delta < d_1\) from \(\delta \notin [d_1, d_2)\) , while \(\delta < d_1\) implies \(\delta < d_2\) trivially. It follows that both FindLarge K and SolveFeasibleAssignment yield identical outputs on \(d_1\) and \(d_2\) (and otherwise identical inputs), and hence so does VerifyLowerBound . \(\square \)

Claim 4 implies that the largest \(\delta \in \Delta \) s.t. \(\textsc {VerifyLowerBound}(D^X, D^Y, \delta ) = \textrm{TRUE}\) is the largest \(d \in \mathbb {R}\) s.t. \(\textsc {VerifyLowerBound}(D^X, D^Y, d) = \textrm{TRUE}\) . We use this fact to implement the procedure FindLowerBound (see Appendix F for the pseudocode), that obtains a lower bound of \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y)\) by calling \(\textsc {VerifyLowerBound}(D^X, D^Y, \delta )\) for each \(\delta \in \Delta \) from largest to smallest, and stops once the output is TRUE. Since \(|\Delta | = O(N^4)\) in the general case, the time complexity of FindLowerBound is \(O(N^7)\) .

Using binary search on \(\Delta \) instead of traversing its values in descending order reduces the number of calls to VerifyLowerBound from \(O(N^4)\) to \(O(\log N)\) , bringing the time complexity of FindLowerBound to \(O(N^3 \log N)\) . We however notice that, given some \(d_1 < d_2\) , \(\textsc {VerifyLowerBound}(D^X, D^Y, d_2) = \textrm{TRUE}\) does not guarantee \(\textsc {VerifyLowerBound}(D^X, D^Y, d_1) = \textrm{TRUE}\) due to the heuristic nature of FindLarge K (for example, it is possible to obtain \({\widetilde{M}}(X, d_1) \le |Y| < {\widetilde{M}}(X, d_2)\) even though, trivially, \(M(X, d_1) \ge M(X, d_2) \ge {\widetilde{M}}(X, d_2)\) ). It follows that relying on the binary search in FindLowerBound can result in failing to find the largest \(\delta \in \Delta \) s.t. \(\textsc {VerifyLowerBound}(D^X, D^Y, \delta ) = \textrm{TRUE}\) , and thus in reducing time complexity at the cost of potentially lower accuracy.

An increase in accuracy at the expense of time complexity can be achieved by modifying \(\textsc {FindLowerBound}(D^X, D^Y)\) and its subroutines so that Theorem 2 for the d -bounded distance samples tries to prove not only \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \ge \frac{d}{2}\) but also \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \ge \frac{d^*}{2}\) for some \(d^* < d\) , \(d^* \in \Delta \) . For every pair \(i \in \langle n \rangle , j \in \langle |Y| \rangle \) , the modified \(\textsc {CheckTheoremB}(K, D^Y, d)\) finds the largest \(d^* \le d\) s.t. \(\textsc {SolveFeasibleAssignment}(\textrm{row}_{i}(K), \textrm{row}_{j}(D^Y), d^*)=\textrm{TRUE}\) (instead of checking the existence of feasible assignment for d only) and returns the largest \(d^*\) s.t. some i satisfies \(\Vert \textrm{row}_{i}(K) - \textrm{row}_{i}(L)\Vert _\infty \ge d^* \quad \forall L \in \textrm{PSPS}_n(D^Y)\) . Accordingly, VerifyLowerBound propagates this value of \(d^*\) to FindLowerBound , which stores their maximum from the already processed part of \(\Delta \) (and proceeds only if this maximum is smaller than the current \(\delta _i\) ). Because the existence of feasible assignment for \(d^*\) is monotonic in \(d^*\) , using binary search on \(\Delta \) is sufficient to find the largest \(d^* \le d\) s.t. \(\textsc {SolveFeasibleAssignment}(\textrm{row}_{i}(K), \textrm{row}_{j}(D^Y), d^*)=\textrm{TRUE}\) . It follows that the increase in time complexity of the modified CheckTheoremB (and therefore FindLowerBound ) is only by a factor of \(O(\log N)\) .

The modification would be able to provide better bounds by additionally trying smaller distance samples with larger entries in Theorem 2 . In particular, it is guaranteed to prove the baseline lower bound \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \ge \frac{1}{2}|{{\,\textrm{diam}\,}}X - {{\,\textrm{diam}\,}}Y|\) . Assuming without loss of generality \({{\,\textrm{diam}\,}}X \ge {{\,\textrm{diam}\,}}Y\) , the call to \(\textsc {FindLarge}\) K \((D^X, {{\,\textrm{diam}\,}}X)\) from \(\textsc {VerifyLowerBound}(D^X, D^Y, {{\,\textrm{diam}\,}}X)\) will yield K with non-zero entries that each are at least \(({{\,\textrm{diam}\,}}X - {{\,\textrm{diam}\,}}Y)\) away from all \(D^Y\) entries. Because the \(({{\,\textrm{diam}\,}}X)\) -bounded K is also \(({{\,\textrm{diam}\,}}X - {{\,\textrm{diam}\,}}Y)\) -bounded, the modified \(\textsc {CheckTheoremB}(K, D^Y, {{\,\textrm{diam}\,}}X)\) will output \(d^* \ge {{\,\textrm{diam}\,}}X - {{\,\textrm{diam}\,}}Y\) , ensuring that the resulting lower bound is at least \(\frac{1}{2}|{{\,\textrm{diam}\,}}X - {{\,\textrm{diam}\,}}Y|\) .

This is in contrast with the original FindLowerBound , in which the only easy guarantee for proving the baseline lower bound via Theorem 2 is the presence of \({{\,\textrm{diam}\,}}X\) values in K produced by \(\textsc {FindLarge}K(D^X, {{\,\textrm{diam}\,}}X - {{\,\textrm{diam}\,}}Y)\) . However, because \(\textsc {FindLarge}K\) prioritizes the number of entries \(\ge {{\,\textrm{diam}\,}}X - {{\,\textrm{diam}\,}}Y\) in a row of \(D^X\) over their magnitude, and because a point with a distance \({{\,\textrm{diam}\,}}X\) can have arbitrarily many distances \(< {{\,\textrm{diam}\,}}X - {{\,\textrm{diam}\,}}Y\) , establishing practical conditions for the output of FindLowerBound to be \(\ge \frac{1}{2}({{\,\textrm{diam}\,}}X - {{\,\textrm{diam}\,}}Y)\) is non-trivial.

4 Upper bound for \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y)\)

4.1 construction method.

To obtain an upper bound of \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y)\) , we recall the definition

where \(\varphi \) and \(\psi \) are the mappings \(\varphi :X \rightarrow Y\) and \(\psi :Y \rightarrow X\) and the infimums are taken over the corresponding function spaces. It follows that \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y) \le \frac{1}{2}\max \{{{\,\textrm{dis}\,}}\varphi , {{\,\textrm{dis}\,}}\psi \}\) for any particular choice of \(\varphi \) and \(\psi \) . Considering the exponential size of function spaces, we rely on a small randomized sample of mappings to tighten the upper bound. To sample \(\varphi :X \rightarrow Y\) , we use the construction method, a heuristic for solving quadratic assignment problems (Gilmore 1962 ; Burkard et al. 1998 ). The construction method iteratively maps each \(x \in X\) to some \(y \in Y\) , chosen by a greedy algorithm to minimize \({{\,\textrm{dis}\,}}\varphi \) as described below.

Let \(X = \{x_1, \ldots , x_{|X|}\}\) and \(Y = \{y_1, \ldots , y_{|Y|}\}\) . We randomly choose a permutation \(\pi \) of \(\langle |X| \rangle \) to represent the order in which the points in X are mapped. At step i we map \(x_{\pi (i)}\) by choosing \(y_{j_i}\) and setting \(\varphi (x_{\pi (i)}) \buildrel \textrm{def}\over =y_{j_i}\) . We represent these choices by inductive construction \(R_\varphi ^{(i)} = R_\varphi ^{(i-1)} \cup \{(x_{\pi (i)}, y_{j_i})\}\) for \(i = 1, \ldots , |X|\) , where \(R_\varphi ^{(0)} \buildrel \textrm{def}\over =\emptyset \) . The particular choice of \(y_{j_i}\) at step i is made to minimize distortion of resultant \(R_\varphi ^{(i)}\) :

After carrying out all | X | steps, \(\varphi :X \rightarrow Y\) is given by the constructed relation \(R_\varphi \buildrel \textrm{def}\over =R_\varphi ^{(|X|)}\) , and by definition, \({{\,\textrm{dis}\,}}\varphi = {{\,\textrm{dis}\,}}R_\varphi \) .

Notice the possible ambiguity in the choice of \(y_{j_i}\) when \(y \in Y\) minimizing \({{\,\textrm{dis}\,}}\Big (R_\varphi ^{(i-1)} \cup \big \{(x_{\pi (i)}, y)\big \}\Big )\) is not unique. In particular, any \(y \in Y\) can be chosen as \(y_{j_1}\) at step 1, since \({{\,\textrm{dis}\,}}\big \{(x_{\pi (i)}, y_{j_1})\big \} = 0\) is invariant to the said choice. In the case of such ambiguity, our implementation simply decides to map \(x_{\pi (i)}\) to \(y_{j_i}\) of the smallest index \(j_i\) . However, in applications one might want to modify this logic to leverage the knowledge of the relationship between the points from two metric spaces.

We formalize the above heuristic under a randomized, \(O(N^3)\) -time procedure SampleSmallDistortion (see Appendix G for the pseudocode) that samples a mapping between the two metric spaces with the intent of minimizing its distortion, and outputs this distortion. We then describe an algorithm FindUpperBound (see Appendix H for the pseudocode), that repeatedly calls SampleSmallDistortion to find \(\varphi ^*:X \rightarrow Y\) and \(\psi ^*:Y \rightarrow X\) , the mappings of the smallest distortion among those sampled from \(X \rightarrow Y\) and \(Y \rightarrow X\) , respectively, and finds an upper bound for \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y)\) as \(\frac{1}{2}\max \{{{\,\textrm{dis}\,}}\varphi ^*, {{\,\textrm{dis}\,}}\psi ^*\}\) . The time complexity of FindUpperBound is therefore \(O(sN^3)\) , where s is the total number of sampled mappings.

4.2 Approximation ratio bounds

Unlike the lower bound estimation, our heuristic for the upper bound operates within the solution space of \({\widehat{d}}_{\mathcal{G}\mathcal{H}}\) formulation as a combinatorial minimization problem. This allows leveraging a result for bottleneck assignment problems bounding the ratio between the two extrema of the objective function (see e.g. Theorem 2 in Burkard and Fincke ( 1985 )) to understand better the convergence of SampleSmallDistortion . Indeed, solving \(\inf _{\phi :X\rightarrow Y} {{\,\textrm{dis}\,}}\phi \) can be cast as a variant of the QBAP with the cost function \(c(i, j, k, h) \buildrel \textrm{def}\over =|D^X_{i,j} - D^Y_{k,h}|\) that allows non-injective assignments and hence has the search space of size \(|Y|^{|X|}\) . Assuming \(|X| > 1\) , the maximum of its objective function \({{\,\textrm{dis}\,}}\phi \) on the feasible region is \(d_{\max }\) . We consider a scaled but otherwise identical minimization problem with the cost function \({\widetilde{c}}(i, j, k, h) \buildrel \textrm{def}\over =\frac{|D^X_{i,j} - D^Y_{k,h}|}{d_{\max }} \in [0, 1]\) , whose objective function has the minimum of \(\frac{\inf _{\phi :X\rightarrow Y} {{\,\textrm{dis}\,}}\phi }{d_{\max }}\) . The result by Burkard and Fincke ( 1985 ) treats the values of \({\widetilde{c}}\) as identically distributed random variables, and states that if | X | and | Y | satisfy

for some \(\epsilon , q \in [0, 1]\) , then the approximation ratio of the solution by the maximum is probabilistically bounded by

Let b be the smallest distortion discovered by SampleSmallDistortion after a number of tries, and consider some \(r \ge 1\) . If for \(\epsilon \buildrel \textrm{def}\over =\frac{rd_{\max }}{b}-1\) we can find q that satisfies both ( ⋆ ) and \(q > \frac{\log |Y|}{|X|}\) , the above result allows us to bound the probability that the approximation ratio of b is worse than r :

An analogous probabilistic bound applies to the minimization of distortion of \(\psi :Y \rightarrow X\) . These bounds can be used to adaptively control the sample size s in FindUpperBound for achieving some target accuracy with the desired level of confidence.

5 Algorithm for estimating \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y)\)

The algorithm for estimating the mGH distance between compact metric spaces X and Y (“the algorithm”) consists of the calls \(\textsc {FindLowerBound}(D^X, D^Y)\) and \(\textsc {FindUpperBound}(D^X, D^Y)\) . Notice that \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y)\) is found exactly whenever the outputs of the two procedures match. Time complexity of the algorithm is \(O(N^7)\) whenever s , the number of mappings sampled from \(X \rightarrow Y\) and \(Y \rightarrow X\) in FindUpperBound , is limited by \(O(N^4)\) .

To obtain a more practical result, we now consider a special case of metric spaces induced by unweighted undirected graphs. We show that estimating the mGH distance between such metric spaces in many applications has time complexity \(O(N^3 \log N)\) , and present our implementation of the algorithm in Python.

5.1 \({\widehat{d}}_{\mathcal{G}\mathcal{H}}\) between unweighted undirected graphs

Let \(G = (V_G, E_G)\) be a finite undirected graph. For every pair of vertices \(v, v' \in V_G\) , we define \(d_G(v, v')\) as the shortest path length between v to \(v'\) . If weights of the edges in \(E_G\) are positive, the resulting function \(d_G : V_G \times V_G \rightarrow [0, \infty ]\) is a metric on \(V_G\) . We say that the metric space \((V_G, d_G)\) is induced by graph G , and notice that its size \(|V_G|\) is the order of G . By convention, the shortest path length between vertices from different connected components of a graph is defined as \(\infty \) , and therefore \((V_G, d_G)\) is compact if and only if graph G is connected.

For brevity, we will use notation \(G \buildrel \textrm{def}\over =(V_G, d_G)\) , assuming that the distinction between graph G and metric space G induced by this graph is clear from the context. In particular, we refer to the mGH distance between compact metric spaces induced by undirected connected graphs G and H as \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(G, H)\) , or even call it “the mGH distance between graphs G and H ”.

Let G ,  H be connected unweighted undirected graphs. Notice that \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(G, H) = 0\) if and only if graphs G and H are isomorphic. We use the following result to reduce the computational cost of estimating \({\widehat{d}}_{\mathcal{G}\mathcal{H}}(G, H)\) as compared to that in the general case.

If G is a finite connected unweighted undirected graph, all entries in distance matrix \(D^G\) of the corresponding compact metric space are from \(\{0, 1, \ldots , {{\,\textrm{diam}\,}}G\}\) .

Claim 5 implies that there are at most \(d_{\max } + 1\) distinct entries in any distance sample of either G or H , where \(d_{\max } \buildrel \textrm{def}\over =\max \{{{\,\textrm{diam}\,}}G, {{\,\textrm{diam}\,}}H\}\) . Recall that SolveFeasibleAssignment traverses the two sorted vectors strictly left to right, in each vector keeping track only of its part after the last assigned entry. It follows that both vectors can be represented simply as counts of entries \(0, 1, \ldots , d_{\max }\) they contain, with traversing a vector corresponding to decrementing the leftmost non-zero count. In particular, assigning an entry in one vector to an entry in another is then equivalent to decrementing the corresponding counts in each of the vectors, which reflects the injectivity of the assignment being constructed. Notice that if \(v_i\) is assigned to \(u_j\) at some step and the remaining entries of the two vectors contain \(v_i\) and \(u_j\) , respectively, SolveFeasibleAssignment will make an identical assignment at the next step. It follows that representing the vectors by counting their identical entries allows the procedure to make bulk assignments, which reduces the time complexity of SolveFeasibleAssignment from O ( N ) to \(O(d_{\max })\) and makes the complexity of CheckTheoremB \(O(N^2 d_{\max })\) , where \(N \buildrel \textrm{def}\over =\max \{|V_G|, |V_H|\}\) .

From the perspective of optimization theory, representing vectors as counts of their entries reformulates the linear assignment feasibility problem of SolveFeasibleAssignment as a transportation feasibility problem.

Another implication of Claim 5 narrows the set of absolute differences between the distances in G and H to \(\Delta = \{0, 1, \ldots , d_{\max }\}\) , reducing the time complexity of traversing its elements from \(O(N^4)\) to \(O(d_{\max })\) . This bounds the time complexity of FindLowerBound by \(O(N^3 d_{\max })\) . The complexity of the entire algorithm is therefore \(O(N^3 d_{\max })\) when the number of sampled mappings is \(s = O(d_{\max })\) .

Network diameter often scales logarithmically with network size, e.g. in Erdős–Rényi random graph model (Albert and Barabási 2002 ) and Watts–Strogatz small-world model (Watts and Strogatz 1998 ), or even sublogarithmically, e.g. in the configuration model with i.i.d. degrees (van der Hofstad et al. 2007 ) and Barabási–Albert preferential attachment model (Cohen and Havlin 2003 ). This suggests the time complexity of the algorithm in applications to be \(O(N^3 \log N)\) , deeming it practical for shape comparison for graphs of up to a moderate order.

5.2 Implementation

We have implemented the algorithm for estimating mGH between unweighted graphs in Python 3.7 as part of | scikit-tda| package (Saul and Tralie 2019 ) ( https://github.com/scikit-tda ). Our implementation takes adjacency matrices (optionally in sparse format) of unweighted undirected graphs as inputs. If an adjacency matrix corresponds to a disconnected graph, the algorithm approximates it with its largest connected component. The number of mappings to sample from \(X \rightarrow Y\) and \(Y \rightarrow X\) in FindUpperBound is parametrized as a function of | X | and | Y |.

6 Computational examples

This section demonstrates the performance of the algorithm on some real-world and synthetic networks. The real-world networks were sourced from the Enron email corpus (Klimt and Yang 2004 ), the cybersecurity dataset collected at Los Alamos National Laboratory (Kent 2016 ), and the functional magnetic resonance imaging dataset ABIDE I (Di Martino et al. 2014 ).

6.1 Methodology and tools

Given a pair of connected graphs, we approximate the mGH distance between them by \({\tilde{d}} \buildrel \textrm{def}\over =\frac{b_L + b_U}{2}\) , where \(b_L\) and \(b_U\) are the lower and upper bounds produced by the algorithm. The relative error of the algorithm is estimated by

noting that the case of \(b_U = 0\) implies that the algorithm has found the mGH distance of 0 exactly. In addition, we compute the utility coefficient defined by

where \(b'_L \le b_L\) is the baseline lower bound: \(b'_L \buildrel \textrm{def}\over =\frac{1}{2}|{{\,\textrm{diam}\,}}X - {{\,\textrm{diam}\,}}Y| \le {\widehat{d}}_{\mathcal{G}\mathcal{H}}(X, Y)\) for \(X, Y \in \mathcal {M}\) . The utility coefficient thus quantifies the tightening of the lower bound achieved by using Theorems 1 and 2 .

Due to the possible suboptimality of the mappings selected by using the construction method (see Sect. 4 ), the upper bound may not be computed accurately enough. From the definition of relative error \(\eta \) and utility coefficient \(\upsilon \) , a sufficiently loose upper bound can make \(\eta \) arbitrarily close to 1 and \(\upsilon \) —arbitrarily small.

We measured \(\eta \) and \(\upsilon \) separately for each dataset. For the real-world data, we also used the approximated distances \({\tilde{d}}\) to identify graphs of outlying shapes and matched these graphs to events or features of importance in application domains, following the approach taken in e.g. (Bunke and Kraetzl 2004 ; Bunke et al. 2006 ; Koutra et al. 2013 ; Pincombe 2005 ). Unlike (Bunke and Kraetzl 2004 ; Koutra et al. 2013 ), and Pincombe ( 2005 ) that focus on local time outliers (under the assumption of similarity between graphs from consecutive time steps), we considered the outliers with respect to the entire time range (where applicable), similarly to Bunke et al. ( 2006 ).

To identify the outliers, we applied the Local Outlier Probability (LoOP) method (Kriegel et al. 2009 ) to the graphs using their approximated pairwise mGH distances. LoOP uses a local space approach to outlier detection and is robust with respect to the choice of parameters (Kriegel et al. 2009 ). The score assigned by LoOP to a data object is interpreted as the probability of the object to be an outlier. We binarize the score into outlier/non-outlier classification using the commonly accepted confidence levels of 95%, 99%, and 99.9% as thresholds, chosen empirically for each individual dataset. We used the implementation of LoOP in Python (Constantinou 2018 ) (version 0.2.1), modified by us to allow non-Euclidean distances between the objects. We ran LoOP with locality and significance parameters set to \(k = 20\) and \(\lambda = 1\) , respectively.

The synthetic graphs were generated according to Erdős–Rényi, Watts–Strogatz, and Barabási–Albert network models. We used implementations of the models provided in Hagberg et al. ( 2008 ) (version 2.1).

All computations were performed on a single 2.70GHz core of Intel i7-7500U CPU.

6.2 Enron email corpus

Enron email corpus (available at https://www.cs.cmu.edu/~./enron/ ) represents a collection of email conversations between the employees, mostly senior management, of the Enron corporation from October 1998 to March 2002. We used the latest version of the dataset from May 7, 2015, which contains roughly 500K emails from 150 employees.

Associating employees with graph vertices, we view the dataset as a dynamic network whose 174 instances reflect weekly corporate email exchange over the course of 3.5 years. An (unweighted) edge connecting a pair of vertices in a network instance means a mutual exchange of at least one email between the two employees on a particular week. The time resolution of 1 week was suggested in Sulo et al. ( 2010 ) for providing an appropriate balance between noise reduction and information loss in Enron dataset.

We expected major events related to the Enron scandal in the end of 2001 to cause abnormal patterns of weekly email exchange between the senior management, distorting the shape of the corresponding network instances. As a consequence, metric spaces generated by such network instances would be anomalously far from the rest with respect to the mGH distance.

figure 2

Outlier probabilities assigned to the weekly email exchange networks. Red indicates outlier probabilities \(> 0.99\) , corresponding to the weeks of Sep 17, Oct 29, Nov 5, and Nov 26 in the year 2001

In preparation for the analysis, we discarded all empty network instances corresponding to the weeks of no email exchange between the employees (of which all 28 weeks happened before May 1999). Each of the remaining 146 graphs was then replaced with its largest connected component. The distribution of the order of the resulting graphs had a mean of 68.2, a standard deviation of 99.8, and a maximum of 706.

We estimated the mGH distances in all 10,585 distinct pairs of the non-empty connected network instances. Average graph order and computing time per one pair were distributed as \(68.2 \pm 70.3\) and \(0.93\textrm{s} \pm 3.91\textrm{s}\) , respectively (where \(\mu \pm \sigma \) refers to distribution with a mean of \(\mu \) and a standard deviation of \(\sigma \) ; no assumptions of normality are made, and we use standard deviation solely as a measure of spread). The algorithm found exact mGH distances in 74.4% of the graph pairs, with relative error \(\eta \) and utility coefficient \(\upsilon \) distributed as \(0.057 \pm 0.118\) and \(0.043 \pm 0.085\) , respectively. The ratio between the means of \(\upsilon \) and \(\eta \) (i.e. \(\frac{\upsilon }{\eta } + 1 = \frac{\upsilon + \eta }{\eta } = \frac{b_U - b_{L'}}{b_L - b_{L'}}\) ) implies that using Theorems 1 and 2 on average reduced the relative error by a factor of 1.75.

We ran LoOP on the network instances using their (approximated) pairwise mGH distances \({\tilde{d}}\) . The resulting outlier probability assigned to each network instance (Fig. 2 ) thus measures the abnormality of its shape.

To see if the abnormal shape of email exchange corresponds to events of high importance from the Enron timeline, we applied the threshold of 0.99 to the outlier probabilities. Three out of four network instances that scored above the threshold correspond to the weeks of known important events in 2001, namely the weeks of Oct 29, Nov 5, and Nov 26 (each date is a Monday). As the closing stock price of Enron hit an all-time low on Friday, Oct 26, Enron’s chairman and CEO Kenneth Lay was making multiple calls for help to Treasure Secretary Paul O’Neill and Commerce Secretary Donald Evans on Oct 28–29. Enron fired both its treasurer and in-house attorney on Nov 5, admitted to overstating its profits for the last five years by $600M on Nov 8, and agreed to be acquired by Dynegy Inc. for $9B on Nov 9. On Nov 28, Dynegy Inc. aborted the plan to buy Enron, and on Dec 2, Enron went bankrupt.

We conclude that the abnormal shape of email exchange networks tends to correspond to disturbances in their environment, and that the algorithm estimates the mGH distance accurately enough to capture it.

6.3 LANL cybersecurity dataset

Los Alamos National Laboratory (LANL) cybersecurity dataset (available at https://csr.lanl.gov/data/cyber1/ ) represents 58 consecutive days of event data collected from LANL’s corporate computer network (Kent 2016 ). For our purposes, we considered its part containing records of authentication events, generated by roughly 11K users on 18K computers, and collected from individual Windows-based desktops and servers. During the 58-day data collection period, a “red team” penetration testing operation had taken place. As a consequence, a small subset of authentications were labeled as red team compromise events, presenting well-defined bad behavior that differed from normal user and computer activity. The labeling is not guaranteed to be exhaustive, and authentication events corresponding to red team actions, but not labeled as such, are likely to be present in the data. Heard and Rubin-Delanchy ( 2016 )

Each authentication event occurs between a pair of source and destination computers. Viewing the computers as graph vertices, we associated each user with a dynamic network, whose instances reflect their daily authentication activity within the 58-day period. An (unweighted) edge connecting a pair of vertices in a network instance means that at least one authentication event by the user has occurred between the two computers on a particular day. The user-based approach to graph representation of the data aims to capture the patterns of user account misuse that are expected to occur during a cyberattack.

Our objective was to develop an unsupervised approach that can identify the red team activity associated with a user’s account. We expected that frequent compromise events within the course of one day should distort the shape of the corresponding network instance. As a consequence, metric spaces generated by such network instances would be anomalously far from the rest.

For the analysis, we selected 20 users with the highest total of associated red team events and randomly chose another 20 users from those unaffected by the red team activity (see Fig. 3 ). Each of their 40 dynamic networks initially comprised of 58 instances. We discarded all empty network instances corresponding to the days of inactivity of a user account, and replaced each of the remaining 1,997 graphs with its largest connected component. The distribution of the order in the resulting graphs had a mean of 32.7 and a standard deviation of 75.8. The largest graphs were associated with the red team-affected user U1653@DOM1—their order was distributed with a mean of 178.2, a standard deviation of 391.5, and a maximum of 2,343.

figure 3

Frequency of red team events in daily authentication activity of the selected users. Grey indicates days of no authentication activity by user. Dashed line separates the two groups of 20 users

Separately for each of the selected users, we estimated the mGH distances in all distinct pairs of the non-empty connected network instances associated with her account. Table 1 shows average graph order in a pair and the performance metrics of the algorithm, aggregated per user subsets. We notice that using Theorems 1 and 2 has reduced the relative error by a factor of 3.5 on average. In addition, the algorithm did not seem to perform worse on the larger graphs associated with user U1653@DOM1.

figure 4

Outlier probability assigned to user-based daily authentication graphs. Red indicates outlier probabilities \(> 0.999\) . Grey indicates empty graphs (excluded from analysis). The dashed line separates the two groups of 20 users

Separately for each user, we ran LoOP on the associated network instances using their (approximated) pairwise mGH distances \({\tilde{d}}\) . The resulting outlier probability assigned to each network instance (Fig. 4 ) thus measures the abnormality of its shape for the particular user.

To see if the days of high compromise activity can be identified from the abnormal shape of the corresponding network instances, we approached the identification as a binary classification task. User’s daily activity is considered a compromise if it includes at least 30 red team events, and is predicted as such if the outlier probability assigned to the corresponding network instance is \(>0.999\) . The resulting confusion matrix of our shape-based binary classifier is shown in Table 2 , establishing its accuracy, precision, and recall as 99.5%, 18.2%, and 100%, respectively.

Even though recall is prioritized over precision when identifying intrusions, low precision can be impractical when using the classifier alone. However, high recall suggests that combining the shape-based classifier with another method can improve performance of the latter. For example, classifying daily activity as a compromise if and only if both methods agree on it is likely to increase the other method’s precision without sacrificing its recall.

We conclude that sufficiently frequent compromise behavior tends to distort the shape of networks representing user authentication activity, and that the algorithm estimates the mGH distance accurately enough to pick up the distortion. However, regular operations can cause similar distortion, and the shape of user authentication alone may be insufficient to accurately identify compromise behavior.

6.4 ABIDE I dataset

The Autism Brain Imaging Data Exchange I (ABIDE I, https://fcon_1000.projects.nitrc.org/indi/abide/abide_I.html) (Di Martino et al. 2014 ) is a resting state functional magnetic resonance imaging dataset, collected to improve understanding of the neural bases of autism. Besides the diagnostic group (autism or healthy control), the information collected from the study subjects also includes their sex, age, handedness category, IQ, and current medication status. We considered the preprocessed version of ABIDE I used in Kazeminejad and Sotero ( 2019 ), containing brain networks of 816 subjects, including 374 individuals with autism spectrum disorder and 442 healthy controls.

Brain network of an individual is comprised of 116 nodes, each corresponding to a region of interest (ROI) in the automatic anatomical labeling atlas of the brain (Tzourio-Mazoyer et al. 2002 ). Connectivity of the network represents correlations between the brain activity in the ROI pairs, with the brain activity extracted as a time series for each region. Namely, an (unweighted) edge connects two nodes if Spearman’s rank correlation coefficient between the corresponding pair of time series is in the highest 20% of all such coefficients for distinct ROI pairs. This approach of thresholding connectivity to obtain an unweighted graph representation is commonly used for functional brain networks (Achard and Bullmore 2007 ; Supekar et al. 2008 ; Redcay et al. 2013 ; Rudie et al. 2013 ; Rubinov and Sporns 2010 ).

figure 5

Outlier probability assigned to brain networks of study subjects. Blue indicates outlier probabilities \(> 0.95\) , and red—outlier probabilities \(> 0.999\) . The latter correspond to the subjects MaxMun_c_0051332, MaxMun_b_0051323, and MaxMun_c_0051335. The remaining outlier probabilities are 0

We replaced the brain network of each subject with its largest component, which did not introduce a significant change to the data: the distribution of the order in the resulting 816 graphs had a mean of about 116.0 and a standard deviation of 0.1.

We estimated the mGH distances in all 332,520 distinct pairs of the connected brain networks. Average graph order and computing time per one pair were distributed as \(116.0 \pm 0.1\) and \(0.40\textrm{s} \pm 20.29\textrm{s}\) , respectively. The algorithm found exact mGH distances in 78.6% of the graph pairs, with relative error \(\eta \) and utility coefficient \(\upsilon \) distributed as \(0.072 \pm 0.139\) and \(0.361 \pm 0.214\) , respectively. We notice that using Theorems 1 and 2 has reduced the relative error by a factor of 5 on average.

We ran LoOP on the brain networks using their (approximated) pairwise mGH distances \({\tilde{d}}\) . The resulting outlier probability assigned to each brain network (Fig. 5 ) thus measures the abnormality of its shape.

To see if abnormal shape of a brain network corresponds to certain features of the individual, we applied the thresholds of 0.999 and 0.95 to the outlier probabilities. We were unable to identify the corresponding brain network shapes with outlying values of the available measurements, neither for the 3 subjects who scored above the threshold of 0.999 nor for the 54 subjects who scored above 0.95.

To see if the brain networks of subjects within the same diagnostic group tend to have similar shape, we performed cluster analysis based on the mGH distances \({\tilde{d}}\) . We used | scipy| implementation of hierarchical agglomerative clustering algorithm to split the 816 networks into two clusters (by the number of diagnostic groups in the dataset). The smaller cluster was comprised of the same 3 subjects who scored above the outlier probability threshold of 0.999. Discarding them as outliers and rerunning the analysis resulted in two clusters of 51 and 762 subjects, respectively. The clusters did not show any correspondence with the diagnostic groups, thus providing no evidence that the within-group mGH distances are smaller than the inter-group ones. However, we notice a significant overlap between the 54 subjects with an outlier probability above 0.95 and the cluster of 51 individuals, with 47 people shared between the two groups. This implies that the abnormal brain networks tend to be closer to one another than to the “regular” brain networks. This observation suggests that abnormality of the brain network shape is influenced by currently unknown features which are not included in the dataset.

We conclude that the algorithm estimates the mGH distance between Spearman’s correlation-based functional brain networks with high accuracy. However, detected shape abnormalities do not seem to correspond to a conclusive pattern related to autism spectrum disorder identification.

6.5 Synthetic networks

To test performance of the algorithm on synthetic networks, we generated 100 graphs per each of Erdős–Rényi (random), Watts–Strogatz (small-world), and Barabási–Albert (scale-free) network models. The order n of each graph was selected uniformly at random between 10 and 200, and other parameters of the model were based on n . In the Erdős–Rényi G ( n ,  p ) model, the probability p for an edge between a vertex pair to appear was selected uniformly at random between \(\frac{0.5\log n}{n}\) and \(\frac{1.5\log n}{n}\) . In the Watts–Strogatz G ( n , 2 k ,  p ) model, k , half of the average vertex degree, was selected uniformly at random between 1 and \(\lfloor 0.5 \log ^2 n \rceil \) , and the probability p for an edge to get rewired was selected uniformly at random between \(\frac{0.5\log n}{n}\) and \(\frac{1.5\log n}{n}\) . In the Barabási–Albert G ( n ,  m ) model, the number of edges m to attach from a new node to the existing nodes was selected uniformly at random between 1 and \(\lfloor \log ^2 n \rceil \) .

After generating the graphs, we replaced each of them with its largest connected component. For each set, we estimated the mGH distances in all distinct pairs of the 100 connected graphs therein. Table 3 shows the average graph order in a pair and the performance metrics of the algorithm, aggregated per individual data sets.

We notice that the algorithm performs significantly worse on the Erdős–Rényi graphs. One possible explanation is that there are fewer identically connected vertices in random graphs than in those resembling real-world networks, which contributes to the combinatorial complexity of the search for distortion-minimizing mappings to obtain the upper bound. Recall from Sect. 6.1 that inaccurate computations of the upper bound alone can have a detrimental effect on both \(\eta \) and \(\upsilon \) .

Another interesting observation is that Theorems 1 and 2 have smaller utility when applied to the Watts–Strogatz graphs. Recall that a Watts–Strogatz small-world graph is generated from a lattice ring with each node connected to its 2 k neighbors ( k for each side), by randomly rewiring a fraction (roughly, p ) of its edges. For a small p , the rewired edges serve as shortcuts between the otherwise remote vertices and have a highly nonlinear effect on the diameter (Watts and Strogatz 1998 ). This allows for high variability in the diameters of generated graphs, thus contributing to the tightness of the baseline lower bounds \(b'_L \buildrel \textrm{def}\over =\frac{1}{2}|{{\,\textrm{diam}\,}}X - {{\,\textrm{diam}\,}}Y|\) .

We conclude that the algorithm performs better on graphs with scale-free and small-world properties, observed in many real-world networks.

7 Conclusion

The main contribution of this work is a feasible method for finding a lower bound for the mGH (and therefore GH) distance between finite metric spaces. The approach, based on the introduced notion of d -bounded distance samples, yields a polynomial-time algorithm for estimating the mGH distance. The algorithm is implemented as part of Python | scikit-tda| library for the case of compact metric spaces induced by unweighted graphs. It is also shown that in the case of unweighted graphs of order N whose diameter scales at most logarithmically with N the algorithm has time complexity \(O(N^3 \log N)\) .

To test the algorithm’s performance, we applied it to both real and synthesized networks. Among the synthesized networks we tested, the best performance was observed for graphs with scale-free and small-world properties. We have also found that the algorithm performed well on the real-world email exchange, computer, and brain networks. The mGH distance was used to successfully detect outlying shapes corresponding to events of significance. This suggests that the proposed algorithm may be useful for graph shape matching in various application domains.

Abbreviations

Index set \(\{1, \ldots , n\}\) , for \(n \in \mathbb {N}\)

The ceiling of \(a \in \mathbb {R}\)

The nearest integer to \(a \in \mathbb {R}\)

\(l_\infty \) -norm of vector \(\textbf{v} = \begin{bmatrix}v_1&v_2&\ldots&\end{bmatrix}\)

i -th row of matrix A : \(\begin{bmatrix}A_{i,1}&A_{i,2}&\ldots&\end{bmatrix}\)

Matrix obtained from matrix A by removing its i -th row and j -th column

\(l_\infty \) -induced matrix distance: \(\max _{i,j} \left| A_{i,j} - B_{i,j}\right| \)

Number of elements in set S

Cartesian product \(\underbrace{S \times \ldots \times S}_{n \text { times}}\) , for \(n \in \mathbb {N}\)

Set of the mappings of S into T

The Hausdorff distance between the subsets S ,  T of metric space \((X, d_X)\) : \(\displaystyle d_{\mathcal {H}}^X(S, T) \buildrel \textrm{def}\over =\max \left\{ \sup _{s \in S} \inf _{t \in T} d_X(s, t), \; \sup _{t \in T} \inf _{s \in S} d_X(s, t) \right\} \)

Distance matrix of metric space \((X, d_X)\) , where \(X = \{x_1, \ldots , x_{|X|}\}\) : \(D^X_{i,j} \buildrel \textrm{def}\over =d_X(x_i, x_j) \quad \forall i,j = 1, \ldots , |X|\)

Set of compact metric spaces

Diameter of metric space \((X, d_X) \in \mathcal {M}\) : \(\displaystyle \sup _{x, x' \in X} d_X(x, x')\)

Achard S, Bullmore E (2007) Efficiency and cost of economical brain functional networks. PLoS Comput Biol 3(2):e17

Article   Google Scholar  

Aflalo Y, Bronstein A, Kimmel R (2015) On convex relaxation of graph isomorphism. Proc Natl Acad Sci 112(10):2942–2947

Article   MathSciNet   Google Scholar  

Albert R, Barabási A-L (2002) Statistical mechanics of complex networks. Rev Mod Phys 74(1):47

Bunke H (1997) On a relation between graph edit distance and maximum common subgraph. Pattern Recogn Lett 18(8):689–694

Bunke H, Dickinson P, Humm A, Irniger C, Kraetzl M (2006) Computer network monitoring and abnormal event detection using graph matching and multidimensional scaling. In: Industrial conference on data mining. Springer, pp 576–590

Bunke H, Kraetzl M (2004) Classification and detection of abnormal events in time series of graphs. In: Data mining in time series databases. World Scientific, pp 127–148

Burkard RE, Cela E, Pardalos PM, Pitsoulis LS (1998) The quadratic assignment problem. In: Handbook of combinatorial optimization. Springer, pp 1713–1809

Burkard RE, Fincke U (1985) Probabilistic asymptotic properties of some combinatorial optimization problems. Discret Appl Math 12(1):21–29

Calabi E, Olver PJ, Shakiban C, Tannenbaum A, Haker S (1998) Differential and numerically invariant signature curves applied to object recognition. Int J Comput Vision 26(2):107–135

Chazal F, Cohen-Steiner D, Guibas LJ, Mémoli F, Oudot SY (2009) Gromov-Hausdorff stable signatures for shapes using persistence. In: Computer graphics forum, vol 28. Wiley Online Library, pp 1393–1403

Cho M-S (1997) On the optimal covering of equal metric balls in a sphere. Pure Appl Math 4(2):137–144

MathSciNet   Google Scholar  

Cohen R, Havlin S (2003) Scale-free networks are ultrasmall. Phys Rev Lett 90(5):058701

Constantinou V (2018) PyNomaly: anomaly detection using local outlier probabilities (loOP). J Open Source Softw 3(30):845

Conte D, Foggia P, Sansone C, Vento M (2004) Thirty years of graph matching in pattern recognition. Int J Pattern Recognit Artif Intell 18(03):265–298

Di Martino A, Yan C-G, Li Q, Denio E, Castellanos FX, Alaerts K, Anderson JS, Assaf M, Bookheimer SY, Dapretto M et al (2014) The autism brain imaging data exchange: towards a large-scale evaluation of the intrinsic brain architecture in autism. Mol Psychiatry 19(6):659–667

Foggia P, Percannella G, Vento M (2014) Graph matching and learning in pattern recognition in the last 10 years. Int J Pattern Recognit Artif Intell 28(01):1450001

Gilmore PC (1962) Optimal and suboptimal algorithms for the quadratic assignment problem. J Soc Ind Appl Math 10(2):305–313

Gromov M (2007) Metric structures for Riemannian and non-Riemannian spaces. Springer

Gromov M (1981) Groups of polynomial growth and expanding maps. Publications Mathématiques de l’Institut des Hautes Études Scientifiques 53(1):53–78

Hagberg A, Swart P, Chult Daniel S (2008) Exploring network structure, dynamics, and function using NetworkX. Technical report, Los Alamos National Lab.(LANL), Los Alamos, NM (United States)

Heard N, Rubin-Delanchy P (2016) Network-wide anomaly detection via the Dirichlet process. In: 2016 IEEE conference on intelligence and security informatics (ISI). IEEE, pp 220–224

Hendrikson R et al. (2016) Using Gromov-Wasserstein distance to explore sets of networks. University of Tartu, Master Thesis, 2

Kalton NJ, Ostrovskii MI (1999) Distances between Banach spaces

Kaustubh S, Vinod M, Daniel R, Mark M, Greicius Michael D (2008) Network analysis of intrinsic functional brain connectivity in Alzheimer’s disease. PLoS Comput Biol 4(6):e1000100

Kazeminejad A, Sotero RC (2019) Topological properties of resting-state fMRI functional networks improve machine learning-based autism classification. Front Neurosci 12:1018

Kégl B (2002) Intrinsic dimension estimation using packing numbers. In: NIPS. Citeseer, pp 681–688

Kent AD (2016) Cyber security data sources for dynamic network research. In: Dynamic networks and cyber-security. World Scientific, pp 37–65

Klimt B, Yang Y (2004) The enron corpus: a new dataset for email classification research. In: European conference on machine learning. Springer, pp 217–226

Koutra D, Vogelstein JT, Faloutsos C (2013) Deltacon: a principled massive-graph similarity function. In: Proceedings of the 2013 SIAM international conference on data mining. SIAM, pp 162–170

Kriegel H-P, Kröger P, Schubert E, Zimek A (2009) LoOP: local outlier probabilities. In: Proceedings of the 18th ACM conference on information and knowledge management, pp 1649–1652

Lee H, Chung MK, Kang H, Kim B-N, Lee DS et al (2006) Persistent network homology from the perspective of dendrograms. IEEE Trans Med Imaging 12:2381–2381

Google Scholar  

Lee H, Chung MK, Kang H, Kim B-N, Lee DS (2011) Computing the shape of brain networks using graph filtration and Gromov-Hausdorff metric. In: International conference on medical image computing and computer-assisted intervention. Springer, pp 302–309

Lipman Y, Daubechies I (2011) Conformal Wasserstein distances: comparing surfaces in polynomial time. Adv Math 227(3):1047–1077

Majhi S, Vitter J, Wenk C (2019) Approximating Gromov-Hausdorff distance in euclidean space. arXiv:1912.13008

Mémoli F (2007) On the use of Gromov-Hausdorff distances for shape comparison

Mémoli F (2009) Spectral Gromov-Wasserstein distances for shape matching. In: 2009 IEEE 12th international conference on computer vision workshops, ICCV Workshops. IEEE, pp 256–263

Mémoli F (2011) Gromov-Wasserstein distances and the metric approach to object matching. Found Comput Math 11(4):417–487

Mémoli F (2012) Some properties of Gromov-Hausdorff distances. Discrete Comput Geom 48(2):416–440

Mémoli F (2013) The Gromov-Hausdorff distance: a brief tutorial on some of its quantitative aspects. Actes des rencontres du CIRM 3(1):89–96

Mémoli F, Sapiro G (2004) Comparing point clouds. In: Proceedings of the 2004 Eurographics/ACM SIGGRAPH symposium on Geometry processing, pp 32–40

Oles V, Vixie KR (2022) Lipschitz (non-)equivalence of the Gromov–Hausdorff distances, including on ultrametric spaces. arXiv:2204.10250

Pankaj KA, Kyle F, Abhinandan N, Anastasios S, Yusu W (2018) Computing the Gromov-Hausdorff distance for metric trees. ACM Trans Algorithms (TALG) 14(2):1–20

Peyré G, Cuturi M, Solomon J (2016) Gromov-Wasserstein averaging of kernel and distance matrices. In: International conference on machine learning. PMLR, pp 2664–2672

Pincombe B (2005) Anomaly detection in time series of graphs using arma processes. Asor Bull 24(4):2

Raymond JW, Willett P (2002) Maximum common subgraph isomorphism algorithms for the matching of chemical structures. J Comput Aided Mol Des 16(7):521–533

Redcay E, Moran JM, Mavros PL, Tager-Flusberg H, Gabrieli JDE, Whitfield-Gabrieli S (2013) Intrinsic functional network organization in high-functioning adolescents with autism spectrum disorder. Front Hum Neurosci 7:573

Rubinov M, Sporns O (2010) Complex network measures of brain connectivity: uses and interpretations. Neuroimage 52(3):1059–1069

Rudie JD, Brown JA, Devi B-P, Hernandez LM, Dennis EL, Thompson PM, Bookheimer SY, Dapretto MJNC (2013) Altered functional and structural brain network organization in autism. NeuroImage Clin 2:79–94

Saul N, Tralie C (2019) Scikit-TDA: topological data analysis for python. https://doi.org/10.5281/zenodo.2533369

Schmiedl F (2017) Computational aspects of the Gromov-Hausdorff distance and its application in non-rigid shape matching. Discrete Comput Geom 57(4):854

Shoubridge P, Kraetzl M, Wallis WAL, Bunke H (2002) Detection of abnormal change in a time series of graphs. J Interconnection Netw 3(01n02):85–101

Sturm K-T (2006) On the geometry of metric measure spaces. Acta Math 196(1):65–131

Sulo R, Berger-Wolf T, Grossman R (2010) Meaningful selection of temporal resolution for dynamic networks. In: Proceedings of the eighth workshop on mining and learning with graphs, pp 127–136

Tuzhilin AA (2016) Who invented the Gromov-Hausdorff distance? arXiv:1612.00728

Tzourio-Mazoyer N, Landeau B, Papathanassiou D, Crivello F, Etard O, Delcroix N, Mazoyer B, Joliot M (2002) Automated anatomical labeling of activations in SPM using a macroscopic anatomical parcellation of the MNI MRI single-subject brain. Neuroimage 15(1):273–289

van der Hofstad R, Hooghiemstra G, Znamenski D (2007) A phase transition for the diameter of the configuration model. Int Math 4(1):113–128

Van Wijk Bernadette CM, Stam Cornelis J, Andreas D (2010) Comparing brain networks of different size and connectivity density using graph theory. PloS one 5(10):e13701

Vandewiele NM, Van Geem KM, Reyniers M-F, Marin GB (2012) Kinetic model construction using chemo-informatics. Genesyst Chem Eng J 207:526–538

Villani C (2003) Topics in optimal transportation, vol 58. American Mathematical Soc

Villar S, Bandeira AS, Blumberg AJ, Ward R (2016) A polynomial-time relaxation of the Gromov-Hausdorff distance. arXiv:1610.05214

Watts DJ, Strogatz SH (1998) Collective dynamics of ‘small-world’networks. Nature 393(6684):440–442

Download references

Acknowledgements

Part of this work was performed during the stay of Vladyslav Oles at Los Alamos National Laboratory, and he acknowledges the provided support. In addition, the authors would like to thank Facundo Mémoli for detailed clarification of his work and useful comments, Amirali Kazeminejad for sharing preprocessed ABIDE I dataset, Bob Week for insightful conversations, Iana Khotsianivska for helping with figure design, Grace Grimm for reviewing and editing, and Luigi Boschetti for encouragement and inspiration.

Author information

Authors and affiliations.

Oak Ridge National Laboratory, Oak Ridge, USA

Vladyslav Oles, Nathan Lemons & Alexander Panchenko

You can also search for this author in PubMed   Google Scholar

Corresponding author

Correspondence to Vladyslav Oles .

Additional information

Publisher's note.

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendix A: Procedure FindLarge K

figure a

Appendix B: Procedure FindLeastBoundedRow

figure b

Appendix C: Procedure SolveFeasibleAssignment

figure c

Appendix D: Procedure CheckTheoremB

figure d

Appendix E: Procedure VerifyLowerBound

figure e

Appendix F: Procedure FindLowerBound

figure f

Appendix G: Procedure SampleSmallDistortion

figure g

Appendix H: Procedure FindUpperBound

figure h

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/ .

Reprints and permissions

About this article

Oles, V., Lemons, N. & Panchenko, A. Efficient estimation of the modified Gromov–Hausdorff distance between unweighted graphs. J Comb Optim 48 , 14 (2024). https://doi.org/10.1007/s10878-024-01202-1

Download citation

Accepted : 04 June 2024

Published : 23 August 2024

DOI : https://doi.org/10.1007/s10878-024-01202-1

Share this article

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

  • Gromov–Hausdorff distance
  • Shape analysis
  • Network science
  • Anomaly detection
  • Find a journal
  • Publish with us
  • Track your research

IMAGES

  1. Problem Solving vs Decision Making: Difference and Comparison

    difference between problem solving and problem finding

  2. Difference Between Problem Solving and Decision Making

    difference between problem solving and problem finding

  3. Problem Finding, Problem Solving, and Decision Making: Critical Skills

    difference between problem solving and problem finding

  4. What Is Problem-Solving? Steps, Processes, Exercises to do it Right

    difference between problem solving and problem finding

  5. Introduction to Problem Solving Skills

    difference between problem solving and problem finding

  6. What is the difference between Problem Solving & Process Improvement?

    difference between problem solving and problem finding

COMMENTS

  1. Solving a Problem Vs. Finding a Solution

    The distinction between finding a solution and solving a problem lies in the depth of understanding and the scope of impact. While the former offers temporary relief, the latter promises long-term ...

  2. Do we do enough problem-finding before problem-solving?

    There is a difference between "solving" and "finding" I want to briefly discuss the difference between problem-solving and problem-finding. I think this can be boiled down to getting attention vs. paying attention. The reason for this is simple: If we do not intentionally make a distinction between these two concepts, we unintentionally ...

  3. Problem finding and problem solving: Problem finding ...

    Problem finding and problem solving: Problem finding, creativity, and giftedness ... 61 effect sizes from 10 studies with a total sample of 1,657 participants showed a large difference between DT ...

  4. 5: Problem Solving

    5.1: Problem Solving An introduction to problem-solving is the process of identifying a challenge or obstacle and finding an effective solution through a systematic approach. It involves critical thinking, analyzing the problem, devising a plan, implementing it, and reflecting on the outcome to ensure the problem is resolved.

  5. What is Problem Solving? Steps, Process & Techniques

    Finding a suitable solution for issues can be accomplished by following the basic four-step problem-solving process and methodology outlined below. Step. Characteristics. 1. Define the problem. Differentiate fact from opinion. Specify underlying causes. Consult each faction involved for information. State the problem specifically.

  6. Problem Finding

    Problem finding consists of two key facets, as pointed out by Reiter-Palmon and Robinson ( 2009 ). The first focuses on problem identification and recognizing opportunities in the environment even when those have not been explicitly presented to the individual solving the problem. The second facet focuses on structuring and describing the ...

  7. Problem finding

    Problem finding means problem discovery. It is part of the larger problem process that includes problem shaping and problem solving. Problem finding requires intellectual vision and insight into what is missing. Problem finding plays a major role in application of creativity. [1]

  8. Problem Solving

    Problem solving is the process of articulating solutions to problems. Problems have two critical attributes. First, a problem is an unknown in some context. That is, there is a situation in which there is something that is unknown (the difference between a goal state and a current state). Those situations vary from algorithmic math problems to ...

  9. Decision Making vs. Problem Solving

    It is a cognitive process that individuals use to make choices and reach conclusions. On the other hand, problem solving refers to the process of finding solutions to specific issues or challenges. It involves identifying, analyzing, and resolving problems to achieve desired outcomes. Both decision making and problem solving share the purpose ...

  10. Decision-Making and Problem-Solving: What's the Difference?

    Decision-making is the process of choosing a solution based on your judgment, situation, facts, knowledge or a combination of available data. The goal is to avoid potential difficulties. Identifying opportunity is an important part of the decision-making process. Making decisions is often a part of problem-solving.

  11. Problem-Solving or Solving Problems?

    There are many other tips I can give, which I will continue in a later post. For now, I would like to leave you with a quote from a colleague: "It is better to answer 1 problem 5 different ways than to answer 5 different problems". In one short sentence, that is the difference between problem-solving and solving problems.

  12. Problem Solving and Decision Making: Differences & Applications

    2) Objective. Problem Solving is an effort to overcome a given obstacle or challenge. Its basic aim is to produce a solution that would change the current situation from less desirable to more desirable. On the other hand, Decision Making aims at selecting the best possible choice from among several alternatives.

  13. Problem Solving

    This page continues from Problem Solving an Introduction that introduces problem solving as a concept and outlines the stages used to successfully solve problems.. This page covers the first two stages in the problem solving process: Identifying the Problem and Structuring the Problem. Stage One: Identifying the Problem. Before being able to confront a problem its existence needs to be identified.

  14. Making the Difference: Problem Solving vs Decision Making

    Differences between problem solving and decision making. Although they have similarities in terms of the process used to come up with a solution, their goals differ significantly. Process goals are different. The goal of problem solving is to find a solution to an existing issue. It involves identifying the cause of a problem and then finding ...

  15. Exploring the Problem-Finding and Problem-Solving Approach for

    Executive Overview An emerging problem-finding and problem-solving approach suggests that management's ability to discover problems to solve, opportunities to seize, and challenges to respond to is vital to organizations. This paper explores the extent to which the problem-finding and problem-solving approach can provide a foundation for joining the capabilities, dynamic capabilities, and ...

  16. Problem, Symptoms & Root Cause Analysis (RCA) Examples

    Understanding the difference between a problem and its symptoms, and the role of root cause analysis in identifying and solving the actual problem, is a cornerstone of analytical thinking. This blog aims to throw light on these distinctions and demonstrate the importance of root cause analysis, empowering you to approach problems with a more ...

  17. PDF What Is Problem-solving Ability? Carmen M. Laterell Abstract

    Polya defined problem solving as finding "a way where no way is known, off-hand… out of a difficulty…around an obstacle" (1949/1980, p. 1). Polya stated that to know mathematics is to solve problems. The difference between nonroutine and routine problems seems to be a key element in

  18. Why Problem Finding Is More Important Than Problem Solving

    Problem finding often involves creativity, curiosity, and a willingness to challenge assumptions and think outside the box. It is usually considered as the first step in the innovation process. While problem solving is important for addressing current issues, problem finding is essential for generating new ideas and driving innovation.

  19. Design Thinking vs Problem-Solving: Understanding the Differences

    Problem-solving, on the other hand, is a more structured approach to finding solutions to specific problems. It's a process that uses logic and analysis to identify the cause of a problem and then find the best solution. The key elements of problem-solving include: Specific problem focus: Problem-solving is focused on finding a solution to a ...

  20. Are You Confusing Rumination with Problem-Solving?

    Higher mind states, suited for problem-solving, are adaptive and involve the brain's higher cortical/executive functions. These states are characterized by perspective, the ability to regulate ...

  21. Problem-Solving: Heuristics and Algorithms

    Describe the differences between heuristics and algorithms in information processing; ... In contrast to heuristics, which can be thought of as problem-solving strategies based on educated guesses, algorithms are problem-solving strategies that use rules. Algorithms are generally a logical set of steps that, if applied correctly, should be ...

  22. Challenge vs. Problem

    It is typically seen as a negative or undesirable situation that requires finding a solution. While both challenge and problem require effort and problem-solving skills, the key distinction lies in the perspective and mindset with which they are approached. Challenges are seen as opportunities, while problems are seen as obstacles.

  23. Distinguishing Between Research & Problem Solving

    Key Difference - Research vs Problem Solving. Research and problem solving are often confused, as both involve a problem. However, there is a key difference between the two. While problem-solving focuses on finding a solution to an already identified problem, research involves answering a research problem by gathering and analyzing data. In ...

  24. Differences and Similarities Between Coaching and Consulting

    Let's summarize the main differences: Role in problem-solving. Coaching: Coaches typically act as guides, helping clients explore their own challenges and develop solutions. They facilitate self-discovery and growth by asking probing questions and offering perspectives rather than directly solving problems.

  25. Efficient estimation of the modified Gromov-Hausdorff distance between

    Gromov-Hausdorff distances measure shape difference between the objects representable as compact metric spaces, e.g. point clouds, manifolds, or graphs. Computing any Gromov-Hausdorff distance is equivalent to solving an NP-hard optimization problem, deeming the notion impractical for applications. In this paper we propose a polynomial algorithm for estimating the so-called modified Gromov ...