Internal assessment: Algorithms to consider

For the new IB Diploma Computer Science syllabus to start teaching in August 2025, and for first examinations in May 2027.

The Internal Assessment prioritises the design, construction and use of algorithms. Sometimes it can be difficult for students to even know what existing algorithms are available that might be useful for their project. The following is a list of algorithms and their possible uses to help start the ideation process. (I acknowledge the use of LLM to help brainstorm this list)

  1. Multidimensional Arrays
    • Minesweeper Game (Storing board state, revealing adjacent cells)
    • Chess/Checkers Board (Tracking piece positions, legal moves)
    • Pixel Art Editor (Storing RGB values in a 2D grid)
    • Matrix Operations Calculator (Addition, multiplication, determinant)
  2. Depth First Search (DFS)
    • Maze Solver (Finding a path from start to end)
    • File System Traversal (Simulating directory structure search)
    • Sudoku Solver (Backtracking to fill valid numbers)
    • Dependency Resolver (Topological sorting for task scheduling)
  3. Breadth First Search (BFS)
    • Shortest Path in a Grid (Maze with unweighted edges)
    • Social Network Friend Finder (Finding degrees of separation)
    • Web Crawler Simulation (Visiting links level by level)
    • Puzzle Solver (e.g., 8-Puzzle) (Finding optimal moves)
  4. Stacks or Queues
    • Undo/Redo Feature in a Text Editor (Stack-based command history)
    • Print Job Scheduler (Queue for managing print requests)
    • Balanced Parentheses Checker (Stack for syntax validation)
    • BFS/DFS Implementation (Using a queue/stack explicitly)
  5. Binary Search Trees (BSTs)
    • Dictionary/Spell Checker (Fast word lookup)
    • Student Grade Tracker (Insert, search, delete records)
    • Auto-complete System (Prefix-based searches)
    • Leaderboard System (Efficient ranking updates)
  6. Object-Oriented Programming (OOP)
    • Library Management System (Books, Users, Loans as objects)
    • Bank Account Simulator (Accounts, Transactions, Customers)
    • E-commerce Product Catalog (Products, Categories, Reviews)
    • Game Character System (Inheritance for different enemy types)
  7. Dijkstra / A*
    • Pathfinding Visualizer (Interactive grid with obstacles)
    • Public Transport Route Planner (Finding shortest routes)
    • RPG Game Enemy AI (Smart movement around obstacles)
    • Drone Delivery Simulator (Optimizing delivery paths)
  8. Huffman Encoding
    • Text File Compressor (Lossless compression demo)
    • Image Compression (Simplified) (Encoding pixel data)
    • Encrypted Messaging App (Combining with cryptography)
  9. Q-Learning (Reinforcement Learning)
    • Tic-Tac-Toe AI (Learning optimal moves)
    • Maze Navigator Bot (Training to find the exit)
    • Simple Stock Trading Bot (Reward-based decision making)
  10. Hash Tables
    • Password Manager (Storing & retrieving credentials)
    • Spam Filter (Counting word frequencies)
    • Cache Simulation (LRU cache implementation)
  11. Sets
    • Spell Checker (Finding misspelled words)
    • Social Media “Mutual Friends” Finder (Set intersection)
    • Duplicate File Detector (Comparing file hashes)
  12. Hashing Algorithms
    • Password Storage System (SHA-256 + salting)
    • File Integrity Checker (MD5/SHA checksums)
    • Plagiarism Detector (Comparing document hashes)
  13. Cryptographic Algorithms
    • Caesar/Vigenère Cipher Tool (Encrypt/decrypt messages)
    • RSA Key Generator (Simple public/private key demo)
    • Secure Chat App (End-to-end encryption simulation)
  14. Linear Regression
    • House Price Predictor (Based on size, location)
    • Exam Score Estimator (Hours studied vs. grades)
    • Sports Performance Analyzer (Training vs. results)
  15. Classification Algorithms
    • Spam Email Classifier (Naive Bayes)
    • Iris Flower Species Predictor (k-NN)
    • Sentiment Analysis Tool (Positive/Negative reviews)
  16. Clustering Algorithms
    • Customer Segmentation (Grouping by purchase behavior)
    • Image Color Quantization (Reducing color palette)
    • Anomaly Detection in Data (Identifying outliers)
  17. Association Rule (Apriori)
    • Market Basket Analysis (Recommending products)
    • Movie Recommendation System (Frequent item sets)
  18. Genetic Algorithms
    • Traveling Salesman Solver (Optimizing routes)
    • Timetable Generator (Scheduling classes/meetings)
    • Game AI Evolution (Optimizing strategies over generations)
  19. ANNs / CNNs
    • Handwritten Digit Recognizer (MNIST dataset)
    • Emotion Detection from Text (Simple NLP model)
    • Basic Image Classifier (Cats vs. Dogs)
  20. Image Object Detection/Recognition
    • License Plate Reader (OpenCV + Tesseract)
    • Face Detection App (Haar cascades)
    • AR Marker Detector (QR code recognition)
  21. Image-to-Text (OCR)
    • Receipt Scanner (Extracting totals, dates)
    • Business Card Reader (Parsing contact info)
  22. Networking Algorithms
    • Chat Application (TCP sockets)
    • P2P File Sharing Simulator (Distributed hash tables)
    • Packet Sniffer (Analyzing network traffic)
  23. Other Common Algorithms
    • Merge/Quick Sort Visualizer (Comparing efficiencies)
    • N-Queens Problem Solver (Backtracking)
    • Fibonacci Heap Priority Queue (Advanced data structure)

Copyright © Paul Baumgarten.