This is a course for students who plan to be or to work with entrepreneurs. In this course, students will study the principles for transforming abstract data into useful information visualizations. An introduction to user centered design processes. Applicants are judged on undergraduate performance, GMAT scores, summer and/or co-op work experience, recommendations and a personal interview. This course involves the study of fundamental algorithms, data structures, and their effective use in a variety of applications. Throughout this course, there is an emphasis on correctness proofs and the ability to apply the techniques taught to design efficient algorithms for problems from a wide variety of application areas. Students will be required to program in Python or MATLAB. The focus of the course will be on the mathematical tools and intuition underlying algorithms for these tasks: models for the physics and geometry of image formation, and statistical and machine learning-based techniques for inference. If you effectively utilize these hours, you will be very productive. No matter your role in the Washington University in St. Louis community, your efforts help us not only succeed, but excel. Prerequisite: permission of adviser and submission of a research proposal form. Prerequisite: CSE 361S. Students will create multiple fully-functional apps from scratch. Tao Ju and Dan Zeng, a graduate student in Ju's lab, demonstrates how to measure a wide array of sorghum panicle traits, some of which had never been quantified before. Students receiving a 4 or 5 on the AP Computer Science A exam are awarded credit for CSE 131 Introduction to Computer Science. Fall applications for this program open on June 1. Prerequisites: ESE 260.Same as E35 ESE 465. Prerequisites: CSE 131. This course combines concepts from computer science and applied mathematics to study networked systems using data mining. E81 CSE 518A Human-in-the-Loop Computation. The intractability of a problem could come from the problem's computational complexity, for instance the problem is NP-Hard, or other computational barriers. This course is an introduction to modern cryptography, with an emphasis on its theoretical foundations. We will also investigate algorithms that extract basic properties of networks in order to find communities and infer node properties. E81 CSE 361S Introduction to Systems Software, IIntroduction to the hardware and software foundations of computer processing systems. Topics may include: cameras and image formation, human visual perception, image processing (filtering, pyramids), image blending and compositing, image retargeting, texture synthesis and transfer, image completion/inpainting, super-resolution, deblurring, denoising, image-based lighting and rendering, high dynamic range, depth and defocus, flash/no flash photography, coded aperture photography, single/multiview reconstruction, photo quality assessment, non photorealistic rendering, modeling and synthesis using internet data, and others. This course addresses the practical aspects of achieving high performance on modern computing platforms. Consult also: CSE 400E. Prerequisites: CSE 417T. E81 CSE 256A Introduction to Human-Centered Design. Integrity and security requirements are studied in the context of concurrent operations on a database, where the database may be distributed over one or more locations. Students are encouraged to meet with a faculty adviser in the Department of Computer Science & Engineering to discuss their options and develop a plan consistent with their goals. I got into CMU as well and have no regrets about attending WashU. Prerequisites: CSE 473S or permission of the instructor. The projects cover the principal system development life-cycle phases from requirements analysis, to software design, and to final implementation. Computer science is an exciting, growing, challenging field that is critical to many aspects of everyday life. Topics include page layout concepts, design principles, HTML, CSS, JavaScript, front-end frameworks like Angular and React, and other development tools. Network analysis provides many computational, algorithmic, and modeling challenges. Such an algorithm is known as an approximation algorithm. and, "Why do the rich get richer?" Advanced topics in switching theory as employed in the synthesis, analysis and design of information processing systems. The aim of this course is to provide students with knowledge and hands-on experience in understanding the security techniques and methods needed for IoT, real-time, and embedded systems. Breadth requirements (required of the course and project options), which include: With departmental approval, up to 12 units may be taken from outside of the department. CS+Econ: This applied science major allows students interested in both economics and computer science to combine these two complementary disciplines efficiently. Prerequisite: CSE 247. Investigation of a topic in computer science and engineering of mutual interest to the student and a mentor. Some prior exposure to artificial intelligence, machine learning, game theory, and microeconomics may be helpful, but is not required. Apply and join College Council LEAPP here. Prerequisites: CSE 247, Math 309, Math 3200 or ESE 326. Students will learn about hardcore imaging techniques and gain the mathematical fundamentals needed to build their own models for effective problem solving. Topics will include one-way functions, pseudorandom generators, public key encryption, digital signatures, and zero-knowledge proofs. Learn more about McKelvey Hall We are in an era where it is possible to have all of the world's information at our fingertips. The Department of Computer Science & Engineering actively promotes a culture of strong undergraduate participation in research. An introduction to the theory of computation, with emphasis on the relationship between formal models of computation and the computational problems solvable by those models. Find out at US News. CS+Business:  This joint major provides students with the fundamental knowledge and perspectives of computer science and business and of the unique opportunities created by combining them. This five-year program that leads to both the bachelor's and master's degrees offers the student an excellent opportunity to combine undergraduate and graduate studies in an integrated curriculum. This course introduces students to quantum computing, which leverages the effects of quantum-mechanical phenomena to solve problems. Throughout the semester, students will operate in different roles on a team, serving as lead developer, tester, and project manager. Topics include: processor architecture, instruction set architecture, Assembly Language, memory hierarchy design, I/O considerations, and a comparison of computer architectures. The topics covered include the review of greedy algorithms, dynamic programming, NP-completeness, approximation algorithms, the use of linear and convex programming for approximation, and online algorithms. Students complete written assignments and implement advanced comparison algorithms to address problems in bioinformatics. Mathematical maturity and general familiarity of machine learning is required. The project option requires 24 units of graduate credit in addition to six units of CSE 598: Master's Project. Prerequisites: CSE 332S. Prerequisites: CSE 247, ESE 326 (or Math 3200), Math 233, E81 CSE 515T Bayesian Methods in Machine Learning, This course will cover machine learning from a Bayesian probabilistic perspective. The course targets graduate students and advanced undergraduates. These requirements can be found in the 2018-2019 Washington University Bulletin. Students will use and write software to illustrate mastery of the material. However, the conceptual gap between the 0s and 1s and the day-to-day operation of modern computers is enormously wide. While performance and efficiency in digital systems have improved markedly in recent decades, computer security has worsened overall in this time frame. E81 CSE 473S Introduction to Computer Networks. This course is a seminar and discussion session that complements the material studied in CSE 132. Students must follow the general degree requirements listed below and complete the breadth requirements. View Washington University in St. Louis rankings for 2021 and see where it ranks among top colleges in the U.S. We ask that all students (Architecture, Art, Art & Sciences, Business, and Engineering) who are planning to take a calculus course during their time at Washington University in St. Louis take this test online. If a student's interests are concentrated in the first two areas, a computer engineering degree might be best. Topics include how to publish a mobile application on an app store, APIs and tools for testing and debugging, and popular cloud-based SDKs used by developers. Prerequisites: CSE 240 and CSE 247. Theory courses provide background in algorithms, which describe how a computation is to be carried out; data structures, which specify how information is to be organized within the computer; analytical techniques to characterize the time or space requirements of an algorithm or data structure; and verification techniques to prove that solutions are correct. Undergraduates are encouraged to consider 500-level courses. This graduate-level course rigorously introduces optimization methods that are suitable for large-scale problems arising in these areas. This course does not cost extra for full-time students and is not counted toward the degree or the GPA. This course examines the intersection of computer science, economics, sociology, and applied mathematics. WebSTAC, ©2020-21 Washington University in St. Louis, Barbara J. Registration and attendance for 347R is mandatory for students enrolled in 347. Developer Student Club at Washington University in St. Louis is a community group for both undergraduate and graduate students to learn more about google developer technologies. Prerequisites: CSE 347 or instructor permission Revised: 2019-02-21, E81 CSE 585T Sparse Modeling for Imaging and Vision. As a part of our program, each student is assigned an adviser who can help to design an individualized program, monitor a student's progress, and consult about curriculum and career options. Students acquire the skills to build a Linux web server in Apache, to write a website from scratch in PHP, to run an SQL database, to perform scripting in Python, to employ various web frameworks, and to develop modern web applications in client-side and server-side JavaScript. Topics covered may include game theory, decision theory, machine learning, distributed algorithms, and ethics. This course provides an overview of practical implementation skills. Topics typically include propositional and predicate logic; sets, relations, functions and graphs; proof by contradiction, induction and recursion; finite state machines and regular languages; and introduction to discrete probability, expected value and variance. Together with redundancy comes an opportunity of seeking the sparsest possible representation, or the one with the fewest non-zeros. This course offers an in-depth hands-on exploration of core OS abstractions, mechanisms and policies, with an increasing focus on understanding and evaluating their behaviors and interactions. Such approval shall be contingent on the credits being suitably technical graduate-level content. E81 CSE 543T Algorithms for Nonlinear Optimization. Mining a large amount of data through data mining has become an effective means to extracting knowledge from data. The course covers fundamental concepts, data structures and algorithms related to the construction, display and manipulation of three-dimensional objects. The course covers various aspects of parallel programming such as algorithms, schedulers and systems from a theoretical perspective. The topics include knowledge representation, problem solving via search, game playing, logical and probabilistic reasoning, planning, dynamic programming, and reinforcement learning. Prerequisites: CSE 131 or CSE 501N. Provides background and breadth for the disciplines of computer science and computer engineering. To understand why, we will explore the role that design choices play in the security characteristics of modern computer and network systems. An entrepreneurial mindset is needed to create or grow economically viable enterprises, be they new companies, new groups within companies, or new university laboratories. Introduction to design methods for digital logic and fundamentals of computer architecture. A key component of this course is worst-case asymptotic analysis, which provides a quick and simple method for determining the scalability and effectiveness of an algorithm. Prerequisites: CSE 247, ESE 326, Math 233, and Math 309. Concepts and skills are acquired through the design and implementation of software projects. Areas of exploration include technical complexities, organization issues, and communication techniques for large-scale development. E81 CSE 247 Data Structures and Algorithms. Prerequisite: CSE 131 and fluency with summations, derivatives, and proofs by induction.Same as E81 CSE 247, E81 CSE 503S Rapid Prototype Development and Creative Programming, This course uses web development as a vehicle for developing skills in rapid prototyping. In this course, students will work in groups to design, develop, test, publish, and market an iOS mobile application. E81 CSE 574S Wireless and Mobile Networking. Prerequisites: CSE 131 and CSE 247, E81 CSE 341T Parallel and Sequential Algorithms, The course aims to teach how to design, analyze and implement parallel algorithms. Washington University undergraduates seeking admission to the graduate degree program to obtain a master's degree in computer science or computer engineering do not need to take the Graduate Record Examination (GRE). System-level topics include real-time operating systems, scheduling, power management, and wireless sensor networks. E81 CSE 439S Mobile Application Development II. Unconstrained optimization techniques including Gradient methods, Newton's methods, Quasi-Newton methods, and conjugate methods will be introduced. We will study algorithmic, mathematical, and game-theoretic foundations, and how these foundations can help us understand and design systems ranging from robot teams to online markets to social computing platforms. A study of data models and the database management systems that support these data models. With the advance of imaging technologies deployed in medicine, engineering and science, there is a rapidly increasing amount of spatial data sets (images, volumes, point clouds, etc.) This course provides an introduction to human-centered design through a series of small user interface development projects covering usability topics such as efficiency vs. learnability, walk up and use systems, the habit loop, and information foraging. Problems pursued under this framework may be predominantly analytical, involving the exploration and extension of theoretical structures, or they may pivot around the design/development of solutions for particular applications drawn from areas throughout the University and/or the community. Students are classified as graduate students during their final year of study, and their tuition charges are at the graduate student rate. E81 CSE 556A Human-Computer Interaction Methods. The software portion of the project uses Microsoft Visual Studio to develop a user interface and any additional support software required to demonstrate final projects to the faculty during finals week. I’m unfamiliar with Northeastern University or the CS program at Washington U. however Washington U. is an excellent school. I found this to be a bit strange, as compilers is a prrrrty important topic in computer science, and is a major requirement at most peer schools. Although hackers often use reverse engineering tools to discover and exploit vulnerabilities, security analysts and researchers must use reverse engineering techniques to find what a specific malware does, how it does it, and how it got into the system. Students electing the project option for their master's degree perform their project work under this course. Topics include history, protocols, Hyper Text Transfer Protocol (HTTP), File Transfer Protocol (FTP), Simple Mail Transfer Protocol (SMTP), Domain Name System (DNS), peer-to-peer (P2P), transport layer design issues, transport layer protocols, Transmission Control Protocol (TCP), User Datagram Protocol (UDP), TCP congestion control, network layer, Internet Protocol version 4 (IPv4), Internet Control Message Protocol (ICMP), Internet Protocol version 6 (IPv6), routing algorithms, routing protocols, Open Shortest Path First (OSPF), Routing Information Protocol (RIP), Border Gateway Protocol (BGP), datalink layer and local area networks carrier sense multiple access with collision detection (CSMA/CD), Ethernet, virtual local area networks (VLANs), Point-to-Point Protocol (PPP), Multi-Protocol Label Switching, wireless and mobile networks, multimedia networking, security in computer networks, cryptography, and network management. Students electing the thesis option for their master's degree perform their thesis research under this course. Students should apply to this joint program by February 1 of their junior year. All computers are made up of 0s and 1s. In addition to learning about IoT, students gain hands-on experience developing multi-platform solutions that control and communicate with Things using via mobile device friendly interfaces. Washington University in St. Louis is committed to assisting all members of the University community in providing for their own safety and security. In order to successfully complete this course, students must defend their project before a three-person committee and present a 2-3 page extended abstract. Prerequisites: CSE 240 and CSE 247. We also learn how to critique existing work and how to formulate and explore sound research questions. See Project and Thesis Guidelines for more information. Prerequisites: CSE 131 and CSE 247Same as E81 CSE 332S, E81 CSE 505N Introduction to Digital Logic and Computer Design, Introduction to design methods for digital logic and fundamentals of computer architecture. Students will develop a quantum-computer simulator and make use of open simulators as well as actual devices that can realize quantum circuits on the internet. Many undergraduates work in research labs with state-of-the-art equipment that provides them the opportunity to take part in computer science and computer engineering research. Students will use and write software during in-class studios and homework assignments to illustrate mastery of the material. Students can select either a pure course option program or incorporate a project or a thesis. Theory is the study of the fundamental capabilities and limitations of computer systems. Concurrent programming concepts include threads, synchronization, and locks. We offer a Bachelor of Science in Computer Science (BSCS), a Bachelor of Science in Computer Engineering (BSCoE), a Bachelor of Science in Business and Computer Science (CS+Business), a Bachelor of Science in Computer Science + Mathematics (CS+Math), a Bachelor of Science in Computer Science + Economics (CS+Econ), and a Second Major in Computer Science. Mathematical abstractions of quantum gates are studied with the goal of developing the skills needed to reason about existing quantum circuits and to develop new quantum circuits as required to solve problems. Real world examples will be used to illustrate the rationales behind various security designs. In this course we study fundamental technologies behind Internet-of-Things devices, and Appcessories, which include smart watches, health monitors, toys, and appliances. Prerequisites: CSE 361S and 362M from Washington University in St. Louis or permission of the instructor. Students intending to take CSE 497-498 must submit a project proposal form (PDF) for approval by the department during the spring semester of the junior year. Prerequisites: CSE 332S and Math 309. The unique requirements for engineering design databases, image databases, and long transaction systems are analyzed. Prerequisite: CSE 247. Active-learning sessions are conducted in a studio setting in which students interact with each other and the professor to solve problems collaboratively. The emphasis is on teaching fundamental principles and design techniques that easily transfer over to parallel programming. In addition, this course focuses on more specialized learning settings, including unsupervised learning, semi-supervised learning, domain adaptation, multi-task learning, structured prediction, metric learning and learning of data representations. We will cover both classic and recent results in parallel computing. Prerequisite: CSE 347. Prerequisite: CSE 247. Prerequisite: CSE 247; CSE 132 is suggested but not required. A broad overview of computer networking. It is a fascinating new area of research that seeks to develop highly effective data models. We are enriched by wide-ranging exploration and inspired by big ideas as we create new knowledge for an ever-changing world. To arrange for CSE major or minor credit for independent study, a student must enroll in CSE 400E instead of CSE 400. It emphasizes the importance of data structure choice and implementation for obtaining the most efficient algorithm for solving a given problem. It also serves as a foundation for other system courses, such as compilers, networks, and operating systems, where a deeper understanding of systems-level issues is required. Whether a student's goal is to become a practitioner or to take a few courses to develop a basic understanding of computing for application to another field, the Department of Computer Science & Engineering at Washington University is committed to helping students gain the background they need. If you don’t apply, you won’t have the chance to see how our need-based financial aid and scholarship programs can help you and your family. The aim of this course is to provide students with broader and deeper knowledge as well as hands-on experience in understanding security techniques and methods needed in software development. Active-learning sessions are conducted in a studio setting in which students interact with each other and the professor to solve problems collaboratively. In addition, with approval of the instructor, up to 6 units of CSE 400E Independent Study can be used toward the CSE electives of any CSE degree. Prerequisites: CSE 332S or graduate standing and strong familiarity with C++; and CSE 422S. Topics include: inter-process communication, real-time systems, memory forensics, file-system forensics, timing forensics, process and thread forensics, hypervisor forensics, and managing internal or external causes of anomalous behavior. The Congress of the South 40 is the largest student programming body on the 40. Students pursuing the project option may opt to take 27 units of graduate courses and only three units of CSE 598 with advisor approval. Such problems appear in computer graphics, vision, robotics, animation, visualization, molecular biology, and geographic information systems. As per engineering school guidelines, students must maintain a GPA of at least 2.70. The Bachelor of Science in Business and Computer Science degree program provides an integrated educational experience that involves both the Olin Business School and the McKelvey School of … Professionals from the local and extended Washington University community will mentor the students in this seminar. This course is a continuation of CSE 450A Video Game Programming I. Prerequisite: permission of adviser and submission of a research proposal form. The goal of the course is to build skills in the fundamentals of security analysis, including usage of the Linux command line and console-based security tools, creativity in applying theoretical knowledge to practical challenges, and confidence in approaching under-specified problems. Prerequisite: CSE 131. Subjects include digital and analog input/output, sensing the physical world, information representation, basic computer architecture and machine language, time-critical computation, machine-to-machine communication and protocol design. Combinational techniques: minimization, multiple output networks, state identification and fault detection, hazards, testability and design for test are examined. Students acquire the skills to build a Linux web server in Apache, to write a website from scratch in PHP, to run an SQL database, to perform scripting in Python, to employ various web frameworks, and to develop modern web applications in client-side and server-side JavaScript. The study of computer science and engineering is especially well suited and popular for study abroad. The Washington University Undergraduate Economics Association aims to serve as an academic and social forum for students interested in the field of Economics, as well as a liaison between the economics cepartment and the undergraduate student body. Topics include design, data mapping, visual perception, and interaction. Students in doubt of possessing the necessary background for a course should correspond with the course's instructor.