Behing the technology trends
Looking around at the technology landscape today, we see exciting trends that are getting a lot of attention: Internet of Things; MOOCs; Big Data; Industry 4.0; and so on. But if we were to compose a list from just five years ago, we might have seen quite a different list, including social computing, SaaS, and Executable Internet.
Trends, after all, come and go. However there are several long-term, fundamental transformations that are driving many of these technology trends. Four such transformations are:
- Algorithms in everything;
- Hardware in more and more specialised form factors;
- Connected chips, devices, and systems; and
- People computing anywhere.
Each of these transformations presents both challenges and opportunities for the scientific and engineering community, and for society as a whole as it adopts the new ideas, new products, and new ways of living that they enable. These transformations don’t act in isolation – they fuel and feed off each other, together driving a dizzying pace of progress.
To understand the whole picture, let’s look at each transformation and the response it demands:
Algorithms in everything
One proxy for increased algorithmic content is the explosive growth of transistors. There are predictions that, in the next year or so, there will be 170 billion transistors per person on the planet, an astonishing number. These transistors, and the algorithms that they execute, are in billions of devices and systems that, as a result, are smarter, more robust, and more capable than ever.
This transformation requires tools for conceiving algorithms, as well as ways for someone to find and apply algorithms that someone else has created.
Increasing diversity and availability of hardware platforms
The hardware that executes those algorithms is available in increasingly diverse platforms and form factors for different purposes. In addition to laptops and desktop computers, there are smartphones and tablets on the low-end, and HPC and cloud-based systems on the high end. Microcontrollers, GPUs, FPGAs, and ARM cores live side-by-side in systems. Meanwhile, low-cost open-source hardware such as Arduino and Raspberry Pi is exploding, bringing programmable processing power to the masses. Three years ago, the Raspberry Pi did not exist. Now, over 2.5 million have been shipped around the world.
To take advantage of this broad range of hardware, tools need to provide an abstraction from the hardware-specific details, while automatic code generation provides the means to run algorithms on the hardware quickly and efficiently.
Connected chips, devices, and systems
Algorithm-rich devices and systems are increasingly connected: to each other, to service infrastructure, and to the internet. This enables new types of collaborative behaviour and functionality. It can also generate vast amounts of structured and unstructured data about the systems and their environments. The associated Big Data trend creates opportunities for acting on the derived knowledge, but it also challenges us to find better ways to extract meaningful information from those huge volumes of data.
This requires data analysis tools to deal with larger volumes of data, with machine-learning, and algorithms that can extract knowledge.
People computing anywhere
When mainframe computers were predominant, they could support millions of users sitting at terminals performing thousands of applications. The advent of the PC increased that reach by perhaps one or two orders of magnitude. Now, the cloud provides a computing platform that can be accessed by billions of people performing millions of applications on a diverse range of devices. That has led to a completely different mindset: we do not go somewhere or carry something in order to compute; we expect to be able to compute anywhere we go. To meet user expectations, computing tools will need to support resources from smartphones to the cloud.
These four transformations are changing today’s markets and creating new ones. They are changing how we learn and how we live. And they challenge engineers and scientists to deal with the issues that they create, and to take advantage of the opportunities they present.
MathWorks is delivering software and services that enable engineers and scientists to take advantage of these long-term transformations to solve their complex design and analysis problems. Model-Based Design accelerates the development and testing of algorithm-rich systems, from low-cost programmable chips to high-performance hardware-in-loop simulators.
And you can run Matlab anywhere, on your mobile device, on the cloud. By understanding the long-term impact of these and other transformations, our goal is to ensure that engineers and scientists can use Matlab and Simulink to solve important problems, today and long into the future.