Software installation (Julia) for the lecture
1. Install Julia
Julia is a programming language (like Java and Python) which has been recognized for its performance.
Visit Julia website (https://julialang.org/) and download/install the correct version of the releases for your OS (Windows, Mac, etc.)
Make sure that you can run "julia.exe" (located in the folder .../Julia 1.x.x/bin), which will look like below.
2. Install JuMP package
2.1 Introduction to JuMP
"JuMP is a modeling language and supporting packages for mathematical optimization in Julia. JuMP makes it easy to formulate and solve linear programming, semidefinite programming, integer programming, convex optimization, constrained nonlinear optimization, and related classes of optimization problems" [https://jump.dev/]
JuMP supports a number of open-source and commercial solvers for a variety of problem classes. You can find the list of the optimization solvers available in JuMP here (https://jump.dev/JuMP.jl/v0.21.1/installation/#Getting-Solvers-1).
We often face the difficulty in applying commercial solvers (e.g. CPLEX and Gurobi) to projects with companies due to the license restriction. The JuMP feature that allows us to apply open-source optimization solvers can be a solution to the difficulty, which is one of the reasons to learn JuMP.
Open the Julia REPL (julia.exe), command-line interface to Julia, and type "]" in the command line.
You can see the prompt line change (julia --> pkg) with blue color.
Then type "add JuMP" and press ENTER to download the package and install it on your computer.
3. Julia IDEs - Pluto Notebook
There are many IDEs (Integrated Development Environments) that support Julia programming. Among them, Pluto notebook, interactive Julia programming with fancy visualization features will be used for this lecture.
For installation, open Juila REPL and switch the mode from Julia to Pkg as we did for JuMP package installation (press "]") and type "add Pluto" in the command line and press ENTER.
After installation, switch the mode to Julia (you can type backspace or simply restart Julia) and type the following (one by one) to open Pluto.
julia> using Pluto
julia> Pluto.run()
Typing "Pluto.run()" may open a web site with "http://localhost:1234/" or a similar address on your internet browser (e.g. Chrome).
Please check the following video for more visualized help for Juila and related package installation.
Optional) You can also check the links below if you are interested in other IDEs available for Julia. Personally I recommend to use VS code for Juila programming (it is a light and simple editor for Julia). Please check the video below, which show you how to use VScode as a Julia IDE.
List of IDEs
https://medium.com/dev-genius/what-is-the-best-ide-for-developing-in-the-programming-language-julia-484c913f07bc
VS code for Julia
https://www.julia-vscode.org/
Juno (built in Atom) for Juila
https://junolab.org/
Jupiter Notebook
https://datatofish.com/add-julia-to-jupyter/