**6.0001 Introduction to Computer Science and Programming in Python **

(formerly 6.00)* *

A. Bell

Introduction to computer science and programming for students with little or no programming experience. Students develop skills to program and use computational techniques to solve problems. Topics include the notion of computation, Python, simple algorithms and data structures, testing and debugging, and algorithmic complexity.

*Comments:*

*“This class teaches Python and mathematical topics such as statistics and randomness. Class requires you to handle some math problems that are relevant to scientist who gather experiment data. Online Piazza forum system is effective. UG style P-set assignment annoys you by catching your comment line placement. Overall recommendation is positive. G credit is possible with petition, extra project is expected.” (2014)*

*“It is a very good beginner programming class! The classes have been very interesting and the problem sets have been tough but very interesting. In the beginning the class is very easy but gets hard pretty fast. I recommend to make work sessions in groups.”*

*“Concerning Python vs Java. It doesn't really matter which language you use, they are both very good. I personally like Python more because it is very easy to read and you need often very few lines to make a pretty powerful script. It is confirmed that Python will be the new scripting language for Rhino 5. Java is nice because of Processing. Anyway, in the end it doesn't really matter.”*

**6.0001 and 6.0002 Python part 1 and 2**

*A. Bell*

Introduction to computer science and programming for students with little or no programming experience. Students develop skills to program and use computational techniques to solve problems. Topics include the notion of computation, Python, simple algorithms and data structures, testing and debugging, and algorithmic complexity. Combination of 6.0001 and 6.0002 counts as REST subject. Final given in the seventh week of the term. (6.0001)

Provides an introduction to using computation to understand real-world phenomena. Topics include plotting, stochastic programs, probability and statistics, random walks, Monte Carlo simulations, modeling data, optimization problems, and clustering. Combination of 6.0001 and 6.0002 counts as REST subject. (6.0002)

*Comments:*

*“Even if you don't plan to use python, these classes are great for understand the foundational coding principles and best practices in coding. Second part is recommended for those more interested in data science.” (2015) *

*"Good way to build up your base knowledge of coding. If you take both 6.001 and 6.002, you will have micro-quiz every two weeks. If you don't like quizzes, take 6.00 instead (only midterm and final exams)" (2017)*

**6.01 Introduction to EECS I (Subject Canceled)**

*D. M. Freeman, L. P. Kaelbling, T. Lozano-Perez*

An integrated introduction to electrical engineering and computer science, taught using substantial laboratory experiments with mobile robots. Key issues in the design of engineered artifacts operating in the natural world: measuring and modeling system behaviors; assessing errors in sensors and effectors; specifying tasks; designing solutions based on analytical and computational models; planning, executing, and evaluating experimental tests of performance; refining models and designs. Issues addressed in the context of computer programs, control systems, probabilistic inference problems, circuits and transducers, which all play important roles in achieving robust operation of a large variety of engineered systems.

**6.862 Applied Machine Learning (Formerly 6.884)**

*Staff (Spring Term Only)*

The goal of this graduate-level class is to introduce students outside computer science to effective use of machine learning methods. The course is run alongside 6.036 and students must satisfy all the 6.036 requirements. In addition, students complete a semester long guided research project where they explore, formulate, implement, apply, and evaluate machine learning methods in the context of a problem in their research area. Registration is by permission of the instructors. Enrollment is limited.

*Comment:*

*it is excellent and in **fact, created for students other than Course 6 who try to get a graduate level credit for work in **machine learning. In particular, 6.884 includes 6.036 (you’ll do all the assignments, projects, **exams etc.) plus a graduate level, semester-long project in a topic of your interest that, in one **way or another, includes machine learning. Both are offered in the Spring.*

**6.034 Artificial Intelligence **

*K. Koile*

Introduces representations, techniques, and architectures used to build applied systems and to account for intelligence from a computational point of view. Applications of rule chaining, heuristic search, constraint propagation, constrained search, inheritance, and other problem-solving paradigms. Applications of identification trees, neural nets, genetic algorithms, and other learning paradigms. Speculations on the contributions of human vision and language systems to human intelligence. Meets with HST.947 spring only. 4 Engineering Design Points.

*Comments:*

*“Prof. Winston loves Design Computation students! In fact, the course requires a great attention and attendance to follow the content. Quizzes get harder gradually but do not involve any actual math or coding, besides, Prof. Winston allows Design Computation students not to take quizzes but write a final paper instead. However, I suggest attending all classes and taking the quizzes. Very rich and enjoying lectures with guest lecturers time to time.” (2014)*

*“This is really technically very enriching. You actually get to code searches, neural networks, nearest neighbor, boosting algorithms and other expert systems. Gives you a lot of confidence.”*

*“I* *think everyone has said this at some point but this might be the best class at MIT? Highly recommend, I feel that it may as well be mandatory for computational students especially for the first semester? Enough said. The best class ever? Ever.” (2015)*

"A fantastic class - great introduction to the actual computer science underlying AI. Perhaps contrary to previous years, Design + Computation students complete all work for this course (psets and quizzes), alongside some kind of final project. The homework is in Python and can be difficult if you are new to it." (2016)

*"High recommended! If you are interested in AI or just want to learn some basic knowledge of CS, then 6.034 is a must take class. 2017 version has a graduate addition, where you are required to take an reading class led by Prof. Jerald Sussman, which is also really good. If you don't know Python, you can take 6.00 at the same time. This will take more time but it definitely worth." (2017)*

**6.036 Introduction to Machine Learning **

*L. P. Kaelbling* *(Fall and Spring Term)*

Introduces principles, algorithms, and applications of machine learning from the point of view of modeling and prediction; formulation of learning problems; representation, over-fitting, generalization; clustering, classification, probabilistic modeling; and methods such as support vector machines, hidden Markov models, and Bayesian networks.

*Comment:*

*“The initial part of the course tackles a number of algorithms that are also taught in 6.034 'Intro to AI', and subsequently includes more statistical inference approaches to machine learning. The course includes a broad a fast-paced overview of machine-learning algorithms, largely focusing on statistical learning. While it teaches some of the same algorithms as Intro to AI, the focus of the professors is first on the mathematical foundations of the algorithm rather than on the broader picture and application of the technique. By focusing first on the mathematical foundations, rather than on the implementation, it can be hard for spatial thinkers to follow the course. The course lectures and contents are disorganized, and having three lecturers makes the course chronology even more fast-paced and confusing. Some basic knowledge of linear-algebra will be helpful, and basic knowledge of programming in python is required. The course includes 3 or 4 projects that are not very involved, but force you to implement the statistical algorithms in a real-world application. Getting graduate credit is a difficult task, the main professor, R. Barzilay, is not very open to it and the large class size makes her hesitant to commit any extra time into the development of the additional course work generally required for graduate credit. If you are persistent and already have a personal project related to the course, the professor might consider graduate credit for the course.” (2015)*

**6.041A Introduction to Probability 1 **

*J.N. Tsitsiklis*

Provides an introduction to probability theory and the modeling and analysis of probabilistic systems. Probabilistic models, conditional probability. Discrete and continuous random variables. Expectation and conditional expectation. Limit Theorems. Students taking graduate version complete additional assignments. Combination of 6.041A and 6.041B counts as a REST subject.

**6.041B Introduction to Probability II**

Both courses have their Graduate counterparts: 6.431A and 6.431B. They used to be a single major course known as Applied Probability.

6.042J Mathematics for Computer Science

*A. Meyer, T. Leighton*

Elementary discrete mathematics for computer science and engineering. Emphasis on mathematical definitions and proofs as well as on applicable methods. Topics: formal logic notation, proof methods; induction, well-ordering; sets, relations; elementary graph theory; integer congruences; asymptotic notation and growth of functions; permutations and combinations, counting principles; discrete probability. Further selected topics such as: recursive definition and structural induction; state machines and invariants; recurrences; generating functions.

**6.045J Automata, Computability and Complexity **

*Staff*

Slower paced than 6.840J/18.404J. Introduces basic mathematical models of computation and the finite representation of infinite objects. Turing machines. Partial recursive functions. Church's Thesis. Undecidability. Reducibility and completeness. Time complexity and NP-completeness. Probabilistic computation. Interactive proof systems.

*Comment:*

*"This is a smaller/slower, but still very compact and demanding, version of 18.4041/6.840 Theory of Computation. Intended for Undergraduate students in EECS and Mathematics." (2017)*

**6.046J Design and Analysis of Algorithms**

*S. Devadas*

Techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics include sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; greedy algorithms; amortized analysis; graph algorithms; and shortest paths. Advanced topics may include network flow; computational geometry; number-theoretic algorithms; polynomial and matrix calculations; caching; and parallel computing.

*Comment:*

*“A very hardcore undergrad class of all the ultimate stuff a programmer should know. Extensive mathematical modeling, algorithmic paradigms and brain exercises. All algorithms are described in pseudo-code, so it doesn't matter which computer language you speak. Students are expected to be familiar with beginner's algorithms and data structures (have a look at 6.006). Although the basics will be covered in class, it quickly goes wild from there. *

*I took this class in fall 2009 with Erik Demaine. It is now taught by Charles Leiserson, the author of THE textbook, Introduction to Algorithms. And course 6 problem sets are just amazingly entertaining. Did I mention hardcore? Yes. If you consider 6.034 time consuming, don't even try this. It's quite some accomplishment though, and personally I think it's useful and enlightening, especially the way it inquiries into computability.”*

**6.170 Software Studio (Undergraduate)**

D. N. Jackson

Covers design and implementation of software systems, using web applications as the platform. Emphasizes the role of conceptual design in achieving clarity, simplicity, and modularity. Students complete open-ended individual assignments and a major team project. Enrollment may be limited.

**6.431 A/B ****Intro to Probability (I and II)**

*Staff*

Provides an introduction to probability theory and the modeling and analysis of probabilistic systems. Probabilistic models, conditional probability. Discrete and continuous random variables. Expectation and conditional expectation. Limit Theorems. Students taking graduate version complete additional assignments. (431.A)

Continuation of 6.431A. Further topics about random variables. Bayesian estimation and hypothesis testing. Elements of statistical inference. Bernoulli and Poisson processes. Markov chains. Students taking graduate version complete additional assignments. (431.B)

*Comment:*

*"This class is a challenge. Class is everyday (lectures, labs, and tutorials), and homework is assigned weekly. The exams, however, account for most of the grade. While the class content starts off easily enough, it quickly gets much more complicated. The teaching style of the class is geared toward mathematicians and computer scientists, so while the content lends itself to visual/spatial diagrams and descriptions, the class mostly sticks to formulas and proofs. The lectures are theoretical, the homework is practical, and the exams are quite tricky in testing your ability to adapt and apply what you learn to real-world scenarios. There are abundant alternative resources available (book, online course, other video lectures, etc.), but I only recommend taking this class if you are seriously interested in using the topic in your work." (2017)*

**6.803 The Human Intelligence Enterprise**

*Staff*

Analyzes seminal work directed at the development of a computational understanding of human intelligence, such as work on object tracking, object recognition, change representation, language evolution, and the role of symbols in learning and communication. Reviews visionary ideas of Turing, Minsky, and other influential thinkers. Examines the role of brain scanning, systems neuroscience, and cognitive psychology. Emphasis on discussion and analysis of original papers. Students taking graduate version complete additional exercises and a substantial term project. Enrollment limited.

*Comments:*

*One of the best classes I’ve taken so far at MIT. Includes a series of AI-related readings, but the most interesting part of the class is the breaking down of those papers form different perspectives. This class teaches you not only how to identify, analyze and boiling down other (important) people’s ideas, but articulating your own thought through high-quality, cohesive and clean-of-jargon writing. The instructor is really invested in the class. It’s good to take it if you have taken 6.034, but you can make it without having taken it. Couldn’t be more highly recommended.*

*“I loved this class. Patrick Winston is a really good teacher with deep knowledge of the AI discourse and current issues in the field and a very special humor that makes the class very enjoyable. In this class you will also learn how to effectively communicate your ideas in any form (essays, letters, oral presentations etc.) –a skill that is rarely being taught in such a profound way. I definitely recommend it!” (2013)*

*“It is a great course, mind opening. Assignments and in course discussion focuses on communication, while course material is mostly about seminal papers on AI and Human intelligence. Papers are mostly goes around human vision and language.” (2013)*

* “This is a great class!! We read a couple of papers on AI every week and write about them. The class not only makes you very knowledgeable about the powerful ideas in the last 50yrs of AI (models of vision and language) but also helps you tune your technical paper writing skills. Patrick is just a wonderful person and a teacher. I enjoyed every bit of his class.”*

*“One of the best classes I took so far. I highly recommend it because I learned a lot about AI but also about reading, writing and life in general. We had to read a paper and write a one page response for every class. Sometimes as a normal essay, sometimes as a letter, as a recommendation or research proposal etc. The readings have been very tough though because they are about CS AI and we as designers don't really speak their language. But it was very interesting and very useful in the end. I think it is not easy to get in and if you have been accepted you have to take it very serious. I really enjoyed.”*

**6.801 Machine Vision**

(Not offered 2017-18)

*B.K.P. Horn*

Deriving a symbolic description of the environment from an image. Understanding physics of image formation. Image analysis as an inversion problem. Binary image processing and filtering of images as preprocessing steps. Recovering shape, lightness, orientation, and motion. Using constraints to reduce the ambiguity. Photometric stereo and extended Gaussian sphere. Applications to robotics; intelligent interaction of machines with their environment. Students taking the graduate version complete different assignments.

**6.804 Computational Cognitive Science**

*J. Tenenbaum*

*Comment:*

*“This is a great class covering methods for mathematically modeling cognitive processes, primarily Bayesian and Statistical. You need to know matlab and have a good foundation in probability theory or statistical mechanics to do well, however the class involves a final project so there are interesting opportunities. It will change how you think about thinking and computation!” (2015)*

**6.809J Interactive Music Systems**

*E. Egozy, L. Kaelbling*

Explores audio synthesis, musical structure, human computer interaction (HCI), and visual presentation for the creation of interactive musical experiences. Topics include audio synthesis; mixing and looping; MIDI sequencing; generative composition; motion sensors; music games; and graphics for UI, visualization, and aesthetics. Includes weekly programming assignments in python. Teams build an original, dynamic, and engaging interactive music system for their final project. Limited to 18.

*Comment:*

*"The instructors give priority to Music majors and minors. It may be difficult to get in if your not either one." (2017)*

**6.834J Cognitive Robotics **

*Staff*

Cognitive robotics addresses the emerging field of autonomous systems possessing artificial reasoning skills. Successfully-applied algorithms and autonomy models form the basis for study, and provide students an opportunity to design such a system as part of their class project. Theory and application are linked through discussion of real systems such as the Mars Exploration Rover (maybe outdated description). http://student.mit.edu/catalog/search.cgi?search=6.834J&style=verbatim

**6.835 Intelligent Multimodal User Interfaces **

(Not offered 2017-18)

*Staff*

Implementation and evaluation of intelligent multi-modal user interfaces, taught from a combination of hands-on exercises and papers from the original literature. Topics include basic technologies for handling speech, vision, pen-based interaction, and other modalities, as well as various techniques for combining modalities. Substantial readings and a term project, where students build an interface to illustrate one or more themes of the course.

*Comment:*

*“The course covers tools and methods used for human computer interaction in general. It requires weekly readings and write ups, 4 mini projects and one final project. It covers sketch recognition (more in technical drawings term), speech recognition, gesture recognition, haptic interfaces etc. It is a little bit computation heavy and requires a background on programming. It is especially helpful for the ones thinking on tool development and interactive software.*

*Important Note: grades are not that high, should be noted!” (2013)*

**6.837 Computer Graphics**

*J. Soloman*

Introduction to computer graphics algorithms, software and hardware. Topics include ray tracing, the graphics pipeline, transformations, texture mapping, shadows, sampling, global illumination, splines, animation and color. 6 Engineering Design Points. http://student.mit.edu/catalog/search.cgi?search=6.837&style=verbatim

### (or alternatively CS175 Computer Graphics at Harvard (Steven Gortler))

*Comment:*

*“I personally took CS175 from Harvard University (FAS-Faculty of Arts and Sciences) with Professor Steven Gortler because at that time 6.837 was not offered and because Gortler is one of the early people involved in the CG industry. Both courses require comfort with multi-hundred lines of C++ code (or at least Java - but in no ways the two languages should be considered as similar) and basic linear algebra (e.g. know about vector spaces, how to build and multiply matrices which is quite easy to do nowadays with all these online teaching videos that exist). You get to know the algorithmic concepts underlying transformations, animation, simulation (material, light, physics), color theory, geometric modeling and you will acquire a lot of programming experience and gain confidence. Depending on which course you choose, the aforementioned topics are covered at different percentages. For example, CS175 focuses a lot on transformations, but 6.837 focuses a lot on raycasting-raytracing a.k.a rendering. As an Architecture and Computational Design student you will find almost all concepts intuitively familiar as we are all experienced with 3D graphics. But in a course like this, you learn what happens behind every move you do in say Rhino, Max, or Maya - hence you gain a deep understanding of all these tools you interact with every day.*

