top of page

Sense-Plan-Act Architecture

Part 2 of 3

โ“#DidYouKnow that roboticโ€™s applications usually require a complex sensor setup and numerous actuators to fulfill the given task? Compared to automation tasks, robotic applications must react to a changing environment and novel task inputs during the execution.

๐Ÿ’กTherefore, roboticists use system architectures to efficiently process sensor data input, plan higher-level actions, and control actuators. Different types of architectures depend on the #robot setup and the application itself.

In this post, we discuss the ๐—ฆ๐—ฒ๐—ป๐˜€๐—ฒ-๐—ฃ๐—น๐—ฎ๐—ป-๐—”๐—ฐ๐˜ ๐—ฟ๐—ผ๐—ฏ๐—ผ๐˜๐—ถ๐—ฐ๐˜€ ๐—ฎ๐—ฟ๐—ฐ๐—ต๐—ถ๐˜๐—ฒ๐—ฐ๐˜๐˜‚๐—ฟ๐—ฒ. This post is the second out of a series of three posts on robotic architecture.

These architecture layers are processed in sequential order. First, sensor data is processed, creating an environmental understanding for the robot. It answers questions like where the robot is, which objects surround it, and which parts of the environment can currently be not perceived. Then this information is passed to the planning layer, which considers all the processed data and the robot's current task. It plans the next immediate step for achieving the mission and forwards actions directly to the third layer. The act layer executes the received task by controlling motors and outputs.

๐Ÿ‘๏ธ ๐—ฆ๐—ฒ๐—ป๐˜€๐—ฒ ๐—Ÿ๐—ฎ๐˜†๐—ฒ๐—ฟ

Receive sensor data, fuse information, generate environmental understand

โœ๏ธ ๐—ฃ๐—น๐—ฎ๐—ป ๐—Ÿ๐—ฎ๐˜†๐—ฒ๐—ฟ

Consider environmental perception, based on high-level mission immediate next execution step.

๐Ÿƒโ€โ™€๏ธ ๐—”๐—ฐ๐˜ ๐—Ÿ๐—ฎ๐˜†๐—ฒ๐—ฟ

Receives following immediate task and controls actuators and outputs

The ๐—ฆ๐—ฒ๐—ป๐˜€๐—ฒ-๐—ฃ๐—น๐—ฎ๐—ป-๐—”๐—ฐ๐˜ ๐—ฎ๐—ฟ๐—ฐ๐—ต๐—ถ๐˜๐—ฒ๐—ฐ๐˜๐˜‚๐—ฟ๐—ฒ was executed in a linear processing pattern within its original form. This linear processing makes it easy to understand and debug. However, perception algorithms are usually more time-consuming than controlling algorithms and thus slow down the execution. This might have been a suitable solution for slowly moving robots, but it is unsuitable for highly dynamic environments with hard real-time constraints on control algorithms.

๐Ÿ–ผ๏ธ ๐—œ๐—บ๐—ฎ๐—ด๐—ฒ ๐——๐—ฒ๐˜€๐—ฐ๐—ฟ๐—ถ๐—ฝ๐˜๐—ถ๐—ผ๐—ป: The figure visualizes the never-ending loop of sense-plan-act. The loop starts at the sensing layer, which forwards perceptions to the plan layer. Then the plan layer considers this environmental input and plans the following immediate action. The act layer then executes this action. Then the sensing layer perceives the changes to the previous run and forwards the new information to the plan layer. And so on...

๐Ÿ“š ๐—•๐—ผ๐—ผ๐—ธ ๐—ฅ๐—ฒ๐—ฐ๐—ผ๐—บ๐—บ๐—ฒ๐—ป๐—ฑ๐—ฎ๐˜๐—ถ๐—ผ๐—ป ๐—ณ๐—ผ๐—ฟ ๐—ณ๐˜‚๐—ฟ๐˜๐—ต๐—ฒ๐—ฟ ๐—ฟ๐—ฒ๐—ฎ๐—ฑ๐—ถ๐—ป๐—ด:

Kortenkamp, D., Simmons, R., Brugali, D. (2016). Robotic Systems Architectures and Programming. In: Siciliano, B., Khatib, O. (eds) Springer Handbook of Robotics. Springer Handbooks. Springer

Contributing Editor Women in AI & Robotics core team volunteer Julia Nitsch.

44 views0 comments

Recent Posts

See All


bottom of page