Welcome to the University of Pittsburgh
Department of Industrial Engineering Pre-MS preparation page. In order to
enhance your experience in the program, we suggest a few technical areas that
you might want to brush up on – these are optional, but our experience
is that they would be a great way to get ready for the MS program if you have
some time on your hands between now and August! Specifically, you should review
scientific programming, statistics, and linear algebra.
Choose one of these three technical
computing languages to learn/review. Python (SciPy), R, and Matlab are all
built on well established linear algebra and other numerical libraries. After
you learn one, it is not difficult to move to another of these three. Each of these has a base language, but the
true capabilities of each language platform are the libraries and packages that
are available. In practice, the choice
of language should be based on how available packages match the specific task. Note that Python and R packages tend to be
free, while Matlab packages need to be purchased separately.
For each language, we recommend an online workshop
(Software Carpentry, which focuses on technical computing), a freely available
book for reference (can be used if the online course is not available), and we
provide additional references for using the language with linear algebra and
statistics. We also suggest a fuller
course if you have time.
Other than Matlab, the software and the
books listed are freely available for a variety of operating systems.
Python is used in a wide range of technical and non-technical areas including
optimization, numerical methods, statistics, data manipulation and analysis, and
many specialized areas of mathematics. Matlab/Octave is used in areas of
numeric computation, such as optimization and other numeric methods (Note that
Matlab is limited in statistics compared to R or Python without additional
purchased libraries). R is principally used in statistics and data
analysis. (Note: R is used in IE 2005, 2007, 2064)
If your programming background is deficient
or unsure, we suggest you learn one language this summer as it will help get
your mind used to learning on your own outside of class instruction, which is
the biggest difference between graduate school and your undergraduate education.
For the language you select, you will need
to (a) obtain the language and integrated development environment (IDE), and
(b) go through a short workshop on scientific programming. We also identify some references that you can
Anaconda (recommended) - https://www.anaconda.com/download/
- Enthought Canopy - https://www.enthought.com/products/canopy/
This text focuses on using probability and
computer simulation to motivate and explain fundamental concepts, in contrast
to the arithmetic equations that most of you were taught in statistics. You
should do all exercises using your technical computing environment of choice.
The references in Python, R, or Matlab will help you. Note that Matlab has
limited statistics capability without purchasing the Statistics and Machine
This should be a review for most of you.
Your goal should be to understand the concepts then solve the numerical
exercises in Python, R, or Matlab. Note that learning how to learn is one of
goals of this review. The references below will help you implement the linear
algebra methods in Python, R, or Matlab.