Introduction of robotics
This course presents an overview of robotics in practice and research with topics including vision, motion planning, mobile mechanisms, kinematics, inverse kinematics, and sensors.
In course projects, students construct robots which are driven by a microelectronic, with each project reinforcing the basic principles developed in lectures. Students usually work in teams of three: an electrical engineer, a mechanical engineer, and a computer scientist. Groups are typically self-formed except for the first lab.
This course will also expose students to some of the contemporary happenings in robotics, including current robotics research, applications, robot contests and robot web surfing.
Who should take this class:
Juniors, seniors, and advanced sophomores interested in robotics. Familiarity with programming and basic calculus is required. Students should also know or plan to learn the Students in the class should know (or will know) how to use the following:
Make basic web pages
Unix (run and compile code in Linux, basic shell operations)
AFS (be able to set permissions on AFS accounts, upload code, etc.)
Programming in C
- Compiling programs with gcc
- Variables types and casting
- Printing information using printf
- Writing information to a file
- Reading information using scanf
- Conditionals (if statement)
- Loops (while, do-while, for)
- Functions and parameters
- Arrays, Multi-dimensional arrays
Irobotics workshop mainly focuses on the students eager to learn Robotics from Basic. They will get the chance to expand their knowledge in the field of designing, construction, operation, and application of Robot with real time hand on practical experience.
The duration of this workshop will be two consecutive days with eight hours session each day, in a total of sixteen hours properly divided into theory and hand on practical sessions. At the end of this workshop a competition will be organized among the participating students where each participating student will get Certificate of Participation and the Winners will get Certificate of Merit.
Workshop Level : Intermediate Level
Best Suited for : All B.Tech/B.E./BCA/BSc. Students
Project to be Covered
- Black Line Follower
- White Line Follower
- Intelligent Line Follower
- Edge Avoider Robot
- Wall Follower Robot
- Light Searching Robot
- Photophobic Robot
- Phototropic Robot
- Sound Operated Robot (Optional)
planning & execution
Planning is ubiquitous in everyday life — from planning how to make dinner to planning how to graduate from University with the least amount of work. Researchers in AI have studied planning problems for many years, and many techniques exist for automating planning processes.
This course will explore both classical and modern approaches to planning. Issues to be discussed include: how to represent actions and world state, how to search for plans efficiently, how to deal with uncertainty in actions and the world state, how to represent time, and how to dynamically combine planning and execution.
Specific planning techniques to be covered include: means-ends analysis, linear and non-linear planning, partial-order planning, heuristic planning, GraphPlan, SatPlan, OBBD-based planning, hierarchical planning, conditional planning, probabilistic planning and learning using Markov models (MDPs and POMDPs), integration of planning, perception and execution, execution monitoring and replanning, and robot (geometric) planning.
There are no explicit prerequisites, but a basic knowledge of AI is assumed
- Planning in Deterministic Domains
- Representation and search
- Classical planning algorithms: Linear, Non-linear, Partial Order Planning
- Recent planning algorithms: GraphPlan, SATPlan, OBBD-base planning
- Hierarchical and abstraction planning
- Planning under Uncertainty
- Representation and search
- Conditional planning
- Probabilistic planning with Markov Models (MDPs and POMDPs)
- Planning and learning
- Plan Execution
- Reactive planning
- Execution architectures
- Execution Monitoring
- Replanning (Case-based, transformational)
- Planning, execution and learning
- Robot Planning
- Path planning
- Sensor-based planning
- Multi-agent coordination
This course surveys perception, cognition, and movement in humans, humanoid robots, and humanoid graphical characters. Application areas include more human-like robots, videogame characters, and interactive movie characters.
- Kinematics: forward and inverse kinematics (rotation, how to automatically generate forward kinematics (mathematica), how to use optimization to solve inverse kinematics (matlab))
- Trajectory formation in humans and robots (splines, minimum jerk)
- Dynamics and simulation (how to automatically generate inverse dynamics equations (mathematica), forward dynamics, numerical integration, ODE, sdfast, …)
- Control (springs, dampers, PD control, integral control, LQR regulation (matlab))
- Actuators: Muscles and motors, equilibrium position
- Planning (A*, RRT)
- Legged locomotion: walking and running (PDW, ZMP, foot placement)
- Manipulation and hand control
- Learning, including imitation learning, reinforcement learning, supervised learning (kin + dyn), function approximation, neural nets, LWR, policy search, DP, Q learning, imitation learning as RL,
- Hearing, Speech production and recognition
- Tactile sensing, proprioception
- Taste and smell?
- Human-robot interaction
- Cognition, Reasoning, Making Decisions
- Humanoids in literature
- Philosophical and ethical issues
Goals of the course:
- Introduce students to the wide range of research involved in humanoids.
- Get students interested and involved in humanoids research.
- Have fun.
No formal prerequisites. Knowing a programming language such as C, Java, or Matlab will be useful. Knowing what a vector and matrix are is useful.
No textbooks. Readings will be made available electronically.
The course will start with a series of assignments that everyone does, and then you will do a longer term project. There will be no exams. Your grade will be based on assignments and your project.
There will be more doing than reading in this course. Some homeworks will consist of working with the elements of a humanoid simulator, similar to programming a videogame. We are still working out the details of the homeworks.