The details of each course can be found online: http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-837-computer-graphics-fall-2012/

http://sites.fas.harvard.edu/~lib175/

*"Overall, in my opinion CG is a quite fascinating field that is rooted in our Computational Design field in many ways, that definitely worths taking despite the devotion needed to complete the assignments and keep up with all the concepts introduced.” (2105)*

**6.849 Geometric Folding Algorithms: Linkages, Origami, Polyhedra **

(Not offered 2017-18)

*Staff*

Covers discrete geometry and algorithms underlying the reconfiguration of foldable structures, with applications to robotics, manufacturing, and biology. Linkages made from one-dimensional rods connected by hinges: constructing polynomial curves, characterizing rigidity, characterizing unfoldable versus locked, protein folding. Folding two-dimensional paper (origami): characterizing flat foldability, algorithmic origami design, one-cut magic trick. Unfolding and folding three-dimensional polyhedra: edge unfolding, vertex unfolding, gluings, Alexandrov's Theorem, hinged dissections.

*Comment:*

*“The famous origami class! It covers all the works of that topic, done and unpublished, with guest lectures and off-class contacts with many artists and scientists in the field. The models are very mathematical, but the problems are extremely everyday life and nerdy (in an interesting way), and the solutions are highly applicable to design. Erik carefully balanced the aesthetic and scientific contents. In fact half of the class was from design background and everybody had fun with their final projects. *

*If you haven't taken any class with the Demaines, this is it. It's fun, fun, fun. “*

**6.850 Geometric Computing**

(Offered 2017-2018)

*Staff*

Introduction to the design and analysis of algorithms for geometric problems, in low- and high-dimensional spaces. Algorithms: convex hulls, polygon triangulation, Delaunay triangulation, motion planning, pattern matching. Geometric data structures: point location, Voronoi diagrams, Binary Space Partitions. Geometric problems in higher dimensions: linear programming, closest pair problems. High-dimensional nearest neighbor search and low-distortion embeddings between metric spaces. Geometric algorithms for massive data sets: external memory and streaming algorithms. Geometric optimization.

*Comment:*

*“I found this one very rewarding. It is a course about algorithms in two to n-dimensional spaces, NOT Computational Geometry in the sense of NURBS etc. If you haven't taken 6.046, the learning curve will be quite steep though (as it was in my case). If I'd do it over again, I'd first take 6.042 and/or 6.046, for a more thorough understanding and to avoid having to learn the fundamentals in parallel with the actual content of the course.”*

**6.860J Statistical Learning Theory and Applications**

*T. Poggio, *

Provides students with the knowledge needed to use and develop advanced machine learning solutions to challenging problems. Covers foundations and recent advances of machine learning in the framework of statistical learning theory. Focuses on regularization techniques key to high-dimensional supervised learning. Starting from classical methods such as regularization networks and support vector machines, addresses state-of-the-art techniques based on principles such as geometry or sparsity, and discusses a variety of algorithms for supervised learning, feature selection, structured prediction, and multitask learning. Also focuses on unsupervised learning of data representations, with an emphasis on hierarchical (deep) architectures.

**6.861J Aspects of Computational Theory of Intelligence**

*T. Poggio, *

Integrates neuroscience, cognitive and computer science to explore the nature of intelligence, how it is produced by the brain, and how it can be replicated in machines. Discusses an array of current research connected through an overarching theme of how it contributes to a computational account of how humans analyze dynamic visual imagery to understand objects and actions in the world.

**6.863J Natural Language and the Computer Representation of Knowledge**

(Offered 2017-2018)

*Staff*

Explores the relationship between the computer representation and acquisition of knowledge and the structure of human language, its acquisition, and hypotheses about its differentiating uniqueness. Emphasizes development of analytical skills necessary to judge the computational implications of grammatical formalisms and their role in connecting human intelligence to computational intelligence. Uses concrete examples to illustrate particular computational issues in this area.

*Comment:*

