Press Ctrl+D to draw

Drawing Tools

Log in for saved annotations

1px

1.1  Overview

Welcome to Engineering Artificial Intelligence, a practical exploration of AI from an engineering perspective. These notes take a fundamentally different approach than most AI courses and textbooks by focusing on two essential perspectives:

  1. AI as an engineering design tool โ€” using AI systems to solve engineering problems, analyze data, and make design decisions
  2. AI as an element of intelligent systems โ€” building AI into products and systems that need to perceive, reason, and act

This dual focus reflects how modern engineers actually work with AI: both using AI tools in the design process and creating intelligent products.

1.1.1 Why This Approach?

Most AI resources focus primarily on theory and algorithms, treating AI as a branch of computer science or mathematics. While we'll certainly cover fundamental concepts, our emphasis is on engineering practice. Here are some engineering questions that we'll be able to address by the end of this course:

  • How should we conceptualize AI as a tool in the engineering design process?
  • How should we conceptualize AI as a component in intelligent systems?
  • How do you select the right AI approach for a given engineering problem?
  • How can you use AI to extract insights from noisy experimental data?
  • How can AI help optimize complex engineering designs?
  • How can you handle uncertainty in AI predictions for safety-critical applications?
  • What's involved in deploying a model that needs to run in real-time on edge hardware?
  • How can you build AI systems that continue learning from field data?
  • What AI tools and workflows can engineers use to design, build, and maintain products?

These are engineering questions that require both understanding AI fundamentals and knowing how to design with them.

1.1.2 AI as a Design Tool

Engineers increasingly use AI throughout the design process:

  • Generative AI for rapid prototyping and exploring design spaces
  • Machine learning for analyzing sensor data and extracting patterns
  • Optimization algorithms powered by AI to find optimal designs
  • Natural language interfaces for designing software and writing documentation and reports
  • Computer vision for inspecting manufacturing processes

You'll learn to wield these tools effectively, understanding their capabilities and limitations. We'll build practical analysis scripts and use AI to solve real engineering problems.

1.1.3 AI as a System Element

Modern products increasingly incorporate AI:

  • Autonomous systems that perceive and navigate environments
  • Predictive maintenance systems that forecast failures
  • Adaptive controllers that learn optimal control strategies
  • Smart devices that respond to user behavior
  • Embedded vision systems for quality control

You'll learn how to design these systems, from selecting appropriate algorithms to deploying models on resource-constrained hardware. We'll explore the software engineering practices needed to build reliable AI-enabled products.

1.1.4 What You'll Learn

This course covers:

1.1.4.1 Foundations

  • Mathematical tools: linear algebra, probability, optimization
  • Core machine learning concepts: supervised and unsupervised learning
  • Neural networks and deep learning fundamentals
  • Model training, validation, and deployment

1.1.4.2 Engineering Practice

  • Using AI tools for data analysis and design
  • Building ML pipelines from data to deployment
  • Embedded AI and edge computing
  • Software architecture for AI systems
  • Testing and validation of AI components
  • Ethics, safety, and reliability considerations

1.1.4.3 Implementation Skills

  • Python for AI: NumPy, PyTorch/TensorFlow, scikit-learn
  • Building algorithms from scratch to understand internals
  • Using pre-trained models and transfer learning
  • Deploying models to embedded systems and edge devices
  • Integrating AI into larger software systems

1.1.5 Prerequisites

You'll get the most out of these notes if you have:

  • Programming proficiency: Comfortable with Python or similar language
  • Mathematical foundations: Calculus, linear algebra, probability
  • Engineering mindset: Experience with systems thinking and problem-solving

However, we'll review key concepts as needed, so even if you're less experienced in some areas, you can still follow along.

1.1.6 How These Notes Work

Each chapter combines:

  • Theory with intuition โ€” understanding the math and the mental models
  • Implementation from scratch โ€” building algorithms to see how they work
  • Practical tools โ€” using industry-standard libraries and frameworks
  • Engineering applications โ€” real problems where AI adds value

Code examples are executable and designed to run on typical engineering workstations. We emphasize understanding over rote application of libraries.

See Section 1.3.2: Setting Up Your Development Environment for development environment setup instructions.

1.1.7 Let's Begin

We will build our understanding progressively, starting with fundamental concepts and moving toward sophisticated AI systems. You'll emerge able to both use AI as a powerful design tool and design intelligent systems that work reliably in the real world.

We're learning AI for engineering design and intelligent systems. Let's get started!