Skip to content

Programming projects for Stanford's AA228V/CS238V Validation of Safety-Critical Systems

Notifications You must be signed in to change notification settings

sisl/AA228VProjects

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Stanford AA228V/CS238V Programming Projects

website textbook package

Programming projects for Stanford's AA228V/CS238V Validation of Safety-Critical Systems.

Uses the StanfordAA228V.jl Julia package.

Projects

  • Project 0A light-weight introduction to falsification.
  • Project 1Efficiently finding the most-likely failure.
  • Project 2Efficiently estimating the failure probability.
  • Project 3Estimating the volume of a reachable set.

Installation

For additional installation help, please post on Ed.

You can also follow this video.

1. Install git

2. Install Julia

Required Julia 1.11+: https://julialang.org/downloads/

  • Windows users:
    winget install julia -s msstore
    
  • Linux/macOS users:
    curl -fsSL https://install.julialang.org | sh
    

This will give you the julia command in your terminal.

Already have Julia???

  • If you already have julia and it's not updated to version 1.11, please run the following in a terminal:
juliaup update

3. Install Packages

Note: You only need to do this once.

  1. Clone this git repo:
    1. Open a terminal and navigate to where you want the code to live.
    2. Run:
      git clone https://github.com/sisl/AA228VProjects
      
  2. Install Pluto and the SISL Julia package registry:
    1. Open julia in a terminal.
    2. Run:
      using Pkg
      Pkg.add("Pluto")
      Registry.add(url="https://github.com/sisl/Registry.git")

(Skip unless otherwise instructed) Update AA228VProjects

  1. Open a terminal and navigate to your "AA228VProjects" directory.
  2. Run: git pull
  3. Open the specific Pluto notebook and follow the update instructions within.

Julia Compiler Speed

Julia is a just-in-time (JIT) compiled language. Don't be alarmed if the first time you run the installed code it's slow. This is because Julia will precompile the required packages. The next time you run it will be much faster.

Teaching Team

Winter 2025 teaching team:

About

Programming projects for Stanford's AA228V/CS238V Validation of Safety-Critical Systems

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages