Courses tagged with "Nutrition" (421)
This course is offered to graduate students and addresses issues regarding ultrafast optics. Topics covered include: Generation, propagation and applications of ultrashort pulses (nano-, pico-, femto-, attosecond pulses); Linear and nonlinear pulse shaping processes: Optical solitons, Pulse compression; Laser principles: Single- and multi-mode laser dynamics, Q-switching, Active and passive mode-locking; Pulse characterization: Autocorrelation, FROG, SPIDER; Noise in mode-locked lasers and its limitations in measurements; Laser amplifiers, optical parametric amplifiers, and oscillators; Applications in research and industry: Pump-probe techniques, Optical imaging, Frequency metrology, Laser ablation, High harmonic generation.
The network is what makes the cloud. The cloud’s key capabilities—the ability to share infrastructure, the ability to move and scale applications across servers, massive parallelism, virtualization, and worldwide connectivity—are all rooted in the network. Learn how it all works!
Have you ever wished you knew how to program, but had no idea where to start from? This course will teach you how to program in Scratch, an easy to use visual programming language. More importantly, it will introduce you to the fundamental principles of computing and it will help you think like a software engineer.
Robots today move far too conservatively, using control systems that attempt to maintain full control authority at all times. Humans and animals move much more aggressively by routinely executing motions which involve a loss of instantaneous control authority. Controlling nonlinear systems without complete control authority requires methods that can reason about and exploit the natural dynamics of our machines.
This course discusses nonlinear dynamics and control of underactuated mechanical systems, with an emphasis on machine learning methods. Topics include nonlinear dynamics of passive robots (walkers, swimmers, flyers), motion planning, partial feedback linearization, energy-shaping control, analytical optimal control, reinforcement learning/approximate optimal control, and the influence of mechanical design on control. Discussions include examples from biology and applications to legged locomotion, compliant manipulation, underwater robots, and flying machines.
Acknowledgements
Professor Tedrake would like to thank John Roberts for his help with the course and videotaping the lectures.
6.831/6.813 examines human-computer interaction in the context of graphical user interfaces. The course covers human capabilities, design principles, prototyping techniques, evaluation techniques, and the implementation of graphical user interfaces. Deliverables include short programming assignments and a semester-long group project. Students taking the graduate version also have readings from current literature and additional assignments.
This course will introduce you to the field of computer science and the fundamentals of computer programming. Introduction to Computer Science I is specifically designed for students with no prior programming experience, and taking this course does not require a background in Computer Science. This course will touch upon a variety of fundamental topics within the field of Computer Science and will use Java, a high-level, portable, and well-constructed computer programming language developed by Sun Microsystems (now Oracle), to demonstrate those principles. We will begin with an overview of the course topics as well as a brief history of software development. We will cover basic object-oriented programming terminology and concepts such as objects, classes, inheritance, and polymorphism, as well as the fundamentals of Java, its primitive data types, relational operators, control statements, exception handling, and file input /output. By the end of the course, you should have a strong understanding of the fundam…
If you invest in financial markets, you may want to predict the price of a stock in six months from now on the basis of company performance measures and other economic factors. As a college student, you may be interested in knowing the dependence of the mean starting salary of a college graduate, based on your GPA. These are just some examples that highlight how statistics are used in our modern society. To figure out the desired information for each example, you need data to analyze. The purpose of this course is to introduce you to the subject of statistics as a science of data. There is data abound in this information age; how to extract useful knowledge and gain a sound understanding in complex data sets has been more of a challenge. In this course, we will focus on the fundamentals of statistics, which may be broadly described as the techniques to collect, clarify, summarize, organize, analyze, and interpret numerical information. This course will begin with a brief overview of the discipline of stat…
Learn how to transform information from a format efficient for computation into a format efficient for human perception, cognition, and communication. Explore elements of computer graphics, human-computer interaction, perceptual psychology, and design in addition to data processing and computation.
Because we have compiler programs, software developers often take the process of compilation for granted. However, as a software developer, you should cultivate a solid understanding of how compilers work in order to develop the strongest code possible and fully understand its underlying language. In addition, the compilation process comprises techniques that are applicable to the development of many software applications. As such, this course will introduce you to the compilation process, present foundational topics on formal languages and outline each of the essential compiler steps: scanning, parsing, translation and semantic analysis, code generation, and optimization. By the end of the class, you will have a strong understanding of what it means to compile a program, what happens in the process of translating a higher-level language into a lower-level language, and the applicability of the steps of the compilation process to other applications.
Week 1: A first simple neuron model
Week 2: Hodgkin-Huxley models and biophysical modeling
Week 3: Two-dimensional models and phase plane analysis
Week 4: Two-dimensional models (cont.)/ Dendrites
Week 5: Variability of spike trains and the neural code
Week 6: Noise models, noisy neurons and coding
Week 7: Estimating neuron models for coding and decoding
Before your course starts, try the new edX Demo where you can explore the fun, interactive learning environment and virtual labs. Learn more.
Though we may not recognize them in our everyday activities, databases are everywhere. They are hidden behind your online banking profile, airline reservation systems, medical records, and even employment records. This course will provide students with a general overview of databases, introducing you to database history, modern database systems, the different models used to design a database, and Structured Query Language (SQL), which is the standard language used to access and manipulate databases. Many of the principles of database systems carry to other areas in computer science, especially operating systems. Databases are often thought of as one of the core computer science topics, since many other areas in the discipline have been derived from this area.
This is a reading and discussion subject on issues in the engineering of software systems and software development project design. It includes the present state of software engineering, what has been tried in the past, what worked, what did not, and why. Topics may differ in each offering, but will be chosen from: the software process and lifecycle; requirements and specifications; design principles; testing, formal analysis, and reviews; quality management and assessment; product and process metrics; COTS and reuse; evolution and maintenance; team organization and people management; and software engineering aspects of programming languages.
Software engineering is a discipline that allows us to apply engineering and computer science concepts in the development and maintenance of reliable, usable, and dependable software. The concept of software engineering was first discussed at the 1968 NATO Science Committee in Germany. Today, many practitioners still debate over the term software engineering, often arguing that this discipline does not meet the criteria of engineering; rather, it should be called software development. There are several areas to focus on within software engineering, such as design, development, testing, maintenance, and management. Software development outside of the classroom is a very complex process, mostly because real-world software is much larger and more complex. The purpose of this course is to present software engineering as a body of knowledge. The course is designed to present software engineering concepts and principles in parallel with the software development life cycle. The course will begin with an introducti…
In the first unit, we will learn the mechanics of editing and compiling a simple program written in C++. We will begin with a discussion of the essential elements of C++ programming: variables, loops, expressions, functions, and string class. Next, we will cover the basics of object-oriented programming: classes, inheritance, templates, exceptions, and file manipulation. We will then review function and class templates and the classes that perform output and input of characters to/from files. This course will also cover the topics of namespaces, exception handling, and preprocessor directives. In the last part of the course, we will learn some slightly more sophisticated programming techniques that deal with data structures such as linked lists and binary trees. This course contains a number of sample programs and review exercises. Through these exercises, students should better learn how to write functions, use the string class, and write elementary data structures such as linked lists and bina…
This course is an upper division computer science course that studies the design of programming languages. While most of the industry uses either procedural or object-oriented programming languages, there are entire families of other languages with certain strengths and weaknesses that make them attractive to a variety of problem domains. It is important to know about these less well-known yet powerful languages if you find yourself working in an area that could utilize their strengths. In this course, we will discuss the entire programming language family, starting with an introduction to programming languages in general and a discussion of the features and functionality that make up the modern programming language. From there, each unit will discuss a different family of programming languages, including Imperative, Object-Oriented, Functional, Scripting, and, Logical. For each language, you will learn about its computational model, syntax, semantics, and pragmatic considerations that shape the langua…
This intermediate computer programming course uncovers how to code long-lasting software using highly-productive Agile techniques to develop Software as a Service (SaaS) using Ruby on Rails. You will understand the new challenges and opportunities of SaaS versus shrink-wrapped software and learn to apply fundamental Rails programming techniques to the design, development, testing, and public cloud deployment of an Software as a Service (SaaS) application
Using best-of-breed tools that support modern development techniques including Behavior-Driven design, user stories, Test-Driven Development, velocity, and pair programming, learners will discover how modern programming language features in Ruby on Rails can improve productivity and code maintainability.
Weekly coding projects and quizzes will be part of the learning experience in this SaaS course. Those who successfully complete the assignments and earn a passing grade can get a verified certificate from BerkeleyX. The videos and homework assignments have been updated to use Ruby 2, Rails 4 and RSpec 3. The new class also includes embedded live chat with Teaching Assistants and other students and remote pair programming with other students.
In the last decade, the amount of data available to organizations has reached unprecedented levels. Data is transforming business, social interactions, and the future of our society. In this course, you will learn how to use data and analytics to give an edge to your career and your life. We will examine real world examples of how analytics have been used to significantly improve a business or industry. These examples include Moneyball, eHarmony, the Framingham Heart Study, Twitter, IBM Watson, and Netflix. Through these examples and many more, we will teach you the following analytics methods: linear regression, logistic regression, trees, text analytics, clustering, visualization, and optimization. We will be using the statistical software R to build models and work with data. The contents of this course are essentially the same as those of the corresponding MIT class (The Analytics Edge). It is a challenging class, but it will enable you to apply analytics to real-world applications.
The class will consist of lecture videos, which are broken into small pieces, usually between 4 and 8 minutes each. After each lecture piece, we will ask you a “quick question” to assess your understanding of the material. There will also be a recitation, in which one of the teaching assistants will go over the methods introduced with a new example and data set. Each week will have a homework assignment that involves working in R or LibreOffice with various data sets. (R is a free statistical and computing software environment we’ll use in the course. See the Software FAQ below for more info). In the middle of the class, we will run an analytics competition, and at the end of the class there will be a final exam, which will be similar to the homework assignments.
Trusted paper writing service WriteMyPaper.Today will write the papers of any difficulty.