Looking to the future with edge computing
Edge computing ‘brings the cloud closer’ – enabling small and simple technological devices to perform complex functions. Professor Mahadev Satyanarayanan, at Carnegie Mellon University in the US, and Professor Nigel Davies, at Lancaster University in the UK, are working on making this life-changing technology part of our everyday reality.
Talk like a computer scientist
Bandwidth — a measurement of the amount of information that can be sent between computers via a network connection
Cloud — in computer terms, a global network of servers that operate together to host software and infrastructure, which is accessed via the internet
Cognitive — related to conscious mental activities, such as thinking, reasoning and remembering
Edge computing — an emerging concept that describes a range of networks and devices in close proximity to the user
Internet of Things (IoT) — the network that connects everyday physical devices (which can include anything from traffic lights to washing machines), allowing them to send and receive data
Latency — the delay in network communication, defined by data delivery speeds
Millisecond (ms) — one thousandth of a second
Serendipity — something good happening by chance or ‘luck’
Recent decades have seen a massive overhaul in how people live their daily lives, due in large part to increasingly sophisticated technologies. These changes affect everything from how we interact with each other to how we perform daily tasks. For instance, social media and video calls can connect us with people on the other side of the world; powerful search engines provide us with on-hand information on everything from recipes to health advice; and digital entertainment systems are more accessible than ever.
Yet there is still a lot of room to go further – and to go smaller. “Today, the designers of mobile hardware face a difficult choice,” says Professor Mahadev Satyanarayanan (Satya), a professor of computer science at Carnegie Mellon University. “They can make their devices very powerful, at the cost of making them heavy, bulky and with short battery life. Or, they can make them extremely light and small, with long battery life, but only able to run simple applications.” At least, that is the current situation. Satya believes he has found the answer to sidestepping this trade-off. With his collaborator and fellow computer scientist Professor Nigel Davies, from Lancaster University, Satya is pushing the frontiers of technological possibility.
Edge computing
“Edge computing makes cloud-like computing resources available to simple devices,” says Satya. “It enables them to perform near-real-time tasks that they could not perform with only their own computing resources.” The cloud is a distributed collection of servers accessed via the internet, and these servers can be very powerful. Theoretically, we can already access the cloud from any device with an internet connection, but that connection may involve many network hops that each add a small delay. The cumulative effect of these delays may be significant, and may vary unpredictably.
Small, wearable devices, such as smart watches, move around a lot, so to ensure they remain close to the cloud, an in-between step is needed. Satya and Nigel suggest the concept of ‘cloudlets’, which would mediate access between the cloud and Internet of Things (IoT) devices. This moves processing closer to the user, keeping latency low and bandwidth high – in other words, keeping the system speedy and capable of complex tasks.
Wearable cognitive assistance
To understand why speed is so important, first we need to understand the intended purposes of edge computing. One such purpose is cognitive assistance. “Wearable cognitive assistance is a new class of applications that we describe as ‘an angel on your shoulder’,” says Satya. “It can help you in your day-to- day tasks and catch errors before they become major issues.” Satya envisages such assistance being especially useful for older people, who may suffer from poorer memory and find certain cognitive tasks more difficult. “The possibilities are endless,” says Satya. “For example, if you are visually impaired, such a system could guide you as a human assistant might.”
For this assistance to work, it needs to be fast. “Humans are remarkably fast and accurate on cognitive tasks, and acutely sensitive to delays in interactions,” says Satya. “We see this in virtual reality applications that use head-tracked systems that need latencies of less than 16 ms to achieve perceptual stability – otherwise the latency is noticeable and causes problems.” Other cognitive tasks are also breathtakingly fast. Face recognition takes between 370 and 620 ms, depending on familiarity, while speech recognition takes between 300 to 450 ms for short phrases. Only 4 ms are needed to recognise a human voice. “For cognitive assistance technologies to work, they need to exceed humans’ cognitive abilities, while being just as fast, or faster,” says Satya. “Currently, cloud computing cannot achieve these speeds for most areas, simply because the servers in the cloud are too far away.”
Technology-mediated serendipity
Reference
https://doi.org/10.33424/FUTURUM446
© Nigel Davies
© metamorworks / Shutterstock.com
© UnderhilStudio / Shutterstock.com
Another exciting potential application of edge computing is one which would aid meaningful human interactions. It is well-known that many of the world’s best innovations began life as a casual conversation or a chance meeting between colleagues. A transition to an increasingly digital world potentially threatens this wellspring for creativity, as such spontaneous encounters do not really happen in the digital space. Nigel thinks that edge computing could help prevent this risk. “Technology-mediated serendipity seeks to leverage IoT technologies, edge computing, high-resolution video, and a whole host of other elements of computer science to recreate serendipitous interactions without the need for people to be in the same physical space,” he says.
Satya and Nigel have invented an imaginary system called ‘Pomme’ to illustrate this potential. For instance, when a remote worker is having a coffee break, they may set their watch to ‘opt-in’ for Pomme. A chime alerts them to another colleague similarly away from their desk – maybe somebody in the office having lunch. The two are automatically connected via a video call and begin chatting about their work; they may realise that their projects have a lot of synergy and potential for deeper collaboration.
“Technology-mediated serendipity requires very fast establishment of video and audio connections,” says Nigel. “However, as these are unprompted, there are privacy concerns, so the technology must acknowledge these and offer options for filtering video and audio feeds.” For instance, if other people are visible in frame, they would need to be obscured by a filter to maintain their privacy. “Determining the appropriateness of connections and performing the relevant filtering is best done as close to the user as possible, to ensure sensitive data doesn’t leave their location,” says Nigel. “By using cloudlets, edge computing could provide this security.”
Professor Mahadev Satyanarayanan (Satya)
Computer Science Department, Carnegie Mellon University, Pittsburgh, USA
Professor Nigel Davies
School of Computing and Communications, Lancaster University, Lancaster, UK
Fields of research: Computer science, edge computing, mobile computing, pervasive computing
Research project: Working to make edge computing a reality, to fulfil life-improving functions through applications such as wearable cognitive assistance and technology-mediated serendipity
About computer science
“In today’s world, computer programming is arguably as fundamental a skill as reading, writing and arithmetic,” says Satya. “Software and programming have become indispensable tools in science.” Advances in computer science can lead to advances in every other area of science, because they provide powerful data collection and manipulation tools. “Computing and programming are providing scientists with the tools to realise our collective visions of the future,” says Nigel. “Software provides almost limitless potential for creativity.”
An important aspect of computer science is its application – how it can be used in real society. “Computer science is often creating systems that must operate within existing social and organisational structures, not to mention legal and ethical considerations,” says Nigel. “It’s important that computer scientists are able to consider these broad issues in their work.” Furthermore, like all sciences, computer science is becoming increasingly collaborative. “Modern computer systems are of such a scale and complexity that no one person can create them,” says Nigel. “The ability to work as a team is a critical skill for the modern computer scientist.”
Recognised as an academic field in the 1960s, computer science is still a relatively young discipline. “Really, we are only getting started!” says Nigel. “The next generation of computer scientists will be involved in creating revolutionary new systems and applications – be it quantum technology or human augmentation.”
Pathway from school to computer science
• Nigel emphasises how computer science intersects with many other subjects. Hardware aspects relate to electronics and engineering, while human-computer interactions relate to psychology and sociology.
• At school and post-16, studying mathematics (and further mathematics in the UK) will give you the widest possible range of options at university.
• Additional subjects could include computing itself, if available, along with other sciences or some of the complementary subjects mentioned above. In the UK you can still study computing without mathematics, but you will have a far smaller set of universities to choose from.
Explore careers in computer science
• Nigel recommends looking at the websites of the British Computer Society and the Association for Computing Machinery to read case studies and interviews and learn more about careers in computer science.
• There are vast amounts of free online resources for computer programming, which can be a useful way to see if you enjoy the topic. For example, W3Schools provides a tutorial in Python.
• According to Indeed, the average computer scientist salary is around $108,000 in the US and £54,000 in the UK.
Meet Nigel
My uncle was a research scientist with British Telecom. He had a Commodore PET computer at home that I learned to program on. This is what kick-started my interest in computer science.
My careers advisor at school told me not to bother applying to university! Computers were fairly new at the time, and I think they didn’t see their potential. Fortunately, I ignored their advice and applied anyway – definitely the right choice.
When I encounter obstacles, I go for a stroll. Often the answer comes to me while I’m out walking. Outside of work, I relax by playing music with friends and colleagues.
I am very proud of my former PhD students who have gone on to have great careers. In technical terms, I’m most proud of a really early mobile tour guide system we created back in the late 1990s. It provided a glimpse of the future, with many features that are now seen in modern apps.
I’m now focusing on creating some new cutting-edge laboratories for teaching cyber security and computer science. Once I’ve completed that project, I’m looking forward to carrying out new research into memory augmentation.
Nigel’s top tips
1. Work on something that you are passionate about. I love what I do, so going into work is a daily joy.
2. If you want an academic career, remember it involves both sharing your knowledge through teaching, and creating new knowledge through research. To be successful you need to be good at – and enjoy – both these elements.
Meet Satya
From my very first experience with computers in 1973, I was hooked. I was an undergraduate student in India, and the university received its very first computer that year – one operated using punched cards. I attended an introductory programming course in FORTRAN (a programming language), taught by the inspiring Professor H.N. Mahabala. The experience of being able to get a machine to do complex intellectual tasks perfectly and reproducibly was totally awesome.
From 1983 to 1986, I worked on the Andrew Project at Carnegie Mellon University – a transformative experience. We knew very little about distributed systems then, but we learnt as we went! We were trying to build a system for use at scale, rather than a pure research system. The experiences and insights that I gained were priceless and gave me the opportunity to work with some extremely talented and wonderful people.
Creating the Andrew File System and the Coda File System back in the 1980s and 1990s are some of my proudest career achievements. Later, I worked on mobile computing, which brings with it unique challenges. Addressing these mobility-related challenges eventually led to the technical insights that form the basis of edge computing today. I’m excited to see where this development leads next.
Satya’s top tip
Building systems that really work is challenging. A simple concept may involve weeks of hard work to reach a smoothly functioning system, but the effort is well worth it, and all the troubleshooting and dead ends along the way are the best way to gain deep insights into the system you are building. Most importantly, it is extremely satisfying to see your code work!
Do you have a question for Satya or Nigel?
Write it in the comments box below and Satya or Nigel will get back to you. (Remember, researchers are very busy people, so you may have to wait a few days.)