Following a brief classroom discussion of relevant principles, each student completes the …
Following a brief classroom discussion of relevant principles, each student completes the paper design of several advanced circuits such as multiplexers, sample-and-holds, gain-controlled amplifiers, analog multipliers, digital-to-analog or analog-to-digital converters, and power amplifiers. One of each student's designs is presented to the class, and one may be built and evaluated. Associated laboratory emphasizing the use of modern analog building blocks. Alternate years.
Recent results in cryptography and interactive proofs. Lectures by instructor, invited speakers, …
Recent results in cryptography and interactive proofs. Lectures by instructor, invited speakers, and students. Alternate years. The topics covered in this course include interactive proofs, zero-knowledge proofs, zero-knowledge proofs of knowledge, non-interactive zero-knowledge proofs, secure protocols, two-party secure computation, multiparty secure computation, and chosen-ciphertext security.
In-depth study of an active research topic in computer graphics. Topics change …
In-depth study of an active research topic in computer graphics. Topics change each term. Readings from the literature, student presentations, short assignments, and a programming project. Animation is a compelling and effective form of expression; it engages viewers and makes difficult concepts easier to grasp. Today's animation industry creates films, special effects, and games with stunning visual detail and quality. This graduate class will investigate the algorithms that make these animations possible: keyframing, inverse kinematics, physical simulation, optimization, optimal control, motion capture, and data-driven methods. Our study will also reveal the shortcomings of these sophisticated tools. The students will propose improvements and explore new methods for computer animation in semester-long research projects. The course should appeal to both students with general interest in computer graphics and students interested in new applications of machine learning, robotics, biomechanics, physics, applied mathematics and scientific computing.
This course introduces students to the basic knowledge representation, problem solving, and …
This course introduces students to the basic knowledge representation, problem solving, and learning methods of artificial intelligence. Upon completion of 6.034, students should be able to develop intelligent systems by assembling solutions to concrete computational problems, understand the role of knowledge representation, problem solving, and learning in intelligent-system engineering, and appreciate the role of problem solving, vision, and language in understanding human intelligence from a computational perspective.
This course provides a challenging introduction to some of the central ideas …
This course provides a challenging introduction to some of the central ideas of theoretical computer science. Beginning in antiquity, the course will progress through finite automata, circuits and decision trees, Turing machines and computability, efficient algorithms and reducibility, the P versus NP problem, NP-completeness, the power of randomness, cryptography and one-way functions, computational learning theory, and quantum computing. It examines the classes of problems that can and cannot be solved by various kinds of machines. It tries to explain the key differences between computational models that affect their power.
Graduate-level introduction to automatic speech recognition. Provides relevant background in acoustic theory …
Graduate-level introduction to automatic speech recognition. Provides relevant background in acoustic theory of speech production, properties of speech sounds, signal representation, acoustic modeling, pattern classification, search algorithms, stochastic modeling techniques (including hidden Markov modeling), and language modeling. Examines approaches of state-of-the-art speech recognition systems. Introduces students to the rapidly developing field of automatic speech recognition. Its content is divided into three parts. Part I deals with background material in the acoustic theory of speech production, acoustic-phonetics, and signal representation. Part II describes algorithmic aspects of speech recognition systems including pattern classification, search algorithms, stochastic modelling, and language modelling techniques. Part III compares and contrasts the various approaches to speech recognition, and describes advanced techniques used for acoustic-phonetic modelling, robust speech recognition, speaker adaptation, processing paralinguistic information, speech understanding, and multimodal processing.
This course is an introduction to computational theories of human cognition. Drawing …
This course is an introduction to computational theories of human cognition. Drawing on formal models from classic and contemporary artificial intelligence, students will explore fundamental issues in human knowledge representation, inductive learning and reasoning. What are the forms that our knowledge of the world takes? What are the inductive principles that allow us to acquire new knowledge from the interaction of prior knowledge with observed data? What kinds of data must be available to human learners, and what kinds of innate knowledge (if any) must they have?
Study and discussion of computational approaches and algorithms for contemporary problems in …
Study and discussion of computational approaches and algorithms for contemporary problems in functional genomics. Topics include DNA chip design, experimental data normalization, expression data representation standards, proteomics, gene clustering, self-organizing maps, Boolean networks, statistical graph models, Bayesian network models, continuous dynamic models, statistical metrics for model validation, model elaboration, experiment planning, and the computational complexity of functional genomics problems.
This course analyzes issues associated with the implementation of higher-level programming languages. …
This course analyzes issues associated with the implementation of higher-level programming languages. Topics covered include: fundamental concepts, functions, and structures of compilers, the interaction of theory and practice, and using tools in building software. The course includes a multi-person project on compiler design and implementation.
Topics on the engineering and analysis of network protocols and architecture, including: …
Topics on the engineering and analysis of network protocols and architecture, including: architectural principles for designing heterogeneous networks; congestion control; unicast and multicast routing; wireless and mobile networking; network quality of service; router design; network security; streaming and multicast applications; naming; content distribution; and peer-to-peer networking. Readings from original research papers, industry white papers, and Internet RFCs. Semester-long project and paper.
The course addresses dynamic systems, i.e., systems that evolve with time. Typically …
The course addresses dynamic systems, i.e., systems that evolve with time. Typically these systems have inputs and outputs; it is of interest to understand how the input affects the output (or, vice-versa, what inputs should be given to generate a desired output). In particular, we will concentrate on systems that can be modeled by Ordinary Differential Equations (ODEs), and that satisfy certain linearity and time-invariance conditions. We will analyze the response of these systems to inputs and initial conditions. It is of particular interest to analyze systems obtained as interconnections (e.g., feedback) of two or more other systems. We will learn how to design (control) systems that ensure desirable properties (e.g., stability, performance) of the interconnection with a given dynamic system.
Treatment of electromechanical transducers, rotating and linear electric machines. Lumped-parameter electromechanics of …
Treatment of electromechanical transducers, rotating and linear electric machines. Lumped-parameter electromechanics of interaction. Development of device characteristics: energy conversion density, efficiency; and of system interaction characteristics: regulation, stability, controllability, and response. Use of electric machines in drive systems. Problems taken from current research. This course explores concepts in electromechanics, using electric machinery as examples. It teaches an understanding of principles and analysis of electromechanical systems. By the end of the course, students are capable of doing electromechanical design of the major classes of rotating and linear electric machines and have an understanding of the principles of the energy conversion parts of Mechatronics. In addition to design, students learn how to estimate the dynamic parameters of electric machines and understand what the implications of those parameters are on the performance of systems incorporating those machines.
This text is an introductory treatment on the junior level for a …
This text is an introductory treatment on the junior level for a two-semester electrical engineering course starting from the Coulomb-Lorentz force law on a point charge. The theory is extended by the continuous superposition of solutions from previously developed simpler problems leading to the general integral and differential field laws. Often the same problem is solved by different methods so that the advantages and limitations of each approach becomes clear. Sample problems and their solutions are presented for each new concept with great emphasis placed on classical models of physical phenomena such as polarization, conduction, and magnetization. A large variety of related problems that reinforce the text material are included at the end of each chapter for exercise and homework.
This course will provide a gentle, yet intense, introduction to programming using …
This course will provide a gentle, yet intense, introduction to programming using Python for highly motivated students with little or no prior experience in programming. The course will focus on planning and organizing programs, as well as the grammar of the Python programming language. The course is designed to help prepare students for 6.01 Introduction to EECS. 6.01 assumes some knowledge of Python upon entering; the course material for 6.189 has been specially designed to make sure that concepts important to 6.01 are covered. This course is offered during the Independent Activities Period (IAP), which is a special 4-week term at MIT that runs from the first week of January until the end of the month.
The Girls Who Build: Make Your Own Wearables workshop for high school …
The Girls Who Build: Make Your Own Wearables workshop for high school girls is an introduction to computer science, electrical and mechanical engineering through wearable technology. The workshop, developed by MIT Lincoln Laboratory, consists of two major hands-on projects in manufacturing and wearable electronics. These include 3D printing jewelry and laser cutting a purse, as well as programming LEDs to light up when walking. Participants learn the design process, 3D computer modeling, and machine shop tools, in addition to writing code and building a circuit.
6.976 covers system level issues of high speed communication systems and their …
6.976 covers system level issues of high speed communication systems and their impact on circuit requirements, with primary focus being placed on wireless and broadband data link applications. Course topics include: transistor level design techniques for high speed amplifiers, mixers, VCO's, registers and gates, and phase locked loops, and the impact of transmission line effects on circuit designs for narrowband and broadband systems. Finally, behavioral level simulation techniques are presented for phase locked loops and other communication circuits.
This is a fast-paced introductory course to the C++ programming language. It …
This is a fast-paced introductory course to the C++ programming language. It is intended for those with little programming background, though prior programming experience will make it easier, and those with previous experience will still learn C++-specific constructs and concepts. This course is offered during the Independent Activities Period (IAP), which is a special 4-week term at MIT that runs from the first week of January until the end of the month.
This course examines signals, systems and inference as unifying themes in communication, …
This course examines signals, systems and inference as unifying themes in communication, control and signal processing. Topics include input-output and state-space models of linear systems driven by deterministic and random signals; time- and transform-domain representations in discrete and continuous time; group delay; state feedback and observers; probabilistic models; stochastic processes, correlation functions, power spectra, spectral factorization; least-mean square error estimation; Wiener filtering; hypothesis testing; detection; matched filters.
This course aims to give students the tools and training to recognize …
This course aims to give students the tools and training to recognize convex optimization problems that arise in scientific and engineering applications, presenting the basic theory, and concentrating on modeling aspects and results that are useful in applications. Topics include convex sets, convex functions, optimization problems, least-squares, linear and quadratic programs, semidefinite programming, optimality conditions, and duality theory. Applications to signal processing, control, machine learning, finance, digital and analog circuit design, computational geometry, statistics, and mechanical engineering are presented. Students complete hands-on exercises using high-level numerical software. Acknowledgements The course materials were developed jointly by Prof. Stephen Boyd (Stanford), who was a visiting professor at MIT when this course was taught, and Prof. Lieven Vanderberghe (UCLA).
No restrictions on your remixing, redistributing, or making derivative works. Give credit to the author, as required.
Your remixing, redistributing, or making derivatives works comes with some restrictions, including how it is shared.
Your redistributing comes with some restrictions. Do not remix or make derivative works.
Most restrictive license type. Prohibits most uses, sharing, and any changes.
Copyrighted materials, available under Fair Use and the TEACH Act for US-based educators, or other custom arrangements. Go to the resource provider to see their individual restrictions.