Artificial Intelligence (AI)
The capability of a machine to imitate intelligent human behavior. NOT all artificial intelligence is machine learning.
Found in Lecture ML Part 1 - Machine Learning
Machine Learning
Giving computers the ability to learn without being explicitly programmed. All machine learning is artificial intelligence.
Found in Lecture ML Part 1 - Machine Learning
Deep Learning
Creating machine learning models using deep neural networks.
Found in Lecture ML Part 1 - Machine Learning
Supervised Learning
Teach the machine by providing examples (with labels). Provide examples to the machine and then let the machine learn a model that represents the examples. Then use the model to predict values for data that are unknown. Found in Lecture ML Part 1 - Machine Learning
Unsupervised Learning
Try to recognize patterns in the data without any examples (no labels). Provide features to the machine and then let the machine determine the patterns that exist in the data. Found in Lecture ML Part 1 - Machine Learning
Reinforcement Learning
Perform an action then learn based on a reward or punishment.
Reinforcement Learning considers definition of states, a set of possible actions that can be taken, and a reward score. For a given state AND the action the machine takes, it receives a positive or negative reward.
Found in Lecture ML Part 2 - Machine Learning
Exploration vs. Exploitation in Reinforcement Learning
The core idea in reinforcement learning is trying to balance between trying new things and using what you know. In training, a model should have a high exploration factor so it can learn. When deployed, a model should focus on applying the knowledge it learned.
Found in Lecture ML Part 2 - Machine Learning
Exploration factor
Parameter that determines whether you should try something new.
Found in Lecture ML Part 2 - Machine Learning
Exploitation factor
Parameter that determines whether you should use the knowledge you already have.
Found in Lecture ML Part 2 - Machine Learning
Features
The values that describe the data (e.g., x values).
Found in Lecture ML Part 1 - Machine Learning
Label
The value that you are trying to determine (e.g., y-values). Also called the target class.
Found in Lecture ML Part 1 - Machine Learning
Classification
A type of supervised learning. Target class has discrete values (e.g. dog, cat, mouse).
Found in Lecture ML Part 1 - Machine Learning
Regression
A type of supervised learning. Target class has continuous values. Found in Lecture ML Part 1 - Machine Learning
K-Means Clustering
One example of how to do unsupervised learning.
Cluster the dataset into k groups.
Start with k points (centroids)
Determine which cluster a point belongs (closest centroid)
Move centroid to the average of all points in that cluster
Repeat 2&3 until convergence
Found in Lecture ML Part 1 - Machine Learning
Centroid
Center of mass ("average" of the points).
Found in Lecture ML Part 1 - Machine Learning
Neural Networks
A neural network is a network of neurons (analogous to biological neurons in our brains). Neural Network forms the core of every Deep Learning algorithm. These networks are represented as systems of interconnected "neurons", which send messages to each other.
Found in Lecture ML Part 3 - Machine Learning
Neurons
Each neuron has the following: Multiple inputs with a weight for each input, an activation function, and an output
Found in Lecture ML Part 3 - Machine Learning
Value Iteration
Finding the expected eventual reward of being in each state.
Q-Learning
Starts with an unknown set of rewards and learns each value by doing.
Neuron Step-Activation "Algorithm"
Multiply each input by its weight
Sum up all the productsIf the sum is >= the threshold value, output 1
Else, output 0
Training a Neural Network
Start with random weights (or educated guess) and produce an incorrect result
Determine the error relative to correct results
Update the weights to account for the error
Repeat Steps 2 & 3 until the output converges to the correct result
Computer Network
A set of independent computer systems interconnected by communication links for the purpose of sharing information and resources.
Found in lecture Chapter 7 Part 1 - Networks
Node
Individual computer on a network. Range in size from smartphone, tablet, laptop, desktop, to massive supercomputers.
Found in lecture Chapter 7 Part 1 - Networks
Gigabit ethernet
The fastest networking technology for data communication today.
Found in lecture Chapter 7 Part 1 - Networks
Bandwidth
The rate at which information can be sent and received across a network
Found in lecture Chapter 7 Part 2 - Networks and Crash Course Video #28
Dial-up
The slowest networking technology for data communication.
Found in lecture Chapter 7 Part 1 - Networks
PAN
Personal Area Network (typically 30-50 feet for Bluetooth).
Collection of privately owned devices in close proximity to person. e.g. Bluetooth connection from phone to computer
Found in lecture Chapter 7 Part 1 - Networks
LAN
Local Area Network.
Connects devices in close geographic proximity
Found in lecture Chapter 7 Part 1 - Networks
WLAN
Wireless Local Area Network (typically 150-300 feet for WiFi)
Found in lecture Chapter 7 Part 1 - Networks
MAN
Metropolitan area network (typically a few blocks to a city).
Computer network that connects a geographic area or region larger than LAN but smaller than WAN
Found in lecture Chapter 7 Part 1 - Networks
WAN
Wide Area Network.
Computer network that spans large geographic distance.
Found in lecture Chapter 7 Part 1 - Networks
Bus
single shared communication line
There is a theoretical MAX on a bus length due to collision detection scheme.
Found in lecture Chapter 7 Part 2 - Networks
Repeater
a device that simply amplifies and forwards a signal
Found in lecture Chapter 7 Part 2 - Networks
Bridge
a "smarter" device that has knowledge about the nodes on each bus or LAN
Found in lecture Chapter 7 Part 2 - Networks
Switch
Multi-port device that uses packet switching to forward data to appropriate destination
Found in lecture Chapter 7 Part 2 - Networks
Packet
An information block with a fixed maximum size that is transmitted through the Internet as a single unit A packet has a MAX size a long message is broken into multiple packets to transmit
Found in lecture Chapter 7 Part 4 - Networks and Crash Course Video #29
Router
Like a bridge, but can transmit packets between two different types of networks. E.g. Router can send info from a WLAN to a wired Ethernet LAN
Found in lecture Chapter 7 Part 2 - Networks
ISP
Internet Service Provider Both a user's individual computer and a company's private network are connected to the rest of the world through an ISP.
Found in lecture Chapter 7 Part 2 - Networks
Internet
The Internet is not a single computer network; instead, it is a huge interconnected "network of networks" that includes nodes, LANs, MANs, WANs, bridges, routers, and multiple levels of ISPs.
Found in lecture Chapter 7 Part 2 - Networks
WWAN
Wireless Wide Area Network Found in lecture Chapter 7 Part 1 - Networks
LAN Topologies
Bus, Ring, Star Found in lecture Chapter 7 Part 2 - Networks
Ring
connects nodes in a circular fashion (not used much)
Found in lecture Chapter 7 Part 2 - Networks
Star
central node routes info directly to any other node
Found in lecture Chapter 7 Part 2 - Networks
Collision
Occurs when two messages sent at same time
Messages are lost
Found in lecture Chapter 7 Parts 2 and 3 - Networks
Tier 1 Networks
International ISPs (= Internet backbone)
These international ISPs connect with other tier-1 networks
Example: Level 3 Communications provides a Tier-1 network
Found in lecture Chapter 7 Part 2 - Networks
Tier 3 Networks
The last mile providers
Needed to deliver Internet to residential homes and businesses
Found in lecture Chapter 7 Part 2 - Networks
Tier 2 Networks
Connect tier 1 and tier 3
Sometimes tier 2 term used interchangeably with tier 3
Found in lecture Chapter 7 Part 2 - Networks
Internet Society
A nonprofit, nongovernmental, professional society composed of more than 100 worldwide organizations (e.g., foundations, governmental agencies, educational institutions, companies) in 180 countries united by the common goal of maintaining the viability and health of the Internet. For smooth functioning, it's imperative to have a protocol set that everyone agrees to, the Internet Society is responsible for this.
Found in lecture Chapter 7 Part 3 - Networks
TCP/IP
The "common language" of the Internet. Found in lecture Chapter 7 Part 3 - Networks
Internet Protocol Stack layers
TOP
5. Application (Ex: HTTP, SMTP, FTP)
4. Transport (Ex: TCP, UDP)
3. Network (Ex: IP)
2b. Logical Link Control (Ex: PPP, Ethernet)
2a. Medium Access Control (Ex: Ethernet)
1. Physical (Ex: Modem, DSL, Cable modem, WiFi- 4G)
BOTTOM
Found in lecture Chapter 7 Part 3 - Networks
Physical Layer
Goal: Create a "bit pipe" between two computers.
The physical layer does NOT provide an error free communication medium. Need error detection AND correction, which is why we need layer #2!
Found in lecture Chapter 7 Part 3 - Networks
Two main types of communication channels
Cable and broadcast
Found in lecture Chapter 7 Part 3 - Networks
Cable communication line examples
fiber-optic, twisted pair/copper
Found in lecture Chapter 7 Part 3 - Networks
Broadcast communication line examples
satellite, microwave, infrared, radio
Found in lecture Chapter 7 Part 3 - Networks
Data Link Layers (2 sub layers)
Goal: Create an error free "bit pipe"
2a. Medium Access Control Protocol
2b. Logical Link Control Protocol
Found in lecture Chapter 7 Part 3 - Networks
Medium Access Control Protocol
Goal: Provides access to the physical channel.
Determines who sends on a shared communication line when multiple nodes want to send messages at the same time.
Found in lecture Chapter 7 Part 3 - Networks
Logical Link Control Protocol
Goal: Detects and corrects errors.
Its job is to solve the error detection and correction problem (to ensure the packet traveling across the bit pipe arrives correctly).
Found in lecture Chapter 7 Part 3 - Networks
ARQ
Automatic Repeat reQuest
This algorithm is the basis for all Data Link Control protocols that are currently used.
How it works: Sender sends packet
Sender maintains copy of packet
Receiver sends ACK (if packet received correctly)
Sender discards saved packet (if ACK received)
Sender re-sends packet (if no ACK received)
Found in lecture Chapter 7 Part 3 and 4 - Networks
ACK
Acknowledgement
Found in lecture Chapter 7 Part 3 - Networks
ARQ: What happens if packet 2 is lost?
Sender will time out since no ACK has been received ... then re-send packet Found in lecture Chapter 7 Part 4 - Networks
ARQ: What happens if ACK 2 is lost?
Sender will time out, re-send packet (as, again, no ACK received)
ARQ: What happens if receiver gets packet 4 but never saw packet 3?
Receiver sends ACK-4 if packet #4 is received correctly
Eventually sender will see ACK for 3 was NOT received and will resend.
Found in lecture Chapter 7 Part 4 - Networks
Network Layer
Goal: Deliver a message from source to destination.
The network layer in the internet is called the Internet Protocol (IP).
IP is a BEST EFFORT protocol
NO GUARANTEE a given packet will arrive
NO GUARANTEE what order several packets from one msg will arrive.
Found in lecture Chapter 7 Part 4 and 5 - Networks
IP-address
On the internet, nodes identify each other using a 32-bit IP-address. IPv4 has 32 bits (four 8-bit numeric quantities, each in range 0-255 such as http://74.125.224.72/)
Found in lecture Chapter 7 Part 4 - Networks and zyBooks Section 7.2 and Internet History reading
Host names
Host names are WAY easier than IP addresses to use for us humans Ex: google.com
Analogy: we prefer Assembly instead of machine language
Found in lecture Chapter 7 Part 4 - Networks
Port Numbers
Connected to different applications
Transport Layer gets packet to port
Well-known port numbers exist on the Internet e.g. DNS always uses port 53 for its communications
Found in lecture Chapter 7 Part 5 - Networks
DNS
Domain Name System Converts from a symbolic host name to its equivalent IP Address.
Found in lecture Chapter 7 Part 4 - Networks and zyBooks Section 7.2 and 7.4
TCP
Transmission Control Protocol A reliable transport protocol. Creates an error-free delivery service. TCP will also order the packets correctly for the message. TCP uses the same ARQ algorithm as DLL.
Found in lecture Chapter 7 Part 5 - Networks
UDP
User Datagram Protocol
An unreliable transport protocol
Used for quick/fast communication, e.g. streaming audio or video.
Found in lecture Chapter 7 Part 5 - Networks
Why do we need ARQ at both the data link layer AND the transport layer?
Need ARQ at data link layer as physical medium has issues. No sense passing packet to network layer if there are issues in it Also, network layer is BEST effort protocol - Packet could be lost in this layer TCP needs to ensure all packets all arrive
Found in lecture Chapter 7 Part 5 - Networks
DLL fixes ____ issues
physical layer issues
TCP fixes ____ issues
network layer
Application Layer
Goal: Provide rules to offer end-user services
TCP will get messages to the application.
The application then needs to have rules on what to do with those messages.
Found in lecture Chapter 7 Part 5 - Networks
Client/Server Model
In most network protocols, source acts as a client and destination acts as a server HTTP client requests a web page, server responds! IP is connectionless, so packets may NOT follow the same path!
Found in lecture Chapter 7 Part 5 - Networks
URL
Uniform Resource Locator A symbolic string that identifies a webpage.
Found in zyBooks Section 7.8
CSS
Cascading Style Sheets Helps to stylize a webpage with color, sizes, fonts and more
Found in lecture Chapter 7 Part 5 - Networks
Transport Layer
Goal: Create a program-to-program delivery service Get the packet to the program on the computer that is expecting it
Found in lecture Chapter 7 Part 5 - Networks
Top-level Domain
.edu in cs.mines.edu
Found in lecture Chapter 7 Part 3 - Networks and zyBook Section 7.8
Web Crawler
Pre-visits web pages to build an index of words
Found in lecture Chapter 7 Part 3 - Networks and zyBook Section 7.6
Hyperlink
A way to move from one page on the web to another.
Found in lecture Chapter 7 Part 5 - Networks and Crash Course Video #30
Web browser
A program for reading and interpreting websites.
Found in lecture Chapter 7 Part 5 - Networks and Crash Course Video #30
How did early search engines work?
Search results were based on number of times the word appeared on the page.
Found in lecture Chapter 7 Part 5 - Networks and Crash Course Video #30
Augmented Reality
Virtual objects overlaid on a view of the real world
Virtual Reality
The real word is entirely replaced with a virtual environment
Optical See-through
The real-world view is seen directly through a lens or smart glass where virtual objects are rendered
Video See-through
The real world is seen indirectly through a video camera, virtual objects are rendered on the video screen
Image Tags
Calculates 3D distance and orientation based on skewed views of a known image
Inertial Measurement Unit (IMU)
Electronic sensor that can measure 3D movements based on gravity and inertia
Robotics Disciplines
Robotics involves Mechanical Engineering, Electrical Engineering, and Computer Science
Robot
A system that can:
SENSE things about itself or its environment
PLAN what to do based on its goals and sensors
ACT on its goals and affects the environment in some way
Major Robot Subsystems
Power: Making sure all components have enough electrical power
Perception: What a robot can sense and understand about itself and its environment
Decision Making: The step between Perception and Manipulation (the majority of coding goes here!) Deciding what our goal is and how to achieve it
Manipulation: How a robot can move within and interact with objects in the environment
Sensor
perception of the external world and the robot’s internal state
Ex: Cameras, buttons, remotes, distance sensors, accelerometers, GPS
Controller
decision making component, reads sensor’s data and determines actuator’s responses
Ex: microcontrollers, embedded computers
Actuator
Actuators: the manipulation of the robot and its surroundings
Ex: movement, arms, tools, motors, servos, hydraulics
The Three D's
Robots are most commonly for situations or tasks that are:
DULL: Repetitive, predictable, or simple tasks like assembly lines
DIRTY: Sanitation, sewer repair. Used UV robot to sterilize masks for hospital workers!
DANGEROUS: Outer space, underwater, de-mining battlefields, navigating resource mines
Autonomy
The ability of a robot or machine to act without human control or intervention
Autonomy Levels
Level 0 - No Autonomy (Full human control, normal machinery)
Level 1 - Robotic Assistance (Robot assistance, helps with safety limits)
Level 2 - Task Autonomy (Small portions of functionality are automated)
Level 3 - Conditional Autonomy (Decisions and movements are approved by supervisor)
Level 4 - High Autonomy (Mostly automatic, supervisor for emergency interventions)
Level 5 - Full Autonomy (Robot acts fully alone throughout entire task or program)
Digital footprint
information about a person on the Internet as a result of their online activity
Found in Lecture 8 - Privacy
Metadata
a set of data that describes and gives information about other data
Found in zyBooks Section 8.1
strategies to protect user information
choose apps used carefully (How much does the app collect and record information? How does the app use the collected data?)
think before posting (Could the information you are posting harm yourself if made public?)
get the facts (Before signing up for a "free" service, consider how the service makes money)
check and set preferences carefully (If you don't check/set user preferences, default may be to "share")
Found in Lecture 8 - Privacy