In Every Complex Situation There Are 3 Solutions Easy

In any scientific project, including data science, if you want strong added value and innovation, you will have to deal with complexity.

Resolving complex problems requires lot of different skills, including concentration, imagination and communication. Today, there are many simple solutions from experienced scientists to help people in their projects. We will present several of them, starting by the most innovative ones.

Photo by Jeswin Thomas on Unsplash

1. The chocolate bar technique

Some master mathematicians who work in algorithm research used to apply "the chocolate bar" technique.

Photo by Louis Hansel @shotsoflouis on Unsplash

This comes from a relatively complex math problem: if you have a 5x12 chocolate bar, how many times you need to break it up to have only singles pieces?

The best way to solve it is to consider a 1x2 bar first, then a 1x3, a 2x3, etc.

The lesson behind this, is that if you have to solve a complex problem, you will want to cut it in the smallest pieces as possible, until reaching the most elementary ones, and then expand them little by little to understand the overall problem.

This is also applicable in terms of knowledge chunks: very complex problems requires several knowledge chunks, i.e. elementary pieces of understanding that are bound together to be able to solve a complex problem.

For instance, you will not be able to understand string theory before knowing some quantum mechanics, and you will not be able to understand quantum mechanics before knowing functional analysis (Hilbert spaces, etc.) and so on…

2. Asking for help improves both understanding and problem solving

Usually, when we are blocked in a complex problem, we tend to ask for support as last resort, but it is a mistake.

Photo by National Cancer Institute on Unsplash

If you have to reach good results quickly, describing sooner your problem in a Q&A website would have the following benefits:

  • By setting the problem clearly, you will understand it much better. That's why we see often people asking a question and a few hours later, they answer to it themselves because they have reformulated the problem clearly.
  • You could get an answer quickly. Sometimes the answer is a new interesting question that could help making progress, or a direct solution, which is great.
  • You will improve your skills in complex problem definition. Describing a complex problem is not an easy task, as you may have many dimensions to consider. The more you will ask for help, the better you will learn how to express your problems clearly.
  • It can help other people having a similar problem.

Consequently, asking for help in an early phase would save you a lot of time.

Please note that there are already question and answer websites to discuss complex scientific topics, including data science algorithms:

Maths : https://mathoverflow.net/

Data sciences : https://datascience.stackexchange.com/

Physics : https://physics.stackexchange.com/

3. Ask to masters

In very complex issues, masters can help you in solving them.

If you are applying a specific algorithm from a scientific paper, and you haven't the expected result, the paper's writters generally answer to any question.

They are often interested in how their algorithm can be used in different projects, it's a win-win situation.

Their email or LinkedIn profile are in general easy to find.

Note: Of course, great masters like Nobel laureates or Fields Medals, are very busy in their research activities and might not answer to questions.

4. Teaching is the best way to learn

A classic method to takle complex problems is to reformulate them in our own words, and even translating them in our mother tongue (brain's neural connections are better).

Richard Feynman was one of the best scientists and used to have great teaching skills. He was able to explain very complex phenomena in simple words with fun.

A good solution to reformulate is to teach to others what we've learned, overall if it has a good storytelling. Many interesting questions may rise and offer new ways of improvement.

5. Add dimensions for a better comprehension

Improving understandability is crucial in complex problem solving.

Therefore, it is necessary to use tools to visualize, simplify, coloring, animate and even simulate complex problems.

Example of Shrödinger's equation visualized in an animation by raising e.

This is possible by making new representations like 2D or 3D charts, animated visuals and, in some cases, dimensional reduction techniques.

In the case of very complex problems, simulation and test benches are always welcome, as they are experimental approaches, in which we can play with a complex environment and understand it much better.

A cyclotron is a good example of large scale test bench.

6. Adapt your environment's design to problem solving

Most scientifics need black or white boards to solve complex problems.

Thanks to boards, it is possible to group lot of information at once that couldn't be grouped in a single paper. In addition to that, this is the best way to discuss complex topics with other colleagues. It also a good way to leave complex equations to reflexion.

Mathematicians at IHES discussing algorithms outdoors. © IHES, E.J

Wide desks or screens could also ease the management of information.

All those things can be organized in an improved design, cf. this book .

Note: The interactive digital board is also a great solution to deal with complexity but are quite expensive.

7. Feel free to make mistakes and explore new ideas

Many scientific breakthroughs have been discovered thanks to unexpected mistakes or failures.

Photo by Stefan Widua on Unsplash

Penicilin, radar or radioactivity are good examples of unexpected discoveries.

This means that unexpected result could lead to new solutions.

Mistakes are also rich in learning stuff, as long as they are transformed in a meaningful lesson.

Problem solving is not always a matter of looking for a specific solution, but also for discovering new ones by reframing the original problem.

8. Read the problem again

Dealing with complexity needs revisiting studies again and again.

It is probably the most difficult part, as it feels like losing time, but it is crucial to have a solid knowledge.

Practice makes the master.

9. Mastering Internet search has huge advantages

Today, everyone uses Internet search to solve problems, but not all of them knows the ways to search efficiently, even scientific experts.

Reading tips from a web page like this one will save you a lot of time in the long run.

If you don't have a very good english, translation tools are also very powerful, but it is often important to add context to reach good translation results.

By the way, I've written an article about the maths behind recent translation services here.

10. Read books about problem solving

Many interesting books present advanced solutions for complex problem solving. Here are some of them:

  • A Mind for Numbers, by Barbara Oakley, PhD.
  • How Not to Be Wrong: The Hidden Maths of Everyday Life, by Jordan Ellenberg
  • What's Your Problem?: To Solve Your Toughest Problems, Change the Problems You Solve, by Thomas Wedell-Wedellsborg
  • Deep Work: Rules for Focused Success in a Distracted World, by Cal Newport

11. Muscle your problem-solving skills

Being good in problem solving also requires efficiency.

Many companies require scientists able to solve problems fast, not only in a team but also individually. Therefore, it is possible to train yourself in problem solving websites, some of them have tests to obtain a certificate or challenges.

Project Euler : Try to solve many interesting mathematical problems.

Brilliant : Learn how to solve complex problems thanks to innovative lessons.

Topcoder : Build skills through practice and challenges.

Hackerrank : Practice coding skills that includes mathematical problems.

Not to mention Kaggle, which is a must for solving problems in Data Science with plenty of data sets.

What about you?

Thanks for reading. This article is not about a single experience, but from several ones, which could include yours.

Feel free to share your solution in the comments, I will add a chapter about it to share it to everyone.

I hope this article will help you to understand better complexity, "the unconceivable nature of nature" as said Richard Feynmann.

andersonwhelving.blogspot.com

Source: https://towardsdatascience.com/how-to-solve-complex-problems-efficiently-629c71adcd8d

0 Response to "In Every Complex Situation There Are 3 Solutions Easy"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel