Incorporating Kinodynamic Constraints in Automated Design of Simple Machines Can Erdogan, Mike Stilman Abstract— Robots are inherently limited by constraints on their motor power, battery life, and structural rigidity. Using simple machines and exploiting their mechanical advantage can significantly increase the breadth of a robot’s capabilities. In this work, we present an autonomous planner which allows a robot to determine how arbitrary rigid objects in its environ- ment can be utilized in machine designs to overcome physical challenges. First, the designed structure must be sufficient to achieve a task given the input force and torque that can be applied by the robot. Second, the structure must be accessible to the robot given its kinematics and geometry so that it can actually be used to perform the task. The output of our algorithm is the configuration of the design components, the pose of the robot to make contact with the design, and the motor torques needed to actuate it. We demonstrate results with the robot Golem Krang, using levers as simple machines, to overturn 100 kg load and to push 240 kg wheeled obstacle. I. I NTRODUCTION A robot can exert a limited force to its environment due to constraints on its motor torques, battery power and structural rigidity. However, a variety of tasks require going beyond the physical limitations of oneself by using the available tools at the time. Pushing, raising, and overturning heavy objects are common examples of such tasks in construction and debris removal fields (i.e. search and rescue tasks). People mostly turn to simple machines such as levers, pulleys and wrenches at such times where the work can be accomplished by applying less force over a longer distance and time. For robots to take part in our daily lives, they need to recognize and adopt the use of simple machines as means to interact with the world. In designing simple machines for a robot, a planner needs to consider both kinematic constraints, such as the arm length in reaching out for objects, and dy- namic constraints, such as the maximum force the robot can apply while keeping its stability. The incorporation of such kinodynamic constraints in the purposeful manipulation of the environment is a significant leap towards full autonomy. The design of a simple machine involves discrete choices for which objects to use and continuous choices for the placement of the objects in the design. Given a set of available objects, our goal is to find a subset for which there is a feasible assignment of configurations that satisfy geometric, dynamic and kinodynamic constraints. The geo- metric constraints express the contact rules (i.e. lever placed on fulcrum) while the dynamic constraints address force interactions (i.e. lever exerting force to the load). Lastly, the kinodynamic constraints ensure that the system can be driven into action with the physical limitations of the robot [1]. In this work, we present an autonomous planner that chooses which objects to use in the design and configures Fig. 1. Golem Krang using 1.7 m and 2.5 m sticks to overturn 50 kg and 100 kg objects respectively with fulcrum repositioned for reachability them such that they satisfy the constraints of the domain through optimization. The key idea we build upon is to represent the three types of design constraints as generic non- linear equality and inequality functions within a constraint optimization framework. Then, the set of configurations that satisfy all the constraints, that is a global minimum with zero error, is considered a feasible design. However, if the global minimum of the system is nonzero for the chosen objects, e.g. the lever is not long enough, other object choices are evaluated until all the options are exhausted. Within this framework, an autonomous planner can search for a design with a large continuous configuration space that is constrained by highly nonlinear functions that represent the domain constraints. Moreover, the representation of domain knowledge as a set of generic constraint functions allows simpler expressions of complex problems such as the manip- ulation of a heavy load through applying a force to a lever that sits on a fulcrum. Figure 1 demonstrates the output of the proposed planner for two overturning scenarios where the weight of the load is 50 kg and 100 kg respectively. The robot Golem Krang, designed in Humanoid Robotics