- ES Español

- EN English

2.1. Artificial Intelligence (AI)
Artificial intelligence (AI) studies problems that are difficult or impractical to solve with traditional algorithmic approaches. These problems are often reminiscent of those considered to require human intelligence, and the resulting AI solution strategies typically generalize over classes of problems. AI techniques are now pervasive in computing, supporting everyday applications such as email, social media, photography, financial markets, and intelligent virtual assistants (e.g., Siri, Alexa). These techniques are also used in the design and analysis of autonomous agents that perceive their environment and interact rationally with it, such as self-driving vehicles and other robots.
Traditionally, AI has included a mix of symbolic and subsymbolic approaches. The solutions it provides rely on a broad set of general and specialized knowledge representation schemes, problem solving mechanisms, and optimization techniques. These approaches deal with perception (e.g., speech recognition, natural language understanding, computer vision), problem solving (e.g., search, planning, optimization), generation (e.g., narrative, conversation, images, models, recommendations), acting (e.g., robotics, task-automation, control), and the architectures needed to support them (e.g., single agents, multi-agent systems). Machine learning may be used within each of these aspects and can even be employed end-to-end across all of them. The study of Artificial Intelligence prepares students to determine when an AI approach is appropriate for a given problem, identify appropriate representations and reasoning mechanisms, implement them, and evaluate them with respect to both performance and their broader societal impact.
Over the past decade, the term "artificial intelligence" has become commonplace within businesses, news articles, and everyday conversation, driven largely by a series of high-impact machine learning applications. These advances were made possible by the widespread availability of large datasets, increased computational power, and algorithmic improvements. In particular, there has been a shift from engineered representations to representations learned automatically through optimization over large datasets. The resulting advances have put such terms as "neural networks" and "deep learning" into everyday vernacular. Businesses now advertise AI-based solutions as value-additions to their services, so that "artificial intelligence" is now both a technical term and a marketing buzzword. Other disciplines, such as biology, art, architecture, and finance, increasingly use AI techniques to solve problems within their disciplines.
For the first time in our history, the broader population has access to sophisticated AI-driven tools, including tools to generate essays or poems from a prompt, artwork from a description, and fake photographs or videos depicting real people. AI technology is now in widespread use in stock trading, curating our news and social media feeds, automated evaluation of job applicants, detection of medical conditions, and influencing prison sentencing through recidivism prediction. Consequently, AI technology can have significant societal impacts and ethical considerations that must be understood and considered when developing and applying it.
2.1.1. AI/Introduction to AI: Concepts and Intelligent Behavior (CS Core: 2 hrs, KA Core: 1 hr) ↑ Back to top
Topics:
Core
- Overview of AI problems, Examples of successful recent AI applications
- Definitions of agents with examples (e.g., reactive, deliberative)
- What is intelligent behavior?:
- The Turing test and its flaws
- Multimodal input and output
- Simulation of intelligent behavior
- Rational versus non-rational reasoning enumerate
- Overview of AI Applications, growth, and impact (economic, societal, ethics)
Non Core
- Philosophical issues
- History of AI
Learning Outcomes:
Core:
- Describe the Turing test and the "Chinese Room" thought experiment [Explain]
- Differentiate between optimal reasoning/behavior and human-like reasoning/behavior [Evaluate]
- Differentiate the terms: AI, machine learning, and deep learning [Explain]
2.1.2. AI/Problem Characteristics and Agent Nature (CS Core: 1 hr, KA Core: 1 hr) ↑ Back to top
Topics:
Core
- Problem characteristics:
- Fully versus partially observable
- Single versus multi-agent
- Deterministic versus stochastic
- Static versus dynamic
- Discrete versus continuous enumerate
- Nature of agents:
- Autonomous, semi-autonomous, mixed-initiative autonomy
- Reflexive, goal-based, and utility-based
- Decision making under uncertainty and with incomplete information
- The importance of perception and environmental interactions
- Learning-based agents
- Embodied agents:
- sensors, dynamics, effectors enumerate enumerate
- Practice identifying problem characteristics in example environments
- Additional depth on nature of agents with examples
- Additional depth on AI Applications, Growth, and Impact (economic, societal, ethics, security)
Learning Outcomes:
Core:
- Enumerate the characteristics of a specific problem [Apply]
2.1.3. AI/State and Uninformed Search (CS Core: 1 hr, KA Core: 2 hrs) ↑ Back to top
Topics:
Core
- State space representation of a problem:
- Specifying states, goals, and operators
- Factoring states into representations (hypothesis spaces)
- Problem solving by graph search:
- e.g., Graphs as a space, and tree traversals as exploration of that space
- Dynamic construction of the graph (not given upfront) enumerate enumerate
- Uninformed graph search for problem solving:
- Breadth-first search
- Depth-first search:
- With iterative deepening enumerate
- Uniform cost search enumerate
- Space and time complexities of graph search algorithms
- Bidirectional search
Non Core
- Understanding the search space:
- Constructing search trees
- Dynamic search spaces
- Combinatorial explosion of search space
- Search space topology (e.g., ridges, saddle points, local minima) enumerate
Learning Outcomes:
Core:
- Design the state space representation for a puzzle (e.g., N-queens or 3-jug problem) [Apply]
- Select and implement an appropriate uninformed search algorithm for a problem (e.g., tic-tac-toe), and characterize its time and space complexities [Apply]
2.1.4. AI/Heuristic Search and CSP (CS Core: 1 hr, KA Core: 2 hrs) ↑ Back to top
Topics:
Core
- Heuristic graph search for problem solving:
- Heuristic construction and admissibility
- Hill-climbing
- Local minima and the search landscape:
- Local vs global solutions enumerate
- Greedy best-first search
- A* search enumerate
- Beam search
- Implementation of A* search
- Constraint satisfaction
Non Core
- Variations on A* (IDA*, SMA*, RBFS)
Learning Outcomes:
Core:
- Select and implement an appropriate informed search algorithm for a problem after designing a helpful heuristic function (e.g., a robot navigating a 2D gridworld) [Apply]
- Evaluate whether a heuristic for a given problem is admissible/can guarantee an optimal solution [Evaluate]
- Design and implement A*/beam search to solve a problem, and compare it against other search algorithms in terms of the solution cost, number of nodes expanded, etc [Apply]
- Compare and contrast various heuristic searches vis-a-vis applicability to a given problem [Evaluate]
- Model a logic or Sudoku puzzle as a constraint satisfaction problem, solve it with backtrack search, and determine how much arc consistency can reduce the search space [Apply]
2.1.5. AI/Adversarial Search and Stochastic Optimization (CS Core: 1 hr, KA Core: 3 hrs) ↑ Back to top
Topics:
Core
- Two-player adversarial games:
- Minimax search
- Alpha-beta pruning:
- Ply cutoff enumerate enumerate
Non Core
- Local search
- Tabu search
- Two-player adversarial games:
- The horizon effect
- Opening playbooks/endgame solutions
- What it means to "solve" a game (e.g., checkers) enumerate
- Implementation of minimax search, beam search
- Expectimax search (MDP-solving) and chance nodes
- Stochastic search:
- Simulated annealing
- Genetic algorithms
- Monte-Carlo tree search enumerate
Learning Outcomes:
Core:
- Apply minimax search in a two-player adversarial game (e.g., connect four), using heuristic evaluation at a particular depth to compute the scores to back up [Apply]
- Apply minimax search with alpha-beta pruning to prune search space in a two-player adversarial game (e.g., connect four) [Apply]
- Compare and contrast genetic algorithms with classic search techniques, explaining when it is most appropriate to use a genetic algorithm to learn a model versus other forms of optimization (e.g., gradient descent) [Evaluate]
NonCore:
- Design and implement a genetic algorithm solution to a problem [Apply]
- Design and implement a simulated annealing schedule to avoid local minima in a problem [Apply]
2.1.6. AI/Knowledge Representation and Probabilistic Reasoning Foundations (CS Core: 1 hr, KA Core: 1 hr) ↑ Back to top
Topics:
Core
- Types of representations:
- Symbolic, logical:
- Creating a representation from a natural language problem statement enumerate
- Learned subsymbolic representations
- Graphical models (e.g., naive Bayes, Bayesian network) enumerate
- Review of probabilistic reasoning, Bayes theorem
- Bayesian reasoning:
- Bayesian inference enumerate
- Random variables and probability distributions:
- Axioms of probability
- Probabilistic inference
- Bayes' Rule (derivation)
- Bayesian inference (more complex examples) enumerate
Learning Outcomes:
Core:
- Given a natural language problem statement, encode it as a symbolic or logical representation [Apply]
- Compute a probabilistic inference in a real-world problem using Bayes' theorem to determine the probability of a hypothesis given evidence [Apply]
- Apply Bayes' rule to determine the probability of a hypothesis given evidence [Apply]
- Compute the probability of outcomes and test whether outcomes are independent [Apply]
2.1.7. AI/Independence, Markov Models and Decision Making (CS Core: 1 hr, KA Core: 1 hr) ↑ Back to top
Topics:
Core
- Independence
- Conditional Independence
- Markov chains and Markov models
- Utility and decision making
Learning Outcomes:
Core:
- Explain how we can make decisions under uncertainty, using concepts such as Bayes theorem and utility [Explain]
2.1.8. AI/Machine Learning Fundamentals (CS Core: 1 hr, KA Core: 2 hrs) ↑ Back to top
Topics:
Core
- Definition and examples of a broad variety of machine learning tasks:
- Supervised learning:
- Classification
- Regression enumerate
- Reinforcement learning
- Unsupervised learning:
- Clustering enumerate enumerate
- Fundamental ideas:
- No free lunch theorem: no one learner can solve all problems; representational design decisions have consequences.
- Sources of error and undecidability in machine learning enumerate
- A simple statistical-based supervised learning such as linear regression or decision trees:
- Focus on how they work without going into mathematical or optimization details; enough to understand and use existing implementations correctly enumerate
- The overfitting problem/controlling solution complexity (regularization, pruning - intuition only):
- The bias (underfitting) - variance (overfitting) tradeoff enumerate
Learning Outcomes:
Core:
- Describe the differences among the three main styles of learning (supervised, reinforcement, and unsupervised) and determine which is appropriate to a particular problem domain [Explain]
- Differentiate the terms of AI, machine learning, and deep learning [Evaluate]
- Frame an application as a classification problem, including the available input features and output to be predicted (e.g., identifying alphabetic characters from pixel grid input) [Apply]
- Identify overfitting in the context of a problem and learning curves and describe solutions to overfitting [Evaluate]
- Explain how machine learning works as an optimization/search process [Explain]
2.1.9. AI/Machine Learning Data, Representations and Evaluation (CS Core: 1 hr, KA Core: 2 hrs) ↑ Back to top
Topics:
Core
- Working with Data:
- Data preprocessing:
- Importance and pitfalls of preprocessing choices enumerate
- Handling missing values (imputing, flag-as-missing):
- Implications of imputing vs flag-as-missing enumerate
- Encoding categorical variables, encoding real-valued data
- Normalization/standardization
- Emphasis on real data, not textbook examples enumerate
- Representations:
- Hypothesis spaces and complexity
- Simple basis feature expansion, such as squaring univariate features
- Learned feature representations enumerate
- Machine learning evaluation:
- Separation of train, validation, and test sets
- Performance metrics for classifiers
- Estimation of test performance on held-out data
- Tuning the parameters of a machine learning model with a validation set
- Importance of understanding what a model is doing, where its pitfalls/shortcomings are, and the implications of its decisions enumerate
Learning Outcomes:
Core:
- Apply two or more simple statistical learning algorithms to a classification task and measure the classifiers' accuracy [Apply]
- Implement a statistical learning algorithm and the corresponding optimization process to train the classifier and obtain a prediction on new data [Apply]
- Explain proper ML evaluation procedures, including the differences between training and testing performance, and what can go wrong with the evaluation process leading to inaccurate reporting of ML performance [Explain]
- Compare two machine learning algorithms on a dataset, implementing the data preprocessing and evaluation methodology (e.g., metrics and handling of train/test splits) from scratch [Apply]
2.1.10. AI/Neural Networks and Ethics (CS Core: 1 hr, KA Core: 1 hr) ↑ Back to top
Topics:
Core
- Basic neural networks:
- Fundamentals of understanding how neural networks work and their training process, without details of the calculations
- Basic introduction to generative neural networks (e.g., large language models) enumerate
- Ethics for Machine Learning:
- Focus on real data, real scenarios, and case studies
- Dataset/algorithmic/evaluation bias and unintended consequences enumerate
Learning Outcomes:
Core:
- Describe the neural network training process and resulting learned representations [Explain]
2.1.11. AI/Machine Learning Formulation and Evaluation (CS Core: 1 hr, KA Core: 2 hrs) ↑ Back to top
Topics:
Core
- Formulation of simple machine learning as an optimization problem, such as least squares linear regression or logistic regression:
- Objective function
- Gradient descent
- Regularization to avoid overfitting (mathematical formulation) enumerate
- Ensembles of models:
- Simple weighted majority combination enumerate
- Performance evaluation:
- Other metrics for classification (e.g., error, precision, recall)
- Performance metrics for regressors
- Confusion matrix
- Cross-validation:
- Parameter tuning (grid/random search, via cross-validation) enumerate enumerate
Learning Outcomes:
Core:
- Compare and contrast several learning techniques (e.g., decision trees, logistic regression, naive Bayes, neural networks, and belief networks), providing examples of when each strategy is superior [Compare]
- Evaluate the performance of a simple learning system on a real-world dataset [Evaluate]
NonCore:
- Characterize the state of the art in learning theory, including its achievements and shortcomings [Explain]
- Explain the problem of overfitting, along with techniques for detecting and managing the problem [Explain]
- Explain the triple tradeoff among the size of a hypothesis space, the size of the training set, and performance accuracy [Explain]
2.1.12. AI/Deep Learning, RL and Ethics (CS Core: 1 hr, KA Core: 2 hrs) ↑ Back to top
Topics:
Core
- Deep learning:
- Deep feed-forward networks (intuition only, no mathematics)
- Convolutional neural networks (intuition only, no mathematics)
- Visualization of learned feature representations from deep nets
- Other architectures (generative NN, recurrent NN, transformers, etc.) enumerate
- Overview of reinforcement learning methods
- Two or more applications of machine learning algorithms:
- E.g., medicine and health, economics, vision, natural language, robotics, game play enumerate
- Ethics for Machine Learning:
- Continued focus on real data, real scenarios, and case studies
- Privacy
- Fairness
- Intellectual property
- Explainability enumerate
Learning Outcomes:
Core:
- Visualize the training progress of a neural network through learning curves in a well-established toolkit (e.g., TensorBoard) and visualize the learned features of the network [Apply]
NonCore:
- Given a real-world application of machine learning, describe ethical issues regarding the choices of data, preprocessing steps, algorithm selection, and visualization/presentation of results [Apply]
2.1.13. AI/AI Applications and Societal Impact (CS Core: 2 hrs, KA Core: 2 hrs) ↑ Back to top
Topics:
Core
- At least one application of AI to a specific problem and field, such as medicine, health, sustainability, social media, economics, education, robotics, etc. (choose at least one for the CS Core):
- Formulating and evaluating a specific application as an AI problem:
- How to deal with underspecified or ill-posed problems enumerate
- Data availability/scarcity and cleanliness:
- Basic data cleaning and preprocessing
- Data set bias enumerate
- Algorithmic bias
- Evaluation bias
- Assessment of societal implications of the application enumerate
- Deployed deep generative models:
- High-level overview of deep image generative models (e.g., as of 2023, DALL-E, Midjourney, Stable Diffusion, etc.), their uses, and their shortcomings/pitfalls.
- High-level overview of large language models (e.g., as of 2023, ChatGPT, Bard, etc.), their uses, and their shortcomings/pitfalls. enumerate
- Overview of societal impact of AI:
- Ethics
- Fairness
- Trust/explainability
- Privacy and usage of training data
- Human autonomy and oversight/regulations/legal requirements
- Sustainability enumerate
Learning Outcomes:
Core:
- Given a real-world application domain and problem, formulate an AI solution to it, identifying proper data/input, preprocessing, representations, AI techniques, and evaluation metrics/methodology [Apply]
2.1.14. AI/Additional AI Applications and Societal Impact (CS Core: 2 hrs, KA Core: 2 hrs) ↑ Back to top
Topics:
Core
- One or more additional applications of AI to a broad set of problems and diverse fields, such as medicine, health, sustainability, social media, economics, education, robotics, etc. (choose a different area from that chosen for the CS Core):
- Formulating and evaluating a specific application as an AI problem:
- How to deal with underspecified or ill-posed problems enumerate
- Data availability/scarcity and cleanliness:
- Basic data cleaning and preprocessing
- Data set bias enumerate
- Algorithmic bias
- Evaluation bias
- Assessment of societal implications of the application enumerate
- Additional depth on deployed deep generative models:
- Introduction to how deep image generative models work, (e.g., as of 2023, DALL-E, Midjourney, Stable Diffusion) including discussion of attention
- Introduction to how large language models work, (e.g., as of 2023, ChatGPT, Bard) including discussion of attention
- Idea of foundational models, how to use them, and the benefits/issues with training them from big data enumerate
- Analysis and discussion of the societal impact of AI:
- Ethics
- Fairness
- Trust/explainability
- Privacy and usage of training data
- Human autonomy and oversight/regulations/legal requirements
- Sustainability enumerate
Learning Outcomes:
Core:
- Analyze the societal impact of one or more specific real-world AI applications, identifying issues regarding ethics, fairness, bias, trust, and explainability [Evaluate]
- Describe some of the failure modes of current deep generative models for language or images, and how this could affect their use in an application [Describe]
2.1.15. AI/Logical Representation and Reasoning ↑ Back to top
Topics:
Non Core
- Review of propositional and predicate logic
- Resolution and theorem proving (propositional logic only):
- Forward chaining, backward chaining enumerate
- Knowledge representation issues:
- Description logics
- Ontology engineering enumerate
- Semantic web
- Non-monotonic reasoning (e.g., non-classical logics, default reasoning)
- Argumentation
- Reasoning about action and change (e.g., situation and event calculus)
- Temporal and spatial reasoning
- Logic programming:
- Prolog, Answer Set Programming enumerate
- Rule-based Expert Systems
- Semantic networks
- Model-based and Case-based reasoning
Learning Outcomes:
NonCore:
- Translate a natural language (e.g., English) sentence into a predicate logic statement [Apply]
- Convert a logic statement into causal form [Apply]
- Apply resolution to a set of logic statements to answer a query [Apply]
- Compare and contrast the most common models used for structured knowledge representation, highlighting their strengths and weaknesses [Evaluate]
- Identify the components of non-monotonic reasoning and its usefulness as a representational mechanism for belief systems [Evaluate]
- Compare and contrast the basic techniques for representing uncertainty [Evaluate]
- Compare and contrast the basic techniques for qualitative representation [Evaluate]
- Apply situation and event calculus to problems of action and change [Apply]
- Explain the distinction between temporal and spatial reasoning, and how they interrelate [Explain]
- Explain the difference between rule-based, case-based, and model-based reasoning techniques [Explain]
- Define the concept of a planning system and how it differs from classical search techniques [Define]
- Describe the differences between planning as search, operator-based planning, and propositional planning, providing examples of domains where each is most applicable [Describe]
- Explain the distinction between monotonic and non-monotonic inference [Explain]
2.1.16. AI/Probabilistic Representation and Reasoning ↑ Back to top
Topics:
Non Core
- Conditional Independence review
- Knowledge representations:
- Bayesian Networks:
- Exact inference and its complexity
- Markov blankets and d-separation
- Randomized sampling (Monte Carlo) methods (e.g., Gibbs sampling) enumerate
- Markov Networks
- Relational probability models
- Hidden Markov Models enumerate
- Decision Theory:
- Preferences and utility functions
- Maximizing expected utility
- Game theory enumerate
Learning Outcomes:
NonCore:
- Compute the probability of a hypothesis given the evidence in a Bayesian network [Apply]
- Explain how conditional independence assertions allow for greater efficiency of probabilistic systems [Explain]
- Identify examples of knowledge representations for reasoning under uncertainty [List]
- State the complexity of exact inference. Identify methods for approximate inference [State]
- Design and implement at least one knowledge representation for reasoning under uncertainty [Apply]
- Describe the complexities of temporal probabilistic reasoning [Describe]
- Design and implement an HMM as one example of a temporal probabilistic system [Apply]
- Describe the relationship between preferences and utility functions [Describe]
- Explain how utility functions and probabilistic reasoning can be combined to make rational decisions [Explain]
2.1.17. AI/Planning ↑ Back to top
Topics:
Non Core
- Review of propositional and first-order logic
- Planning operators and state representations
- Total order planning
- Partial-order planning
- Plan graphs and GraphPlan
- Hierarchical planning
- Planning languages and representations:
- PDDL enumerate
- Multi-agent planning
- MDP-based planning
- Interconnecting planning, execution, and dynamic replanning:
- Conditional planning
- Continuous planning
- Probabilistic planning enumerate
Learning Outcomes:
NonCore:
- Construct the state representation, goal, and operators for a given planning problem [Apply]
- Encode a planning problem in PDDL and use a planner to solve it [Apply]
- Given a set of operators, initial state, and goal state, draw the partial-order planning graph and include ordering constraints to resolve all conflicts [Apply]
- Construct the complete planning graph for GraphPlan to solve a given problem [Apply]
2.1.18. AI/Agents and Cognitive Systems ↑ Back to top
Topics:
Non Core
- Agent architectures (e.g., reactive, layered, cognitive)
- Agent theory (including mathematical formalisms)
- Rationality, Game Theory:
- Decision-theoretic agents
- Markov decision processes (MDP)
- Bandit algorithms enumerate
- Software agents, personal assistants, and information access:
- Collaborative agents
- Information-gathering agents
- Believable agents (synthetic characters, modeling emotions in agents) enumerate
- Learning agents
- Cognitive systems:
- Cognitive architectures (e.g., ACT-R, SOAR, ICARUS, FORR)
- Capabilities (e.g., perception, decision making, prediction, knowledge maintenance)
- Knowledge representation, organization, utilization, acquisition, and refinement
- Applications and evaluation of cognitive systems enumerate
- Multi-agent systems:
- Collaborating agents
- Agent teams
- Competitive agents (e.g., auctions, voting)
- Swarm systems and biologically inspired models
- Multi-agent learning enumerate
- Human-agent interaction:
- Communication methodologies (verbal and non-verbal)
- Practical issues
- Applications:
- Trading agents, supply chain management
- Ethical issues of AI interactions with humans
- Regulation and legal requirements of AI systems for interacting with humans enumerate enumerate
Learning Outcomes:
NonCore:
- Characterize and contrast the standard agent architectures [Evaluate]
- Describe the applications of agent theory to domains such as software agents, personal assistants, and believable agents, and discuss associated ethical implications [Describe]
- Describe the primary paradigms used by learning agents [Describe]
- Demonstrate using appropriate examples how multi-agent systems support agent interaction [Demonstrate]
- Construct an intelligent agent using a well-established cognitive architecture (ACT-R, SOAR) for solving a specific problem [Apply]
2.1.19. AI/Natural Language Processing ↑ Back to top
Topics:
Non Core
- Deterministic and stochastic grammars
- Parsing algorithms:
- CFGs and chart parsers (e.g., CYK)
- Probabilistic CFGs and weighted CYK enumerate
- Representing meaning/Semantics:
- Logic-based knowledge representations
- Semantic roles
- Temporal representations
- Beliefs, desires, and intentions enumerate
- Corpus-based methods
- N-grams and HMMs
- Smoothing and backoff
- Examples of use: POS tagging and morphology
- Information retrieval:
- Vector space model:
- TF & IDF enumerate
- Precision and recall enumerate
- Information extraction
- Language translation
- Text classification, categorization:
- Bag of words model enumerate
- Deep learning for NLP:
- RNNs
- Transformers
- Multi-modal embeddings (e.g., images + text)
- Generative language models enumerate
Learning Outcomes:
NonCore:
- Define and contrast deterministic and stochastic grammars, providing examples to show the adequacy of each [Define]
- Simulate, apply, or implement classic and stochastic algorithms for parsing natural language [Apply]
- Identify the challenges of representing meaning [Analyze]
- List the advantages of using standard corpora. Identify examples of current corpora for a variety of NLP tasks [List]
- Identify techniques for information retrieval, language translation, and text classification [Analyze]
- Implement a TF/IDF transform, use it to extract features from a corpus, and train an off-the-shelf machine learning algorithm using those features to do text classification [Apply]
2.1.20. AI/Robotics ↑ Back to top
Topics:
Non Core
- Overview: problems and progress:
- State-of-the-art robot systems, including their sensors and an overview of their sensor processing
- Robot control architectures, e.g., deliberative vs reactive control and Braitenberg vehicles
- World modeling and world models
- Inherent uncertainty in sensing and in control enumerate
- Sensors and effectors:
- Sensors: e.g., LIDAR, sonar, vision, depth, stereoscopic, event cameras, microphones, haptics
- Effectors: e.g., wheels, arms, grippers enumerate
- Coordinate frames, translation, and rotation (2D and 3D)
- Configuration space and environmental maps
- Interpreting uncertain sensor data
- Localization and mapping
- Navigation and control
- Forward and inverse kinematics
- Motion path planning and trajectory optimization
- Manipulation and grasping
- Joint control and dynamics
- Vision-based control
- Multiple-robot coordination and collaboration
- Human-robot interaction:
- Shared workspaces
- Human-robot teaming and physical HRI
- Social assistive robots
- Motion/task/goal prediction
- Collaboration and communication (explicit vs implicit, verbal or symbolic vs non-verbal or visual)
- Trust enumerate
- Applications and Societal, Economic, and Ethical Issues:
- Societal, economic, right-to-work implications
- Ethical and privacy implications of robotic applications
- Liability in autonomous robotics
- Autonomous weapons and ethics
- Human oversight and control enumerate
Learning Outcomes:
NonCore:
- List capabilities and limitations of today's state-of-the-art robot systems, including their sensors and the crucial sensor processing that informs those systems [List]
- Integrate sensors, actuators, and software into a robot designed to undertake a specific task [Apply]
- Program a robot to accomplish simple tasks using deliberative, reactive, and/or hybrid control architectures [Apply]
- Implement fundamental motion planning algorithms within a robot configuration space [Apply]
- Characterize the uncertainties associated with common robot sensors and actuators; articulate strategies for mitigating these uncertainties [Characterize]
- List the differences among robots' representations of their external environment, including their strengths and shortcomings [List]
- Compare and contrast at least three strategies for robot navigation within known and/or unknown environments, including their strengths and shortcomings [Compare]
- Describe at least one approach for coordinating the actions and sensing of several robots to accomplish a single task [Describe]
- Compare and contrast a multi-robot coordination and a human-robot collaboration approach and attribute their differences to differences between the problem settings [Compare]
- Analyze the societal, economic, and ethical issues of a real-world robotics application [Analyze]
2.1.21. AI/Perception and Computer Vision ↑ Back to top
Topics:
Non Core
- Computer vision:
- Image acquisition, representation, processing, and properties
- Shape representation, object recognition, and segmentation
- Motion analysis
- Generative models enumerate
- Audio and speech recognition
- Touch and proprioception
- Other modalities (e.g., olfaction)
- Modularity in recognition
- Approaches to pattern recognition:
- Classification algorithms and measures of classification quality
- Statistical techniques
- Deep learning techniques enumerate
Learning Outcomes:
NonCore:
- Summarize the importance of image and object recognition in AI and indicate several significant applications of this technology [Summarize]
- List at least three image-segmentation approaches, such as thresholding, edge-based and region-based algorithms, along with their defining characteristics, strengths, and weaknesses [List]
- Implement 2d object recognition based on contour-based and/or region-based shape representations [Apply]
- Distinguish the goals of sound-recognition, speech-recognition, and speaker-recognition and identify how the raw audio signal will be handled differently in each of these cases [Distinguish]
- Provide at least two examples of a transformation of a data source from one sensory domain to another, e.g., tactile data interpreted as single-band 2d images [Generate]
- Implement a feature-extraction algorithm on real data, e.g., an edge or corner detector for images or vectors of Fourier coefficients describing a short slice of audio signal [Apply]
- Implement an algorithm combining features into higher-level percepts, e.g., a contour or polygon from visual primitives or phoneme hypotheses from an audio signal [Apply]
- Implement a classification algorithm that segments input percepts into output categories and quantitatively evaluates the resulting classification [Apply]
- Evaluate the performance of the underlying feature-extraction, relative to at least one alternative possible approach (whether implemented or not) in its contribution to the classification task (8), above [Evaluate]
- Describe at least three classification approaches, their prerequisites for applicability, their strengths, and their shortcomings [Describe]
- Implement and evaluate a deep learning solution to problems in computer vision, such as object or scene recognition [Apply]