| CS3243 Foundations of Artificial Intelligence | |
| (Textbook section 25.1, 25.2, 25.3, 25.4, 25.6) |
| Definition | ||
| Hardware | ||
| Sensors | ||
| Effectors | ||
| Electric Motors | ||
| Perception | ||
| Localization | ||
| Motion Planning | ||
| Move | ||
| A robot is a physical agent equipped with sensors and effectors that can perform certain task in the physical world. | ||
| Categories: | ||
| Manipulator: robot arms. | ||
| Mobile: environment navigation. | ||
| Hybrid: mobile + manipulator, e.g. humanoid robot. | ||
| Example: |
| Sensors: perceptual interface between the robot and the environment. | |
| Passive sensor: capture signals generated by other sources in the environment, e.g. a touch sensor. | |
| Active sensor: send energy into the environment and capture the reflected energy. |
| Sensor types | ||
| Range finder: measure distance to other objects in the environment, e. g. light sensor, sonar, GPS. | ||
| Imaging sensor: provides models and features in the environment, using computer vision techniques, e.g. camera. | ||
| Proprioceptive sensors: detects the state of the robot itself, e.g. rotational sensor. | ||
| Effectors: enables a robot to move and perform actions. | |
| Example: | |
| Degree of freedom (DOF): independent direction in which one of the effectors can move. | |
| Example: an AUV has six degrees of freedom: (x, y, z) and three angular orientation. | |
| Kinematic state: set of all the degrees of freedom. |
| Effective DOF vs. Controllable DOF: | |
| A robot is nonholonomic if: | |
| # of effective DOF > # of controllable DOF | |
| A robot is holonomic if: | |
| # of effective DOF = controllable DOF. | |
| Wheels vs. legs | ||
| Wheel-based designs are easier to implement (differential drive or synchro drive). | ||
| Legs can handle more rough terrain, but are mechanically difficult to build. (Dynamic stability and static stability) | ||
| Electric motor | ||
| Most popular mechanism to provides power to drive the effectors. | ||
| Actuating the manipulator and controls locomotion. | ||
| Perception is the process of mapping sensor measurements into internal representations of the environment. | |
| Difficulties: environment is partially observable, unpredictable and dynamic. |
| Bayes Network representation | |
| Where Ai are the actions, Xi are the states and Zi are the observations. | |
| Localization: determine the location of things in the environment. | ||
| Tracking: the initial location of an object is known. | ||
| Global localization: finding a target whose initial location is unknown. | ||
| Kidnapping problem: the target object is “kidnapped” to test the robustness of the robot. | ||
| Workspace: coordinates characterize the full state of the robot. (x, y, z, …) | |
| Configuration space: coordinates characterize the configuration of the robot’s joints. (rotational angles etc.) | |
| Free space: all configurations that the robot is allowed to reach. | |
| Cell-decomposition methods: divide the free space into a finite number of contiguous regions (cells). | ||
| Path planning => graph search. | ||
| Simplest cell decomposition: cell = regular grid. | |
| Problem: too expensive for high-dimensional configuration space. Mixed cells make the method unsound and incomplete. | |
| Solution: subdivision and irregular cells. |
| Potential field: a function defined over the state space, whose value grows with the distance to the closest obstacle. | |
| Minimize the path lengths and stay away from the obstacles by following the smallest values. | |
| Problem: local minimum |
| Skeletonization methods: reduce the free space to a one-dimensional representation. | |
| Voronoi graph: contains points that are equidistant to neighboring obstacles. | |
| Probabilistic roadmap: randomly generate candidates in the free space and link them. |
| Example: |
| Dynamic state: extends the kinematic state of a robot by modeling the velocities, which is more complex. | |
| In real-life, a simple kinematic path planner is used together with a controller to keep the robot on track. |
| Reference controller: keep the robot on a preplanned path. | |
| Optimal controller: optimize a global cost function, such as the potential field function. | |
| Reactive controller: reflex design that makes decision based on feedbacks. |