Skip to main content
NC State Home

CSC 591 Artificial Intelligence of Things

3 Credit Hours

This course provides an introduction to Internet of Things (IoT) and data mining techniques to extract knowledge from IoT data. Topics include challenges in the design of IoT systems, limitations of existing protocols such as HTTP, security issues, and leveraging cloud infrastructure to achieve the full potential of IoT. Students will learn about the overall process of data collection and analysis to support knowledge discovery. They will apply supervised and unsupervised automated learning methods to extract patterns, make predictions and identify groups from data. Gained knowledge will be used to support and optimize IoT applications. The course involves a project involving data collection, processing and analysis, and a research paper presentations. Programming will be done in python.

Prerequisites

Basic programming ability. An undergraduate course in networking fundamentals is helpful but not strictly required. 

Learning Outcomes

Upon completion, students will be able to:

  • Understand IoT specific communication paradigms such as publish-subscribe and push-pull.
  • Explain and contrast IoT related protocols such as MQTT and CoAP.
  • Program IoT devices such as Intel Raspberry Pi, Arduino, or LoRa devices.
  • Leverage cloud platforms to implement IoT applications.
  • Perform real time data collection.
  • Identify and contrast the major types of data and data representations.
  • Implement and apply various methods for supervised and unsupervised automated learning (e.g. Decision Trees, KNN, ANNs Regression, Clustering).
  • Explain and contrast methods for evaluating the performance of automated learning algorithms (e.g. holdout, k-fold cross validation, and leave-one-out cross validation).
  • Identify ethical issues in data analysis applications, such as the impacts of data bias.
  • Motivate, justify, and qualify conclusions obtained from an analysis.

Course Requirements

There are two midterm exams, five homeworks, a project, a paper presentation and a final exam, weighted as follows:

TaskPercentage
Homeworks20%
Paper presentation5%
Midterms25%
Project25%
Final25%

Homeworks and projects can be worked out in groups of two (at most).
All exams are cumulative.
All exams are closed book and notes.
Grades and Solutions will be posted after each assignment or exam.

Textbook

There is no textbook required for this course. This textbook is optional.

Pang-Ning Tan, Michael Steinbach, Vipin Kumar, Introduction to Data Mining (2nd Edition), Pearson, 2018, ISBN-13 ‏ : ‎ 978-0133128901.

Created: 10/15/2025