Home | Subject Search | Help | Symbols Help | Pre-Reg Help | Final Exam Schedule | ||||||
Common Ground for Computing Education
|
The Common Ground for Computing Education is a cross-cutting initiative of the Schwarzman College of Computing that facilitates collaborations across multiple departments to teach broadly-applicable computing topics that are intertwined with discipline-specific content. The Common Ground involves participation by all five of MIT's Schools. Machine Learning, Optimization, Inference1.C01 Machine Learning for Sustainable Systems
![]() ![]() (Subject meets with 1.C51) Prereq: 6.C01 and ((1.000 and 1.010) or permission of instructor) Units: 1-1-4 Begins Mar 31. Lecture: TR10.30-12 (1-390) Recitation: F1 (1-390) ![]() Building on core material in 6.C01, emphasizes the design and operation of sustainable systems. Illustrates how to leverage heterogeneous data from urban services, cities, and the environment, and apply machine learning methods to evaluate and/or improve sustainability solutions. Provides case studies from various domains, such as transportation and urban mobility, energy and water resources, environmental monitoring, infrastructure sensing and control, climate adaptation, and disaster resilience. Projects focus on using machine learning to identify new insights or decisions that can help engineer sustainability in societal-scale systems. Students taking graduate version complete additional assignments. Students cannot receive credit without completion of the core subject 6.C01. S. Amin No required or recommended textbooks 1.C51 Machine Learning for Sustainable Systems
![]() ![]() (Subject meets with 1.C01) Prereq: 6.C51 and ((6.3700 and 18.06) or permission of instructor) Units: 1-1-4 Begins Mar 31. Lecture: TR10.30-12 (1-390) Recitation: F1 (1-390) ![]() Building on core material in 6.C51, emphasizes the design and operation of sustainable systems. Students learn to leverage heterogeneous data from urban services, cities, and the environment, and apply machine learning methods to evaluate and/or improve sustainability solutions. Provides case studies from various domains, such as transportation and mobility, energy and water resources, environment monitoring, infrastructure sensing and control, climate adaptation, and disaster resilience. Projects focus on using machine learning to identify new insights or decisions to help engineer sustainability in societal-scale systems. Students taking graduate version complete additional assignments. Students cannot receive credit without completion of the core subject 6.C51. S. Amin No required or recommended textbooks 2.C01 Physical Systems Modeling and Design Using Machine Learning
![]() ![]() (Subject meets with 2.C51) Prereq: 2.086 and 6.C01 Units: 1-3-2 Begins Mar 31. Lecture: F11-1 (3-270) ![]() Building on core material in 6.C01, encourages open-ended exploration of the increasingly topical intersection between artificial intelligence and the physical sciences. Uses energy and information, and their respective optimality conditions, to define supervised and unsupervised learning algorithms as well as ordinary and partial differential equations. Subsequently, physical systems with complex constitutive relationships are drawn from elasticity, biophysics, fluid mechanics, hydrodynamics, acoustics, and electromagnetics to illustrate how machine learning-inspired optimization can approximate solutions to forward and inverse problems in these domains. Students taking graduate version complete additional assignments. Students cannot receive credit without completion of the core subject 6.C01. G. Barbastathis No textbook information available 2.C51 Physical Systems Modeling and Design Using Machine Learning
![]() ![]() (Subject meets with 2.C01) Prereq: 6.C51 and (18.0751 or 18.0851) Units: 1-3-2 Begins Mar 31. Lecture: F11-1 (3-270) ![]() Building on core material in 6.C51, encourages open-ended exploration of the increasingly topical intersection between artificial intelligence and the physical sciences. Uses energy and information, and their respective optimality conditions, to define supervised and unsupervised learning algorithms as well as ordinary and partial differential equations. Subsequently, physical systems with complex constitutive relationships are drawn from elasticity, biophysics, fluid mechanics, hydrodynamics, acoustics, and electromagnetics to illustrate how machine learning-inspired optimization can approximate solutions to forward and inverse problems in these domains. Students taking graduate version complete additional assignments. Students cannot receive credit without completion of the core subject 6.C51. G. Barbastathis No textbook information available 3.C01[J] Machine Learning for Molecular Engineering
![]() ![]() (Same subject as 10.C01[J], 20.C01[J]) (Subject meets with 3.C51[J], 7.C01, 7.C51, 10.C51[J], 20.C51[J]) Prereq: Calculus II (GIR), 6.100A, and 6.C01 Units: 2-0-4 Begins Mar 31. Lecture: MW3 (45-230) ![]() Building on core material in 6.C01, provides an introduction to the use of machine learning to solve problems arising in the science and engineering of biology, chemistry, and materials. Equips students to design and implement machine learning approaches to challenges such as analysis of omics (genomics, transcriptomics, proteomics, etc.), microscopy, spectroscopy, or crystallography data and design of new molecules and materials such as drugs, catalysts, polymer, alloys, ceramics, and proteins. Students taking graduate version complete additional assignments. Students cannot receive credit without completion of the core subject 6.C01. R. Gomez-Bombarelli, C. Coley, E. Fraenkel, J. Davis No textbook information available 3.C51[J] Machine Learning for Molecular Engineering
![]() ![]() (Same subject as 10.C51[J], 20.C51[J]) (Subject meets with 3.C01[J], 7.C01, 7.C51, 10.C01[J], 20.C01[J]) Prereq: Calculus II (GIR), 6.100A, and 6.C51 Units: 2-0-4 Begins Mar 31. Lecture: MW3 (45-230) ![]() Building on core material in 6.C51, provides an introduction to the use of machine learning to solve problems arising in the science and engineering of biology, chemistry, and materials. Equips students to design and implement machine learning approaches to challenges such as analysis of omics (genomics, transcriptomics, proteomics, etc.), microscopy, spectroscopy, or crystallography data and design of new molecules and materials such as drugs, catalysts, polymer, alloys, ceramics, and proteins. Students taking graduate version complete additional assignments. Students cannot receive credit without completion of the core subject 6.C51. R. Gomez-Bombarelli, C. Coley, E. Fraenkel, J. Davis No textbook information available 6.C01 Modeling with Machine Learning: from Algorithms to Applications
![]() ![]() (Subject meets with 6.C51) Prereq: Calculus II (GIR) and 6.100A; Coreq: 1.C01, 2.C01, 3.C01, 6.C011, 7.C01, or 22.C01 Units: 2-0-4 Ends Mar 21. Lecture: MW2.30-4 (32-123) ![]() Focuses on modeling with machine learning methods with an eye towards applications in engineering and sciences. Introduction to modern machine learning methods, from supervised to unsupervised models, with an emphasis on newer neural approaches. Emphasis on the understanding of how and why the methods work from the point of view of modeling, and when they are applicable. Using concrete examples, covers formulation of machine learning tasks, adapting and extending methods to given problems, and how the methods can and should be evaluated. Students taking graduate version complete additional assignments. Students cannot receive credit without completion of a 6-unit disciplinary module in the same semester. Enrollment may be limited. Staff No textbook information available 6.C06[J] Linear Algebra and Optimization
![]() ![]() ![]() (Same subject as 18.C06[J]) Prereq: Calculus II (GIR) Units: 5-0-7 Credit cannot also be received for 18.06, 18.700, ES.1806 ![]() Introductory course in linear algebra and optimization, assuming no prior exposure to linear algebra and starting from the basics, including vectors, matrices, eigenvalues, singular values, and least squares. Covers the basics in optimization including convex optimization, linear/quadratic programming, gradient descent, and regularization, building on insights from linear algebra. Explores a variety of applications in science and engineering, where the tools developed give powerful ways to understand complex systems and also extract structure from data. Staff 6.C51 Modeling with Machine Learning: from Algorithms to Applications
![]() ![]() (Subject meets with 6.C01) Prereq: Calculus II (GIR) and 6.100A; Coreq: 1.C51, 2.C51, 3.C51, 6.C511, 7.C51, 22.C51, or SCM.C51 Units: 2-0-4 Ends Mar 21. Lecture: MW2.30-4 (32-123) ![]() Focuses on modeling with machine learning methods with an eye towards applications in engineering and sciences. Introduction to modern machine learning methods, from supervised to unsupervised models, with an emphasis on newer neural approaches. Emphasis on the understanding of how and why the methods work from the point of view of modeling, and when they are applicable. Using concrete examples, covers formulation of machine learning tasks, adapting and extending methods to given problems, and how the methods can and should be evaluated. Students taking graduate version complete additional assignments. Students cannot receive credit without completion of a 6-unit disciplinary module in the same semester. Enrollment may be limited. R. Barzilay, M. Ghassemi No textbook information available 6.C57[J] Optimization Methods
![]() ![]() (Same subject as 15.C57[J], IDS.C57[J]) (Subject meets with 6.C571[J], 15.C571[J]) Prereq: 18.C06 or permission of instructor Units: 4-0-8 ![]() Introduction to the methods and applications of optimization. Topics include linear optimization, duality, non-linear optimization, integer optimization, and optimization under uncertainty. Instruction provided in modeling techniques to address problems arising in practice, mathematical theory to understand the structure of optimization problems, computational algorithms to solve complex optimization problems, and practical applications. Covers several examples and in-depth case studies based on real-world data to showcase impactful applications of optimization across management and engineering. Computational exercises based on the Julia-based programming language JuMP. Includes a term project. Basic competency in computational programming and linear algebra recommended. Students taking graduate version complete additional assignments. This subject was previously listed as 15.093/6.7200/IDS.200. A. Jacquillat, H. Lu 6.C571[J] Optimization Methods
![]() ![]() (Same subject as 15.C571[J]) (Subject meets with 6.C57[J], 15.C57[J], IDS.C57[J]) Prereq: 18.C06 or permission of instructor Units: 4-0-8 ![]() Introduction to the methods and applications of optimization. Topics include linear optimization, duality, non-linear optimization, integer optimization, and optimization under uncertainty. Instruction provided in modeling techniques to address problems arising in practice, mathematical theory to understand the structure of optimization problems, computational algorithms to solve complex optimization problems, and practical applications. Covers several examples and in-depth case studies based on real-world data to showcase impactful applications of optimization across management and engineering. Computational exercises based on the Julia-based programming language JuMP. Includes a term project. Basic competency in computational programming and linear algebra recommended. Students taking graduate version complete additional assignments. This subject was previously listed as 6.7201. One section primarily reserved for Sloan students; check syllabus for details. A. Jacquillat, H. Lu 7.C01 Machine Learning in Molecular and Cellular Biology
![]() ![]() (Subject meets with 3.C01[J], 3.C51[J], 7.C51, 10.C01[J], 10.C51[J], 20.C01[J], 20.C51[J]) Prereq: Biology (GIR), 6.100A, 6.C01, and 7.05 Units: 2-0-4 Begins Mar 31. Lecture: MW3 (45-230) ![]() Introduces machine learning as a tool to understand natural biological systems, with an evolving emphasis on problems in molecular and cellular biology that are being actively advanced using machine learning. Students design, implement, and interpret machine learning approaches to aid in predicting protein structure, probing protein structure/function relationships, and imaging biological systems at scales ranging from the atomic to cellular. Students taking graduate version complete an additional project-based assignment. Students cannot receive credit without completion of the core subject 6.C01. C. Coley, J. Davis, E. Fraenkel, R. Gomez-Bombarelli No textbook information available 7.C51 Machine Learning in Molecular and Cellular Biology
![]() ![]() (Subject meets with 3.C01[J], 3.C51[J], 7.C01, 10.C01[J], 10.C51[J], 20.C01[J], 20.C51[J]) Prereq: Biology (GIR), 6.100A, 6.C51, and 7.05 Units: 2-0-4 Begins Mar 31. Lecture: MW3 (45-230) ![]() Introduces machine learning as a tool to understand natural biological systems, with an evolving emphasis on problems in molecular and cellular biology that are being actively advanced using machine learning. Students design, implement, and interpret machine learning approaches to aid in predicting protein structure, probing protein structure/function relationships, and imaging biological systems at scales ranging from the atomic to cellular. Students taking graduate version complete an additional project-based assignment. Students cannot receive credit without completion of the core subject 6.C51. C. Coley, J. Davis, E. Fraenkel, R. Gomez-Bombarelli No textbook information available 10.C01[J] Machine Learning for Molecular Engineering
![]() ![]() (Same subject as 3.C01[J], 20.C01[J]) (Subject meets with 3.C51[J], 7.C01, 7.C51, 10.C51[J], 20.C51[J]) Prereq: Calculus II (GIR), 6.100A, and 6.C01 Units: 2-0-4 Begins Mar 31. Lecture: MW3 (45-230) ![]() Building on core material in 6.C01, provides an introduction to the use of machine learning to solve problems arising in the science and engineering of biology, chemistry, and materials. Equips students to design and implement machine learning approaches to challenges such as analysis of omics (genomics, transcriptomics, proteomics, etc.), microscopy, spectroscopy, or crystallography data and design of new molecules and materials such as drugs, catalysts, polymer, alloys, ceramics, and proteins. Students taking graduate version complete additional assignments. Students cannot receive credit without completion of the core subject 6.C01. R. Gomez-Bombarelli, C. Coley, E. Fraenkel, J. Davis No textbook information available 10.C51[J] Machine Learning for Molecular Engineering
![]() ![]() (Same subject as 3.C51[J], 20.C51[J]) (Subject meets with 3.C01[J], 7.C01, 7.C51, 10.C01[J], 20.C01[J]) Prereq: Calculus II (GIR), 6.100A, and 6.C51 Units: 2-0-4 Begins Mar 31. Lecture: MW3 (45-230) ![]() Building on core material in 6.C51, provides an introduction to the use of machine learning to solve problems arising in the science and engineering of biology, chemistry, and materials. Equips students to design and implement machine learning approaches to challenges such as analysis of omics (genomics, transcriptomics, proteomics, etc.), microscopy, spectroscopy, or crystallography data and design of new molecules and materials such as drugs, catalysts, polymer, alloys, ceramics, and proteins. Students taking graduate version complete additional assignments. Students cannot receive credit without completion of the core subject 6.C51. R. Gomez-Bombarelli, C. Coley, E. Fraenkel, J. Davis No textbook information available 15.C08[J] Causal Inference
![]() ![]() ![]() (Same subject as 17.C08[J]) Prereq: 6.3800, 6.3900, 6.C01, 14.32, 17.803, 18.05, 18.650, or permission of instructor Units: 4-0-8 ![]() Provides an accessible overview of modern quantitative methods for causal inference: testing whether an action causes an outcome to occur. Makes heavy use of applied, real-data examples using Python or R and drawn from the participating domains (economics, political science, business, public policy, etc.). Covers topics including potential outcomes, causal graphs, randomized controlled trials, observational studies, instrumental variable estimation, and a contrast with machine learning techniques. Seeks to provide an intuitive understanding of the core concepts and techniques to help students produce and consume evidence of causal claims. J. Doyle, R. Rigobon, T. Yamamoto 15.C57[J] Optimization Methods
![]() ![]() (Same subject as 6.C57[J], IDS.C57[J]) (Subject meets with 6.C571[J], 15.C571[J]) Prereq: 18.C06 or permission of instructor Units: 4-0-8 ![]() Introduction to the methods and applications of optimization. Topics include linear optimization, duality, non-linear optimization, integer optimization, and optimization under uncertainty. Instruction provided in modeling techniques to address problems arising in practice, mathematical theory to understand the structure of optimization problems, computational algorithms to solve complex optimization problems, and practical applications. Covers several examples and in-depth case studies based on real-world data to showcase impactful applications of optimization across management and engineering. Computational exercises based on the Julia-based programming language JuMP. Includes a term project. Basic competency in computational programming and linear algebra recommended. Students taking graduate version complete additional assignments. This subject was previously listed as 15.093/6.7200/IDS.200. A. Jacquillat, H. Lu 15.C571[J] Optimization Methods
![]() ![]() (Same subject as 6.C571[J]) (Subject meets with 6.C57[J], 15.C57[J], IDS.C57[J]) Prereq: 18.C06 or permission of instructor Units: 4-0-8 ![]() Introduction to the methods and applications of optimization. Topics include linear optimization, duality, non-linear optimization, integer optimization, and optimization under uncertainty. Instruction provided in modeling techniques to address problems arising in practice, mathematical theory to understand the structure of optimization problems, computational algorithms to solve complex optimization problems, and practical applications. Covers several examples and in-depth case studies based on real-world data to showcase impactful applications of optimization across management and engineering. Computational exercises based on the Julia-based programming language JuMP. Includes a term project. Basic competency in computational programming and linear algebra recommended. Students taking graduate version complete additional assignments. This subject was previously listed as 6.7201. One section primarily reserved for Sloan students; check syllabus for details. A. Jacquillat, H. Lu 17.C08[J] Causal Inference
![]() ![]() ![]() (Same subject as 15.C08[J]) Prereq: 6.3800, 6.3900, 6.C01, 14.32, 17.803, 18.05, 18.650, or permission of instructor Units: 4-0-8 ![]() Provides an accessible overview of modern quantitative methods for causal inference: testing whether an action causes an outcome to occur. Makes heavy use of applied, real-data examples using Python or R and drawn from the participating domains (economics, political science, business, public policy, etc.). Covers topics including potential outcomes, causal graphs, randomized controlled trials, observational studies, instrumental variable estimation, and a contrast with machine learning techniques. Seeks to provide an intuitive understanding of the core concepts and techniques to help students produce and consume evidence of causal claims. J. Doyle, R. Rigobon, T. Yamamoto 18.C06[J] Linear Algebra and Optimization
![]() ![]() ![]() (Same subject as 6.C06[J]) Prereq: Calculus II (GIR) Units: 5-0-7 Credit cannot also be received for 18.06, 18.700, ES.1806 ![]() Introductory course in linear algebra and optimization, assuming no prior exposure to linear algebra and starting from the basics, including vectors, matrices, eigenvalues, singular values, and least squares. Covers the basics in optimization including convex optimization, linear/quadratic programming, gradient descent, and regularization, building on insights from linear algebra. Explores a variety of applications in science and engineering, where the tools developed give powerful ways to understand complex systems and also extract structure from data. Staff 20.C01[J] Machine Learning for Molecular Engineering
![]() ![]() (Same subject as 3.C01[J], 10.C01[J]) (Subject meets with 3.C51[J], 7.C01, 7.C51, 10.C51[J], 20.C51[J]) Prereq: Calculus II (GIR), 6.100A, and 6.C01 Units: 2-0-4 Begins Mar 31. Lecture: MW3 (45-230) ![]() Building on core material in 6.C01, provides an introduction to the use of machine learning to solve problems arising in the science and engineering of biology, chemistry, and materials. Equips students to design and implement machine learning approaches to challenges such as analysis of omics (genomics, transcriptomics, proteomics, etc.), microscopy, spectroscopy, or crystallography data and design of new molecules and materials such as drugs, catalysts, polymer, alloys, ceramics, and proteins. Students taking graduate version complete additional assignments. Students cannot receive credit without completion of the core subject 6.C01. R. Gomez-Bombarelli, C. Coley, E. Fraenkel, J. Davis No textbook information available 20.C51[J] Machine Learning for Molecular Engineering
![]() ![]() (Same subject as 3.C51[J], 10.C51[J]) (Subject meets with 3.C01[J], 7.C01, 7.C51, 10.C01[J], 20.C01[J]) Prereq: Calculus II (GIR), 6.100A, and 6.C51 Units: 2-0-4 Begins Mar 31. Lecture: MW3 (45-230) ![]() Building on core material in 6.C51, provides an introduction to the use of machine learning to solve problems arising in the science and engineering of biology, chemistry, and materials. Equips students to design and implement machine learning approaches to challenges such as analysis of omics (genomics, transcriptomics, proteomics, etc.), microscopy, spectroscopy, or crystallography data and design of new molecules and materials such as drugs, catalysts, polymer, alloys, ceramics, and proteins. Students taking graduate version complete additional assignments. Students cannot receive credit without completion of the core subject 6.C51. R. Gomez-Bombarelli, C. Coley, E. Fraenkel, J. Davis No textbook information available 22.C01 Modeling with Machine Learning: Nuclear Science and Engineering Applications
![]() ![]() (Subject meets with 22.C51) Prereq: Calculus II (GIR), 6.100A, and 6.C01 Units: 2-0-4 Begins Mar 31. Lecture: MW9.30-11 (24-115) ![]() Building on core material in 6.C01, focuses on applying various machine learning techniques to a broad range of topics which are of core value in modern nuclear science and engineering. Relevant topics include machine learning on fusion and plasma diagnosis, reactor physics and nuclear fission, nuclear materials properties, quantum engineering and nuclear materials, and nuclear security. Special components center on the additional machine learning architectures that are most relevant to a certain field, the implementation, and picking up the right problems to solve using a machine learning approach. Final project dedicated to the field-specific applications. Students taking graduate version complete additional assignments. Students cannot receive credit without completion of the core subject 6.C01. Staff Textbooks (Spring 2025) 22.C51 Modeling with Machine Learning: Nuclear Science and Engineering Applications
![]() ![]() (Subject meets with 22.C01) Prereq: Calculus II (GIR), 6.100A, and 6.C51 Units: 2-0-4 Begins Mar 31. Lecture: MW9.30-11 (24-115) ![]() Building on core material in 6.C51, focuses on applying various machine learning techniques to a broad range of topics which are of core value in modern nuclear science and engineering. Relevant topics include machine learning on fusion and plasma diagnosis, reactor physics and nuclear fission, nuclear materials properties, quantum engineering and nuclear materials, and nuclear security. Special components center on the additional machine learning architectures that are most relevant to a certain field, the implementation, and picking up the right problems to solve using a machine learning approach. Final project dedicated to the field-specific applications. Students taking graduate version complete additional assignments. Students cannot receive credit without completion of the core subject 6.C51. Staff Textbooks (Spring 2025) IDS.C57[J] Optimization Methods
![]() ![]() (Same subject as 6.C57[J], 15.C57[J]) (Subject meets with 6.C571[J], 15.C571[J]) Prereq: 18.C06 or permission of instructor Units: 4-0-8 ![]() Introduction to the methods and applications of optimization. Topics include linear optimization, duality, non-linear optimization, integer optimization, and optimization under uncertainty. Instruction provided in modeling techniques to address problems arising in practice, mathematical theory to understand the structure of optimization problems, computational algorithms to solve complex optimization problems, and practical applications. Covers several examples and in-depth case studies based on real-world data to showcase impactful applications of optimization across management and engineering. Computational exercises based on the Julia-based programming language JuMP. Includes a term project. Basic competency in computational programming and linear algebra recommended. Students taking graduate version complete additional assignments. This subject was previously listed as 15.093/6.7200/IDS.200. A. Jacquillat, H. Lu SCM.C51 Machine Learning Applications for Supply Chain Management
![]() ![]() Prereq: 6.C51 and (SCM.254 or permission of instructor) Units: 2-0-4 Begins Mar 31. Lecture: TR2.30-4 (E51-372) ![]() Building on core material in 6.C51, applies selected machine learning models to build practical, data-driven implementations addressing key business problems in supply chain management. Discusses challenges that typically arise in these practical implementations. Addresses relevant elements for large scale productionalization and monitoring of machine learning models in practice. Students cannot receive credit without completion of the core subject 6.C51. I. Jackson No required or recommended textbooks Computational Thinking1.C25[J] Real World Computation with Julia
![]() ![]() (Same subject as 6.C25[J], 12.C25[J], 16.C25[J], 18.C25[J], 22.C25[J]) Prereq: 6.100A, 18.03, and 18.06 Units: 3-0-9 ![]() Focuses on algorithms and techniques for writing and using modern technical software in a job, lab, or research group environment that may consist of interdisciplinary teams, where performance may be critical, and where the software needs to be flexible and adaptable. Topics include automatic differentiation, matrix calculus, scientific machine learning, parallel and GPU computing, and performance optimization with introductory applications to climate science, economics, agent-based modeling, and other areas. Labs and projects focus on performant, readable, composable algorithms, and software. Programming will be in Julia. Expects students to have some familiarity with Python, Matlab, or R. No Julia experience necessary. A. Edelman, R. Ferrari, B. Forget, C. Leiseron,Y. Marzouk, J. Williams 2.C27[J] Computational Imaging: Physics and Algorithms
![]() ![]() (Same subject as 3.C27[J], 6.C27[J]) (Subject meets with 2.C67[J], 3.C67[J], 6.C67[J]) Prereq: 18.C06 and (1.00, 1.000, 2.086, 3.019, or 6.100A) Units: 3-0-9 ![]() Explores the contemporary computational understanding of imaging: encoding information about a physical object onto a form of radiation, transferring the radiation through an imaging system, converting it to a digital signal, and computationally decoding and presenting the information to the user. Introduces a unified formulation of computational imaging systems as a three-round "learning spiral": the first two rounds describe the physical and algorithmic parts in two exemplary imaging systems. The third round involves a class project on an imaging system chosen by students. Undergraduate and graduate versions share lectures but have different recitations. Involves optional "clinics" to even out background knowledge of linear algebra, optimization, and computational imaging-related programming best practices for students of diverse disciplinary backgrounds. Students taking graduate version complete additional assignments. Staff 2.C67[J] Computational Imaging: Physics and Algorithms
![]() ![]() (Same subject as 3.C67[J], 6.C67[J]) (Subject meets with 2.C27[J], 3.C27[J], 6.C27[J]) Prereq: 18.C06 and (1.00, 1.000, 2.086, 3.019, or 6.100A) Units: 3-0-9 ![]() Contemporary understanding of imaging is computational: encoding onto a form of radiation the information about a physical object, transferring the radiation through the imaging system, converting it to a digital signal, and computationally decoding and presenting the information to the user. This class introduces a unified formulation of computational imaging systems as a three-round "learning spiral": the first two rounds, instructors describe the physical and algorithmic parts in two exemplary imaging systems. The third round, students conduct themselves as the class project on an imaging system of their choice. The undergraduate and graduate versions share lectures but have different recitations. Throughout the term, we also conduct optional "clinics" to even out background knowledge of linear algebra, optimization, and computational imaging-related programming best practices for students of diverse disciplinary backgrounds. Staff 3.C27[J] Computational Imaging: Physics and Algorithms
![]() ![]() (Same subject as 2.C27[J], 6.C27[J]) (Subject meets with 2.C67[J], 3.C67[J], 6.C67[J]) Prereq: 18.C06 and (1.00, 1.000, 2.086, 3.019, or 6.100A) Units: 3-0-9 ![]() Explores the contemporary computational understanding of imaging: encoding information about a physical object onto a form of radiation, transferring the radiation through an imaging system, converting it to a digital signal, and computationally decoding and presenting the information to the user. Introduces a unified formulation of computational imaging systems as a three-round "learning spiral": the first two rounds describe the physical and algorithmic parts in two exemplary imaging systems. The third round involves a class project on an imaging system chosen by students. Undergraduate and graduate versions share lectures but have different recitations. Involves optional "clinics" to even out background knowledge of linear algebra, optimization, and computational imaging-related programming best practices for students of diverse disciplinary backgrounds. Students taking graduate version complete additional assignments. Staff 3.C67[J] Computational Imaging: Physics and Algorithms
![]() ![]() (Same subject as 2.C67[J], 6.C67[J]) (Subject meets with 2.C27[J], 3.C27[J], 6.C27[J]) Prereq: 18.C06 and (1.00, 1.000, 2.086, 3.019, or 6.100A) Units: 3-0-9 ![]() Contemporary understanding of imaging is computational: encoding onto a form of radiation the information about a physical object, transferring the radiation through the imaging system, converting it to a digital signal, and computationally decoding and presenting the information to the user. This class introduces a unified formulation of computational imaging systems as a three-round "learning spiral": the first two rounds, instructors describe the physical and algorithmic parts in two exemplary imaging systems. The third round, students conduct themselves as the class project on an imaging system of their choice. The undergraduate and graduate versions share lectures but have different recitations. Throughout the term, we also conduct optional "clinics" to even out background knowledge of linear algebra, optimization, and computational imaging-related programming best practices for students of diverse disciplinary backgrounds. Staff 6.C25[J] Real World Computation with Julia
![]() ![]() (Same subject as 1.C25[J], 12.C25[J], 16.C25[J], 18.C25[J], 22.C25[J]) Prereq: 6.100A, 18.03, and 18.06 Units: 3-0-9 ![]() Focuses on algorithms and techniques for writing and using modern technical software in a job, lab, or research group environment that may consist of interdisciplinary teams, where performance may be critical, and where the software needs to be flexible and adaptable. Topics include automatic differentiation, matrix calculus, scientific machine learning, parallel and GPU computing, and performance optimization with introductory applications to climate science, economics, agent-based modeling, and other areas. Labs and projects focus on performant, readable, composable algorithms, and software. Programming will be in Julia. Expects students to have some familiarity with Python, Matlab, or R. No Julia experience necessary. A. Edelman, R. Ferrari, B. Forget, C. Leiseron,Y. Marzouk, J. Williams 6.C27[J] Computational Imaging: Physics and Algorithms
![]() ![]() (Same subject as 2.C27[J], 3.C27[J]) (Subject meets with 2.C67[J], 3.C67[J], 6.C67[J]) Prereq: 18.C06 and (1.00, 1.000, 2.086, 3.019, or 6.100A) Units: 3-0-9 ![]() Explores the contemporary computational understanding of imaging: encoding information about a physical object onto a form of radiation, transferring the radiation through an imaging system, converting it to a digital signal, and computationally decoding and presenting the information to the user. Introduces a unified formulation of computational imaging systems as a three-round "learning spiral": the first two rounds describe the physical and algorithmic parts in two exemplary imaging systems. The third round involves a class project on an imaging system chosen by students. Undergraduate and graduate versions share lectures but have different recitations. Involves optional "clinics" to even out background knowledge of linear algebra, optimization, and computational imaging-related programming best practices for students of diverse disciplinary backgrounds. Students taking graduate version complete additional assignments. Staff 6.C67[J] Computational Imaging: Physics and Algorithms
![]() ![]() (Same subject as 2.C67[J], 3.C67[J]) (Subject meets with 2.C27[J], 3.C27[J], 6.C27[J]) Prereq: 18.C06 and (1.00, 1.000, 2.086, 3.019, or 6.100A) Units: 3-0-9 ![]() Contemporary understanding of imaging is computational: encoding onto a form of radiation the information about a physical object, transferring the radiation through the imaging system, converting it to a digital signal, and computationally decoding and presenting the information to the user. This class introduces a unified formulation of computational imaging systems as a three-round "learning spiral": the first two rounds, instructors describe the physical and algorithmic parts in two exemplary imaging systems. The third round, students conduct themselves as the class project on an imaging system of their choice. The undergraduate and graduate versions share lectures but have different recitations. Throughout the term, we also conduct optional "clinics" to even out background knowledge of linear algebra, optimization, and computational imaging-related programming best practices for students of diverse disciplinary backgrounds. Staff 12.C25[J] Real World Computation with Julia
![]() ![]() (Same subject as 1.C25[J], 6.C25[J], 16.C25[J], 18.C25[J], 22.C25[J]) Prereq: 6.100A, 18.03, and 18.06 Units: 3-0-9 ![]() Focuses on algorithms and techniques for writing and using modern technical software in a job, lab, or research group environment that may consist of interdisciplinary teams, where performance may be critical, and where the software needs to be flexible and adaptable. Topics include automatic differentiation, matrix calculus, scientific machine learning, parallel and GPU computing, and performance optimization with introductory applications to climate science, economics, agent-based modeling, and other areas. Labs and projects focus on performant, readable, composable algorithms, and software. Programming will be in Julia. Expects students to have some familiarity with Python, Matlab, or R. No Julia experience necessary. A. Edelman, R. Ferrari, B. Forget, C. Leiseron,Y. Marzouk, J. Williams 16.C25[J] Real World Computation with Julia
![]() ![]() (Same subject as 1.C25[J], 6.C25[J], 12.C25[J], 18.C25[J], 22.C25[J]) Prereq: 6.100A, 18.03, and 18.06 Units: 3-0-9 ![]() Focuses on algorithms and techniques for writing and using modern technical software in a job, lab, or research group environment that may consist of interdisciplinary teams, where performance may be critical, and where the software needs to be flexible and adaptable. Topics include automatic differentiation, matrix calculus, scientific machine learning, parallel and GPU computing, and performance optimization with introductory applications to climate science, economics, agent-based modeling, and other areas. Labs and projects focus on performant, readable, composable algorithms, and software. Programming will be in Julia. Expects students to have some familiarity with Python, Matlab, or R. No Julia experience necessary. A. Edelman, R. Ferrari, B. Forget, C. Leiseron,Y. Marzouk, J. Williams 18.C25[J] Real World Computation with Julia
![]() ![]() (Same subject as 1.C25[J], 6.C25[J], 12.C25[J], 16.C25[J], 22.C25[J]) Prereq: 6.100A, 18.03, and 18.06 Units: 3-0-9 ![]() Focuses on algorithms and techniques for writing and using modern technical software in a job, lab, or research group environment that may consist of interdisciplinary teams, where performance may be critical, and where the software needs to be flexible and adaptable. Topics include automatic differentiation, matrix calculus, scientific machine learning, parallel and GPU computing, and performance optimization with introductory applications to climate science, economics, agent-based modeling, and other areas. Labs and projects focus on performant, readable, composable algorithms, and software. Programming will be in Julia. Expects students to have some familiarity with Python, Matlab, or R. No Julia experience necessary. A. Edelman, R. Ferrari, B. Forget, C. Leiseron,Y. Marzouk, J. Williams 22.C25[J] Real World Computation with Julia
![]() ![]() (Same subject as 1.C25[J], 6.C25[J], 12.C25[J], 16.C25[J], 18.C25[J]) Prereq: 6.100A, 18.03, and 18.06 Units: 3-0-9 ![]() Focuses on algorithms and techniques for writing and using modern technical software in a job, lab, or research group environment that may consist of interdisciplinary teams, where performance may be critical, and where the software needs to be flexible and adaptable. Topics include automatic differentiation, matrix calculus, scientific machine learning, parallel and GPU computing, and performance optimization with introductory applications to climate science, economics, agent-based modeling, and other areas. Labs and projects focus on performant, readable, composable algorithms, and software. Programming will be in Julia. Expects students to have some familiarity with Python, Matlab, or R. No Julia experience necessary. A. Edelman, R. Ferrari, B. Forget, C. Leiseron,Y. Marzouk, J. Williams Computational Science and Engineering9.C20[J] Introduction to Computational Science and Engineering
![]() ![]() ![]() (Same subject as 16.C20[J], 18.C20[J], CSE.C20[J]) Prereq: 6.100A; Coreq: 8.01 and 18.01 Units: 2-0-4 Credit cannot also be received for 6.100B Begins Mar 31. Lecture: MW3-4.30 (37-212) ![]() Provides an introduction to computational algorithms used throughout engineering and science (natural and social) to simulate time-dependent phenomena; optimize and control systems; and quantify uncertainty in problems involving randomness, including an introduction to probability and statistics. Combination of 6.100A and 16.C20J counts as REST subject. Fall: D.L. Darmofal, N. Seethapathi Spring: L. Demanet, N. Seethapathi No textbook information available 16.C20[J] Introduction to Computational Science and Engineering
![]() ![]() ![]() (Same subject as 9.C20[J], 18.C20[J], CSE.C20[J]) Prereq: 6.100A; Coreq: 8.01 and 18.01 Units: 2-0-4 Credit cannot also be received for 6.100B Begins Mar 31. Lecture: MW3-4.30 (37-212) ![]() Provides an introduction to computational algorithms used throughout engineering and science (natural and social) to simulate time-dependent phenomena; optimize and control systems; and quantify uncertainty in problems involving randomness, including an introduction to probability and statistics. Combination of 6.100A and 16.C20J counts as REST subject. Fall: D.L. Darmofal, N. Seethapathi Spring: L. Demanet, N. Seethapathi No textbook information available 18.C20[J] Introduction to Computational Science and Engineering
![]() ![]() ![]() (Same subject as 9.C20[J], 16.C20[J], CSE.C20[J]) Prereq: 6.100A; Coreq: 8.01 and 18.01 Units: 2-0-4 Credit cannot also be received for 6.100B Begins Mar 31. Lecture: MW3-4.30 (37-212) ![]() Provides an introduction to computational algorithms used throughout engineering and science (natural and social) to simulate time-dependent phenomena; optimize and control systems; and quantify uncertainty in problems involving randomness, including an introduction to probability and statistics. Combination of 6.100A and 16.C20J counts as REST subject. Fall: D.L. Darmofal, N. Seethapathi Spring: L. Demanet, N. Seethapathi No textbook information available CSE.C20[J] Introduction to Computational Science and Engineering
![]() ![]() ![]() (Same subject as 9.C20[J], 16.C20[J], 18.C20[J]) Prereq: 6.100A; Coreq: 8.01 and 18.01 Units: 2-0-4 Credit cannot also be received for 6.100B Begins Mar 31. Lecture: MW3-4.30 (37-212) ![]() Provides an introduction to computational algorithms used throughout engineering and science (natural and social) to simulate time-dependent phenomena; optimize and control systems; and quantify uncertainty in problems involving randomness, including an introduction to probability and statistics. Combination of 6.100A and 16.C20J counts as REST subject. Fall: D.L. Darmofal, N. Seethapathi Spring: L. Demanet, N. Seethapathi No textbook information available Digital Humanities and Social Science6.C35[J] Interactive Data Visualization and Society
![]() ![]() (Same subject as 11.C35[J], CMS.C35[J], IDS.C35[J]) (Subject meets with 6.C85[J], 11.C85[J], IDS.C85[J]) Prereq: None Units: 3-4-8 Credit cannot also be received for 6.8530, 11.154, 11.454 Lecture: MW1-2.30 (45-230) Lab: R3 (45-102) ![]() Covers the design, ethical, and technical skills for creating effective visualizations. Short assignments build familiarity with the data analysis and visualization design process. Weekly lab sessions present coding and technical skills. A final project provides experience working with real-world big data, provided by external partners, in order to expose and communicate insights about societal issues. Students taking graduate version complete additional assignments. Enrollment limited. Enrollment limited. C. D'Ignazio, C. Lee, A. Satyanarayan No textbook information available 6.C40[J] Ethics of Computing
![]() ![]() ![]() (Same subject as 24.C40[J]) Prereq: None Units: 3-0-9 ![]() Explores ethical questions raised by the potentially transformative power of computing technologies. Topics include: lessons from the history of transformative technologies; the status of property and privacy rights in the digital realm; effective accelerationism, AI alignment, and existential risk; algorithmic bias and algorithmic fairness; and free speech, disinformation, and polarization on online platforms. B. Skow, A. Solar-Lezama 6.C85[J] Interactive Data Visualization and Society
![]() ![]() (Same subject as 11.C85[J], IDS.C85[J]) (Subject meets with 6.C35[J], 11.C35[J], CMS.C35[J], IDS.C35[J]) Prereq: None Units: 3-1-8 Credit cannot also be received for 6.8530, 11.154, 11.454 Lecture: MW1-2.30 (45-230) Lab: R4 (32-082) ![]() Covers the design, ethical, and technical skills for creating effective visualizations. Short assignments build familiarity with the data analysis and visualization design process. Students participate in hour-long studio reading sessions. A final project provides experience working with real-world big data, provided by external partners, in order to expose and communicate insights about societal issues. Students taking graduate version complete additional assignments. C. D'Ignazio, C. Lee, A. Satyanarayan No textbook information available 11.C35[J] Interactive Data Visualization and Society
![]() ![]() (Same subject as 6.C35[J], CMS.C35[J], IDS.C35[J]) (Subject meets with 6.C85[J], 11.C85[J], IDS.C85[J]) Prereq: None Units: 3-4-8 Credit cannot also be received for 6.8530, 11.154, 11.454 Lecture: MW1-2.30 (45-230) Lab: R3 (45-102) ![]() Covers the design, ethical, and technical skills for creating effective visualizations. Short assignments build familiarity with the data analysis and visualization design process. Weekly lab sessions present coding and technical skills. A final project provides experience working with real-world big data, provided by external partners, in order to expose and communicate insights about societal issues. Students taking graduate version complete additional assignments. Enrollment limited. Enrollment limited. C. D'Ignazio, C. Lee, A. Satyanarayan No textbook information available 11.C85[J] Interactive Data Visualization and Society
![]() ![]() (Same subject as 6.C85[J], IDS.C85[J]) (Subject meets with 6.C35[J], 11.C35[J], CMS.C35[J], IDS.C35[J]) Prereq: None Units: 3-1-8 Credit cannot also be received for 6.8530, 11.154, 11.454 Lecture: MW1-2.30 (45-230) Lab: R4 (32-082) ![]() Covers the design, ethical, and technical skills for creating effective visualizations. Short assignments build familiarity with the data analysis and visualization design process. Students participate in hour-long studio reading sessions. A final project provides experience working with real-world big data, provided by external partners, in order to expose and communicate insights about societal issues. Students taking graduate version complete additional assignments. C. D'Ignazio, C. Lee, A. Satyanarayan No textbook information available 21H.C30 Encoding Culture: Computation Methods in the Humanities, Arts, and Social Sciences
![]() ![]() ![]() Not offered regularly; consult department Prereq: 6.100A, 6.100B, or 6.100L Units: 3-0-9 ![]() Applies computational methods for manipulating and analyzing encoded media, and draws from a wide range of practices including computational linguistics, audio processing, computer vision, and machine learning. Explores what it means to digitally encode and analyze culture. Studies the history and current practice of digitally encoding text, images, audio, and tabular datasets, along with the cultural and social issues implicit in these systems. Confronts the underlying issues of what is lost and gained when we encode culture. Limited to 25. Staff 24.C40[J] Ethics of Computing
![]() ![]() ![]() (Same subject as 6.C40[J]) Prereq: None Units: 3-0-9 ![]() Explores ethical questions raised by the potentially transformative power of computing technologies. Topics include: lessons from the history of transformative technologies; the status of property and privacy rights in the digital realm; effective accelerationism, AI alignment, and existential risk; algorithmic bias and algorithmic fairness; and free speech, disinformation, and polarization on online platforms. B. Skow, A. Solar-Lezama |
![]() | | | CG | | | ![]() |