Wolfram Computation Meets Knowledge

Technologies

Wolfram Algorithmbase

Building the world's largest web of connected algorithms

For three decades, Wolfram Research has been a world leader in algorithm development—pursuing the long-term mission of creating a complete web of connected algorithms spanning all types of computation.

If there's a known algorithm, we want an optimal implementation; if there isn't, we want to invent one.

Tens of thousands of algorithms is only the beginning. The most visible face of the Wolfram Algorithmbase is not algorithms, but meta-algorithms, which automatically select optimal specific algorithms to use in each unique situation—and effectively allow users to simply define their goals in the Wolfram Language, then let the system take over and automatically work out how best to achieve them.

Notable Coverage Areas

Superfunctions and Meta-algorithms

Most of the specific algorithms in the Wolfram Algorithmbase are accessed through superfunctions and meta-algorithms, which automatically determine the optimal algorithm to achieve a particular task.

Just Solve It!

A Wolfram Language superfunction like Solve is set up to solve a very wide range of equations—using meta-algorithms to pick the best solution techniques for a particular equation.

So Many Choices, Automatically Made

It's not uncommon for a Wolfram Language superfunction to select from hundreds of underlying algorithms, and to make automated choices for large numbers of algorithm parameters.

So Easy You Just Try It

By dramatically lowering the cost of trying out algorithmic ideas, the Wolfram Algorithmbase has enabled countless discoveries and inventions.

Code in Concepts not Algorithms

When you use a Wolfram Language superfunction like FindShortestTour, you're writing code that captures concepts rather than burning in a particular generation of specific algorithms.

Consumerizing Sophisticated Algorithms

The Wolfram meta-algorithm approach has routinely opened up new algorithmic areas by allowing non-expert users to access sophisticated algorithms through simple and highly automated functions.

The Meta can be Hardest

Sometimes the meta-algorithm for algorithm selection is more sophisticated and even time-consuming than the algorithms it ultimately selects.

Knobs and Switches if you want them

The Wolfram Language always allows users to override automatic behavior and request specific named algorithms in the Wolfram Algorithmbase.

The Anatomy of a Modern Algorithm

Today's best algorithms routinely make use of building blocks from vastly different areas—validating the critical importance of broad integration in the Wolfram Algorithmbase.

Expect Surprises Inside

Even if an algorithm in the Wolfram Algorithmbase gets a numerical answer, there's a good chance it's using symbolic computation inside, and maybe graph theory or computational geometry too.

A New Era of Algorithms

Traditional textbook algorithms are often described in low-level pseudocode. But today's best algorithms instead almost always use sophisticated building blocks.

It's Not Enough to Optimize in One Domain

To get the best results for a numerical computation, it's almost inevitable that one's going to need serious capabilities and methods from outside numerical computation.

Do Less Work by Being Smarter

The best modern algorithms use highly sophisticated up-front automatic analysis to minimize the amount of computational work they need to do.

Richer and Richer Data Structures

The symbolic nature of the Wolfram Language makes it easy to use highly complex data structures—and to interoperate between different data structures.

Everything Is Adaptive

Even the algorithms in the Wolfram Algorithmbase are algorithmic: it's routine for an algorithm to adapt its structure algorithmically as a particular computation is being run.

Encapsulating Judgment in Heuristics

Many algorithms in the Wolfram Algorithmbase are optimized through heuristics that effectively encapsulate extensive human knowledge and experience about distributions of problems and runtimes.

Computational Aesthetics

In the Wolfram Algorithmbase, it's common to have sophisticated algorithms that optimize the visual appearance of outputs, based on algorithmic representations of human aesthetic preferences.

On the Edge of Intractability

Algorithms in the Wolfram Algorithmbase routinely solve problems that are formally intractable—typically by using a hierarchy of subalgorithms that take a range of different approaches to the problem.

Industrial-Strength Algorithms Everywhere

The goal for the Wolfram Algorithmbase is not just to have a large number of algorithms, but to ensure that in all areas they are accurate, reliable, robust and fully scalable.

A Three-Decade Tradition of Software Quality

Wolfram has been a leader in software quality assurance for three decades—developing extensive methodologies and algorithmic techniques for software testing.

The World's Most Demanding Users

Wolfram algorithms have been widely used by some of the world's most demanding users—in research, development and academia—for three decades.

Gold-Standard Algorithm Quality

Over the course of three decades, Wolfram's algorithms have become gold standards for coverage, accuracy and performance in domain after domain.

Infinite Scaling

Wolfram algorithms are implemented to be able to run to the limits of your computer system—without any built-in limitations.

Generality Is Built In

Wolfram algorithms are implemented to be as general as possible—and to allow arbitrary dimensionality, degrees, precision and more.

Don't Worry About Numerical Precision

The Wolfram Algorithmbase is unique in its systematic ability to compute to arbitrary numerical precision, and to automatically do the numerical analysis to ensure that a particular precision can be achieved.

Analyze To Ensure Robustness

The Wolfram Algorithmbase routinely uses symbolic analysis and other sophisticated techniques to ensure that the algorithms it uses will perform correctly in a specific problem.

Don't Trust the Books!

On countless occasions, testing procedures for Wolfram algorithms have found errors in well-established tables and reference books.

So Many Original Wolfram Algorithms

A great many of the algorithms in the Wolfram Algorithmbase come from original Wolfram R&D, and from unique Wolfram algorithm development methods.

Mixing Methods to Create Algorithms

By using the Wolfram Language, Wolfram has been in a unique position to create new classes of algorithms that mix methods from many different areas.

Exploratory Algorithm Creation

Wolfram routinely uses the Wolfram Language to explore problem spaces and to test algorithm hypotheses in order to derive the broadest possible new algorithms.

Automated Algorithm Discovery

An increasing number of Wolfram algorithms are created by searching large spaces of possible programs in the computational universe, using methods pioneered in Stephen Wolfram's A New Kind of Science.

The Meta-Algorithm Frontier

The vast majority of meta-algorithms in the Wolfram Algorithmbase are completely original to Wolfram—not least because the problems they solve have never been studied in the academic literature.

Production Lines of Algorithm Invention

In building technology for highly general problems, Wolfram has routinely created systematic "production lines" for algorithmic development that generate large numbers of new specific algorithms.