Free Online Course by MIT OpenCourseWare on Computer Algorithms in Systems Engineering
This course covers concepts of computation used in analysis of engineering systems. It includes the following topics: data structures, relational database representations of engineering data, algorithms for the solution and optimization of engineering system designs (greedy, dynamic programming, branch and bound, graph algorithms, nonlinear optimization), and introduction to complexity analysis. Object-oriented, efficient implementations of algorithms are emphasized.
- English
Tutor Name
MIT Open Course WareAbout the Course
MIT OpenCourseWare is offering a free online course on the theme of “Computer Algorithms in Systems Engineering”.
This course covers concepts of computation used in analysis of engineering systems. It includes the following topics: data structures, relational database representations of engineering data, algorithms for the solution and optimization of engineering system designs (greedy, dynamic programming, branch and bound, graph algorithms, nonlinear optimization), and introduction to complexity analysis. Object-oriented, efficient implementations of algorithms are emphasized.
Prerequisites
1.001 Introduction to Computers and Engineering Problem Solving is the prerequisite, which has 18.01 Calculus as a prerequisite. 6.005 Elements of Software Construction is also accepted. If you haven’t taken 1.001 and don’t know Java or C++ or C#, you may take 1.204 if you attend at least the first month of 1.001 as a listener. You should have some prior programming experience if you do this.
Course Requirements
7 problem sets, each worth 10 points (70% of grade).
2 quizzes (open book, open notes), each worth 15 points (30%). The second quiz may be replaced by a problem set if the class does well on quiz 1 and opts for the extra homework.
Topics:
- Databases
Database: Entity-relationship modeling
Database: Normalization, SQL basics
Database: SQL joins, views, subqueries
Database: JDBC
- Data Structures
Algorithms: Analysis, complexity
Graphs
Heaps, sets
- Divide-and-Conquer and Greedy Algorithms
Divide-conquer: Binary search, quicksort, selection
Greedy: Knapsack, job sequence
Greedy: Minimum spanning trees
Greedy/dynamic programming: Shortest paths
Quiz 1
- Dynamic Programming
Priniciple of optimality, resource allocation
Job scheduling, graph/tree generation
Knapsack problem, set representation
- Branch-and- Bound
Branch and bound: Backtrack method, knapsack problem
Branch and bound: General method, facility location
- Linear and Nonlinear Optimization
Continuous constrained nonlinear optimization
Network equilibrium
Linear systems
Continuous unconstrained nonlinear optimization
- Approximate Queues and Network Designs
Analytic approximations: Network design
Approximate queuing analysis
See more available events and conferences on For9a
See more available job opportunities in Jordan on For9a
Taught by
MIT OpenCourseWare (OCW) is a web-based publication of virtually all MIT course content. OCW is open and available to the world and is a permanent MIT activity. The idea is simple: to publish all of our course materials online and make them widely available to everyone.”
Read more.