*“A very interesting class that studies human language from a computational perspective. The emphasis is on understanding how closely computers can represent the way humans acquire and use a language. The class gives a comprehensive overview of contemporary approaches to language processing, including efficient parsing algorithms for context free grammars, corpus-based methods and statistical machine translation. There are about six assignments in python and a final group project.*

*I found Prof. Berwick explains algorithms extremely well and clear. If you attend all the lectures, doing assignments should not be a problem.” (2013)*

*"This is an excellent Graduate class at the interface of theoretical computation and linguistics. Actually, what this class should have been called is Computational Linguistics, instead of say Natural Language Processing. If you are interested in using machine learning or other modern AI to analyze texts, sounds, websites, online reviews, etc. then you should take another class that deals with the engineering side of language (e.g. 6.864). This class is more on the science side of language and uses computation (finite state transducers, context-free grammars, lambda calculus) to model syntax and semantics of human language. This class isn't offered regularly, but if by any chance it is offered while you're at MIT, then you should take it. Be aware that their grading policies are very weird." (2018)*

**6.865 Advanced Computational Photography**

(Not offered 2016-17, Not offered 2018-19)

*Staff*

*Comment:*

*“Computational Photography is a not so well known field in the Computer Graphics and Vision industry as it is new with very few conferences and journals actually dedicated to the field. However, we as architects spend quite a lot of time on Photoshop and we are thus familiar with all that image processing stuff offered from Adobe. 6.865 is a course that basically goes behind software packages such as Photoshop (and other image processing and manipulation software) and teaches you the underlying algorithms behind them (not all but many). You get to know fascinating computational stuff including image structure, image formation, cameras, HDR imaging, panoramas, lighting etc. The course is well structured but be aware that things are really strict in terms of assignment submission a.k.a. just don’t forget to submit an assignment (11 in total). This course was previously based on Python, but the Professor switched to C++. For Graduate students there is one extra question (relatively small and not so difficult) in each assignment plus one Siggraph paper review of your choice at the end of the semester. One important thing that I should mention is that for those that are interested in modern Computer Vision stuff, this course is definitely one great option as I believe that there are a lot of overlaps in the materials taught.” (2015)*

**6.868J The Society of Mind **

(Not offered 2016-17, Not offered 2018-19)

*Marvin Minsky*

Introduction to a theory that tries to explain how minds are made from collections of simpler processes. Treats such aspects of thinking as vision, language, learning, reasoning, memory, consciousness, ideals, emotions, and personality. Incorporates ideas from psychology, artificial intelligence, and computer science to resolve theoretical issues such as wholes vs. parts, structural vs. functional descriptions, declarative vs. procedural representations, symbolic vs. connectionist models, and logical vs. common-sense theories of learning. Enrollment limited.

*Comments:*

*“Very unstructured class...there is no real program for this class. Discussions based on Minsky's Society of Mind and Emotion machine. Both of which tries to provide a distributed models for human intelligence. Minsky's talks are very interesting and opens up your mind. You have to write a couple of papers in the semester. Relatively easy class and very interesting content. Shouldn’t miss it.”*

*“I would not recommend that class. It is nice to see Marvin Minsky talking. The problem sets have been made by his TAs and have been pretty hard and not very useful for me. I think if you read one of his books then you know almost all of his class. I would have enjoyed if I would have taking it as a listener without any pressure.”*

*“The class is not well organized but I would recommend taking it as a listener because Marvin Minsky is… Marvin Minsky! It’s great to be in his class and listen to him talking.” (2013)*

*"Subject Cancelled" (2017)*

**6.901J Innovation Engineering: Moving Ideas to Impact**

*F. Murray*

Designed for students to gain the perspective of a Chief Technology Officer of a start-up, large corporation, or a not-for-profit. Details the innovation process, from an idea's inception through impact in the economy, regardless of organizational setting. Explores how solutions are developed to become ready for broader market deployment. Includes testing and development of the problem-solution fit, probing of solutions for robustness, and testing of both technical and operational scaling of proposed solutions. Examines the human aspects of innovation, specifically issues of team building and readiness. Considers the broader system for innovation, including the role of key stakeholders in shaping its success in order to arrive at an impactful solution. Addresses intellectual property, the effect of regulations and social and cultural differences across varied global markets, and the personal skillset necessary to align and manage these issues.