Networks Computer Lab
Instructor: Leon Kaganovskiy
Office: HNS 110 or HNS 204 (Physics Computer Lab), Office Phone:
487-4118
Office Hours: T, F 3:30-6 PM. , Th 12-1. I am available
at other times; arrange via e-mail. (I encourage you to come with
questions!!!)
email: lkaganovskiy@ncf.edu -
best way to ask a question.
This course is a Computer Lab part of Professor Macdonald's Networks Course.
We will start by reviewing relevant programming techniques such as arrays, structures and linked lists. Later we will move to projects suggested in the Networks Class.
The grading will be based on the successful completion of projects, no exams.
Minimal Prerequisites: The course is at the intermediate - sophomore/junior level. It should be accessible for the students in Science and Mathematics majors. The specific prerequisites are the same as for the main Networks class taught by Prof McDonald + you are assumed to have some programming experience in any language.
Programming Language: The predominant programming languages used in numerical analysis are Fortran and MATLAB. In this course we will focus on Matlab. Many numerical analysis programs in Matlab will be provided. For students unacquainted with MATLAB, a short introduction is available from the following sources: Matlab Tutorial Brief, Matlab Primer (more comprehensive, but longer), Matlab Intro Plotting, Matlab Tutorial MIT, or just Google it.
A student version of MATLAB can be obtained from the company Mathworks, Inc. at a somewhat reduced price (>100$). This student version is essentially the full version, without some special add-on toolboxes. Matlab is available at the second floor Physics Computer Lab. Programs in languages other than Fortran and Matlab are also sometimes acceptable, but no programming assistance will be given in the use of such languages.
Grading Policy:
The final grade will be based on projects only. You are expected to produce clear write-ups explaining theory, computation (with pseudocode), and graphical output.
Attendance Policy:
There are no specific attendance credit points, but you are responsible for attending all the classes and keeping abreast of all the material presented in class.
Special Need Students:
Students
with the need for special accommodations must work with the Counseling and
Academic Dishonesty Policy:
Any suspected instance of plagiarism
will be reported to the office of the Provost and handled in accordance with
the College’s policy.
Preliminary Programming Topics
1) Recursion
a) Simple and multi-way recursion, accumulators
b) Optimal Matching
2) Trees
a) Trees as data structures
b) Processing trees, node and leaf collection
c) Huffman Encoding of information
Topics from the Networks course:
(1) The Konigsberg Bridge Problem and Eulerian Circuits
(a) Fundamental constructions of graph theory
(b) Trees
(c) Decomposition theorems
(2) Extremal Problems and Combinatorial Optimization
(a) Network design problems
(b) Transportation Problems
(c) Network Flow Problems
(3) The Traveling Salesman Problem
(a) Complexity
(b) Approximate Solutions
(4) Electrical Circuits
(a) Calculus on graphs
(b) Random walk
(c) Tomography
(5) Interacting Particle Systems
(a) Ising Models
(b) Contact processes
(6) Random Graphs
(a) Polymer growth
(b) Web evolution