Animation is a compelling and effective form of expression; it engages viewers …
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 is the third of three lessons that make the connection between …
This is the third of three lessons that make the connection between programming and algorithms. In this lesson students continue to work with the "Human Machine Language" to get creative designing more algorithms for playing cards. One command is added to the language from the previous lesson (SWAP) that allows positions of cards to change. With the addition of swap the challenge is to design an algorithm that will move the minimum card to the front of the list while keeping the relative order of all the other cards the same. If that is achieved some other Human Machine Language challenges are available.
This course covers the algorithmic and machine learning foundations of computational biology …
This course covers the algorithmic and machine learning foundations of computational biology combining theory with practice. We cover both foundational topics in computational biology, and current research frontiers. We study fundamental techniques, recent advances in the field, and work directly with current large-scale biological datasets.
With the growing availability and lowering costs of genotyping and personal genome …
With the growing availability and lowering costs of genotyping and personal genome sequencing, the focus has shifted from the ability to obtain the sequence to the ability to make sense of the resulting information. This course is aimed at exploring the computational challenges associated with interpreting how sequence differences between individuals lead to phenotypic differences in gene expression, disease predisposition, or response to treatment.
The course covers the basic models and solution techniques for problems of …
The course covers the basic models and solution techniques for problems of sequential decision making under uncertainty (stochastic control). We will consider optimal control of a dynamical system over both a finite and an infinite number of stages. This includes systems with finite or infinite state spaces, as well as perfectly or imperfectly observed systems. We will also discuss approximation methods for problems involving large state spaces. Applications of dynamic programming in a variety of fields will be covered in recitations.
In this presentation and discussion for high school students, students will learn …
In this presentation and discussion for high school students, students will learn a simple definition for algorithm and discuss the ways that algorithms shape social media content. Students will question whether the algorithms in their own social media allow them to pursue their interests or limit them. Students will explore ways to adjust settings, privacy and ad preferences to affect the algorithms in the platforms they use.
This subject describes and illustrates computational approaches to solving problems in systems …
This subject describes and illustrates computational approaches to solving problems in systems biology. A series of case-studies will be explored that demonstrate how an effective match between the statement of a biological problem and the selection of an appropriate algorithm or computational technique can lead to fundamental advances. The subject will cover several discrete and numerical algorithms used in simulation, feature extraction, and optimization for molecular, network, and systems models in biology.
This is a foundation subject in modern software development techniques for engineering …
This is a foundation subject in modern software development techniques for engineering and information technology. The design and development of component-based software (using C# and .NET) is covered; data structures and algorithms for modeling, analysis, and visualization; basic problem-solving techniques; web services; and the management and maintenance of software. Includes a treatment of topics such as sorting and searching algorithms; and numerical simulation techniques. Foundation for in-depth exploration of image processing, computational geometry, finite element methods, network methods and e-business applications. This course is a core requirement for the Information Technology M. Eng. program. This class was also offered in Course 13 (Department of Ocean Engineering) as 13.470J. In 2005, ocean engineering subjects became part of Course 2 (Department of Mechanical Engineering), and the 13.470J designation was dropped in lieu of 2.159J.
In this 25-day module of Grade 4, students extend their work with …
In this 25-day module of Grade 4, students extend their work with whole numbers. They begin with large numbers using familiar units (hundreds and thousands) and develop their understanding of millions by building knowledge of the pattern of times ten in the base ten system on the place value chart (4.NBT.1). They recognize that each sequence of three digits is read as hundreds, tens, and ones followed by the naming of the corresponding base thousand unit (thousand, million, billion).
Find the rest of the EngageNY Mathematics resources at https://archive.org/details/engageny-mathematics.
This course provides an introduction to mathematical modeling of computational problems. It …
This course provides an introduction to mathematical modeling of computational problems. It covers the common algorithms, algorithmic paradigms, and data structures used to solve these problems. The course emphasizes the relationship between algorithms and programming, and introduces basic performance measures and analysis techniques for these problems.
This course is an introduction to mathematical modeling of computational problems, as …
This course is an introduction to mathematical modeling of computational problems, as well as common algorithms, algorithmic paradigms, and data structures used to solve these problems. It emphasizes the relationship between algorithms and programming and introduces basic performance measures and analysis techniques for these problems.
This course provides an introduction to mathematical modeling of computational problems. It …
This course provides an introduction to mathematical modeling of computational problems. It covers the common algorithms, algorithmic paradigms, and data structures used to solve these problems. The course emphasizes the relationship between algorithms and programming, and introduces basic performance measures and analysis techniques for these problems.
This course teaches techniques for the design and analysis of efficient algorithms, …
This course teaches techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics covered include: sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; amortized analysis; graph algorithms; shortest paths; network flow; computational geometry; number-theoretic algorithms; polynomial and matrix calculations; caching; and parallel computing. This course was also taught as part of the Singapore-MIT Alliance (SMA) programme as course number SMA 5503 (Analysis and Design of Algorithms).
This book acknowledges our changing information landscape, covering key concepts in information …
This book acknowledges our changing information landscape, covering key concepts in information literacy to support a research process with intention. We start by critically examining the online environment many of us already engage with every day, looking at algorithms, the attention economy, information disorder and cynicism, information hygiene, and fact-checking. We then move into an exploration of information source types, meaningful research topics, keyword choices, effective search strategies, library resources, Web search considerations, the ethical use of information, and citation.
This is an introductory course on computational thinking. We use the Julia …
This is an introductory course on computational thinking. We use the Julia programming language to approach real-world problems in varied areas, applying data analysis and computational and mathematical modeling. In this class you will learn computer science, software, algorithms, applications, and mathematics as an integrated whole. Topics include image analysis, particle dynamics and ray tracing, epidemic propagation, and climate modeling.
Dear student! You are starting to learn about computation and its purpose. …
Dear student! You are starting to learn about computation and its purpose. This course covers the same materials as an introductory class for undergraduate computer science majors. Its curriculum, which includes software, hardware and algorithms, resembles that of a one- or two-semester first-year college course or the high school Advanced Placement (AP) Computer Science. It does not require a formal computer science background.
This course is a continuation of the first-semester course titled Introduction to …
This course is a continuation of the first-semester course titled Introduction to Computer Science I. It will introduce the student to a number of more advanced Computer Science topics, laying a strong foundation for future academic study in the discipline. The student will begin with a comparison between Java--the programming language utilized last semester--and C++, another popular, industry-standard programming language. The student will then discuss the fundamental building blocks of Object-Oriented Programming, reviewing what they have learned learned last semester and familiarizing themselves with some more advanced programming concepts. The remaining course units will be devoted to various advanced topics, including the Standard Template Library, Exceptions, Recursion, Searching and Sorting, and Template Classes. By the end of the class, the student will have a solid understanding of Java and C++ programming, as well as a familiarity with the major issues that programmers routinely address in a professional setting. Upon successful completion of this course, the student will be able to: Demonstrate an understanding of the concepts of Java and C++ and how they are used in Object-Oriented Programming; Demonstrate an understanding of the history and development of Object-Oriented Programming; Explain the importance of the C++ Standard Template Library and how basic components are used; Demonstrate a basic understanding of the importance of run-time analysis in programming; Demonstrate an understanding of important sorting and search routines in programming; Demonstrate an understanding of the generic usage of templates in programming for C++ and Java; Compare and contrast the features of Java and C++. (Computer Science 102; See also: Mathematics 303)
This is MIT’s introductory course on deep learning methods with applications to …
This is MIT’s introductory course on deep learning methods with applications to computer vision, natural language processing, biology, and more! Students will gain foundational knowledge of deep learning algorithms and get practical experience in building neural networks in TensorFlow. Course concludes with a project proposal competition with feedback from staff and panel of industry sponsors. Prerequisites assume calculus (i.e. taking derivatives) and linear algebra (i.e. matrix multiplication), and we’ll try to explain everything else along the way! Experience in Python is helpful but not necessary.
This course introduces principles, algorithms, and applications of machine learning from the …
This course introduces principles, algorithms, and applications of machine learning from the point of view of modeling and prediction. It includes formulation of learning problems and concepts of representation, over-fitting, and generalization. These concepts are exercised in supervised learning and reinforcement learning, with applications to images and to temporal sequences. This course is part of the Open Learning Library, which is free to use. You have the option to sign up and enroll in the course if you want to track your progress, or you can view and use all the materials without enrolling.
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.