Study of an area of current interest in theoretical computer science. Topic …
Study of an area of current interest in theoretical computer science. Topic varies from term to term. This course is a study of Behavior of Algorithms and covers an area of current interest in theoretical computer science. The topics vary from term to term. During this term, we discuss rigorous approaches to explaining the typical performance of algorithms with a focus on the following approaches: smoothed analysis, condition numbers/parametric analysis, and subclassing inputs.
While big data infiltrates all walks of life, most firms have not …
While big data infiltrates all walks of life, most firms have not changed sufficiently to meet the challenges that come with it. In this course, you will learn how to develop a big data strategy, transform your business model and your organization.
This course will enable professionals to take their organization and their own career to the next level, regardless of their background and position.
Professionals will learn how to be in charge of big data instead of being subject to it. In particular, they will become familiar with tools to:
assess their current situation regarding potential big data-induced changes of a disruptive nature, identify their options for successfully integrating big data in their strategy, business model and organization, or if not possible, how to exit quickly with as little loss as possible, and strengthen their own position and that of their organization in our digitalized knowledge economy The course will build on the concepts of product life cycles, the business model canvas, organizational theory and digitalized management jobs (such as Chief Digital Officer or Chief Informatics Officer) to help you find the best way to deal with and benefit from big data induced changes.
Students learn how engineers gather data and model motion using vectors. They …
Students learn how engineers gather data and model motion using vectors. They learn about using motion-tracking tools to observe, record, and analyze vectors associated with the motion of their own bodies. They do this qualitatively and quantitatively by analyzing several examples of their own body motion. As a final presentation, student teams act as engineering consultants and propose the use of (free) ARK Mirror technology to help sports teams evaluate body mechanics. A pre/post quiz is provided.
Students learn about the similarities between the human brain and its engineering …
Students learn about the similarities between the human brain and its engineering counterpart, the computer. Since students work with computers routinely, this comparison strengthens their understanding of both how the brain works and how it parallels that of a computer. Students are also introduced to the "stimulus-sensor-coordinator-effector-response" framework for understanding human and robot actions.
A Brief Introduction to Engineering Computation with MATLAB is specifically designed for …
A Brief Introduction to Engineering Computation with MATLAB is specifically designed for students with no programming experience. However, students are expected to be proficient in First Year Mathematics and Sciences and access to good reference books are highly recommended. Students are assumed to have a working knowledge of the Mac OS X or Microsoft Windows operating systems. The strategic goal of the course and book is to provide learners with an appreciation for the role computation plays in solving engineering problems. MATLAB specific skills that students are expected to be proficient at are: write scripts to solve engineering problems including interpolation, numerical integration and regression analysis, plot graphs to visualize, analyze and present numerical data, and publish reports.
Students wire up their own digital trumpets using a MaKey MaKey. They …
Students wire up their own digital trumpets using a MaKey MaKey. They learn the basics of wiring a breadboard and use the digital trumpets to count in the binary number system. Teams are challenged to play songs using the binary system and their trumpets, and then present them in a class concert.
Students create projects that introduce them to Arduino—a small device that can …
Students create projects that introduce them to Arduino—a small device that can be easily programmed to control and monitor a variety of external devices like LEDs and sensors. First they learn a few simple programming structures and commands to blink LEDs. Then they are given three challenges—to modify an LED blinking rate until it cannot be seen, to replicate a heartbeat pattern and to send Morse code messages. This activity prepares students to create more involved multiple-LED patterns in the Part 2 companion activity.
In the companion activity, students experimented with Arduino programming to blink a …
In the companion activity, students experimented with Arduino programming to blink a single LED. During this activity, students build on that experience as they learn about breadboards and how to hook up multiple LEDs and control them individually so that they can complete a variety of challenges to create fun patterns! To conclude, students apply the knowledge they have gained to create LED-based light sculptures.
Whether you want to light up a front step or a bathroom, …
Whether you want to light up a front step or a bathroom, it helps to have a light come on automatically when darkness falls. For this maker challenge, students create their own night-lights using Arduino microcontrollers, photocells and (supplied) code to sense light levels and turn on/off LEDs as they specify. As they build, test, and control these night-lights, they learn about voltage divider circuits and then experience the fundamental power of microcontrollers—controlling outputs (LEDs) based on sensor (photocell) input readings and if/then/else commands. Then they are challenged to personalize (and complicate) their night-lights—such as by using delays to change the LED blinking rate to reflect the amount of ambient light, or use many LEDs and several if/else statements with ranges to create a light meter. The possibilities are unlimited!
Students are challenged to design their own small-sized prototype light sculptures to …
Students are challenged to design their own small-sized prototype light sculptures to light up a hypothetical courtyard. To accomplish this, they use Arduino microcontrollers as the “brains” of the projects and control light displays composed of numerous (3+) light-emitting diodes (LEDs). With this challenge, students further their learning of Arduino fundamentals by exploring one important microcontroller capability—the control of external circuits. The Arduino microcontroller is a powerful yet easy-to-learn platform for learning computer programing and electronics. LEDs provide immediate visual success/failure feedback, and the unlimited variety of possible results are dazzling!
This video module presents an introduction to cryptography - the method of …
This video module presents an introduction to cryptography - the method of sending messages in such a way that only the intended recipients can understand them. In this very interactive lesson, students will build three different devices for cryptography and will learn how to encrypt and decrypt messages. There are no prerequisites for this lesson, and it has intentionally been designed in a way that can be adapted to many audiences. It is fully appropriate in a high school level math or computer science class where the teacher can use it to motivate probability/statistics or programming exercises. nteractive lesson, students will learn to build the cryptography devices and will learn how to send and ''crack'' secret messages.
"A Byte of Python" is a free book on programming using the …
"A Byte of Python" is a free book on programming using the Python language. It serves as a tutorial or guide to the Python language for a beginner audience. If all you know about computers is how to save text files, then this is the book for you. There are many translations of the book available in different human languages.
As if they are environmental engineers, student pairs are challenged to use …
As if they are environmental engineers, student pairs are challenged to use Google Earth Pro (free) GIS software to view and examine past data on hurricanes and tornados in order to (hypothetically) advise their state government on how to proceed with its next-year budget—to answer the question: should we reduce funding for natural disaster relief? To do this, students learn about maps, geographic information systems (GIS) and the global positioning system (GPS), and how they are used to deepen the way maps are used to examine and analyze data. Then they put their knowledge to work by using the GIS software to explore historical severe storm (tornado, hurricane) data in depth. Student pairs confer with other teams, conduct Internet research on specific storms and conclude by presenting their recommendations to the class. Students gain practice and perspective on making evidence-based decisions. A slide presentation as well as a student worksheet with instructions and questions are provided.
6.004 offers an introduction to the engineering of digital systems. Starting with …
6.004 offers an introduction to the engineering of digital systems. Starting with MOS transistors, the course develops a series of building blocks ŰÓ logic gates, combinational and sequential circuits, finite-state machines, computers and finally complete systems. Both hardware and software mechanisms are explored through a series of design examples. 6.004 is required material for any EECS undergraduate who wants to understand (and ultimately design) digital systems. A good grasp of the material is essential for later courses in digital design, computer architecture and systems. The problem sets and lab exercises are intended to give students hands-on" experience in designing digital systems; each student completes a gate-level design for a reduced instruction set computer (RISC) processor during the semester."
This course is an introduction to computational theories of human cognition. Drawing …
This course is an introduction to computational theories of human cognition. Drawing on formal models from classic and contemporary artificial intelligence, students will explore fundamental issues in human knowledge representation, inductive learning and reasoning. What are the forms that our knowledge of the world takes? What are the inductive principles that allow us to acquire new knowledge from the interaction of prior knowledge with observed data? What kinds of data must be available to human learners, and what kinds of innate knowledge (if any) must they have?
Introduces design as a computational enterprise in which rules are developed to …
Introduces design as a computational enterprise in which rules are developed to compose and describe architectural and other designs. The class covers topics such as shapes, shape arithmetic, symmetry, spatial relations, shape computations, and shape grammars. It focuses on the application of shape grammars in creative design, and teaches shape grammar fundamentals through in-class, hands-on exercises with abstract shape grammars. The class discusses issues related to practical applications of shape grammars.
Study and discussion of computational approaches and algorithms for contemporary problems in …
Study and discussion of computational approaches and algorithms for contemporary problems in functional genomics. Topics include DNA chip design, experimental data normalization, expression data representation standards, proteomics, gene clustering, self-organizing maps, Boolean networks, statistical graph models, Bayesian network models, continuous dynamic models, statistical metrics for model validation, model elaboration, experiment planning, and the computational complexity of functional genomics problems.
This book was developed in an attempt to maintain in one location …
This book was developed in an attempt to maintain in one location the information and references that point to the many important historical developments of the short life of the computer graphics world as we know it.
This course analyzes issues associated with the implementation of higher-level programming languages. …
This course analyzes issues associated with the implementation of higher-level programming languages. Topics covered include: fundamental concepts, functions, and structures of compilers, the interaction of theory and practice, and using tools in building software. The course includes a multi-person project on compiler design and implementation.
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.