People value their time, and hate waiting for computers.

Over the past decade there has been an explosion in activity in designing new provably efficient fast graph algorithms. Leveraging techniques from disparate areas of computer science and optimization researchers have made great strides on improving upon the best known running times for fundamental optimization problems on graphs, in many cases breaking long-standing barriers to efficient algorithm design. In this course we will survey these results and cover the key algorithmic tools they leverage to achieve these breakthroughs. Possible topics include but are not limited to, spectral graph theory, sparsification, oblivious routing, local partitioning, Laplacian system solving, and maximum flow. Prerequisites: calculus and linear algebra.
Same as: MS&E 313

ISPs and network operators often install caches for their benefits such as reducing bandwidth use.

Major themes and strategies of supply management relationships. The focus is on establishing a basis for collaborative relationships with suppliers through focused market intelligence research, relationship assessment and management, negotiation, collaborative contracting, and on-going management of relationships in global supply chains. Emphasis on the importance of collaboration through the application of practical tools and approaches that drive mutually beneficial outcomes. Core processes around initial exploration and assessment of supply chain relationships, establishing metrics/expectations for the relationship, crafting and managing contracts, and sustaining continuous performance improvement in sourcing, logistics and operations. Every student will participate in a team-based supply chain project with an organization and will learn the team-based, deadline-driven nature of supply chain initiatives in a real-company setting.

CS 103, Mathematical Foundations of Computing

Effective logistics decision-making using a variety of conceptual frameworks and quantitative tools. Relationship between logistics and broader issues of managing the entire supply chain and fulfilling the strategic objectives of a firm. Inventorymanagement. Transportation. Network design.

CS 269I. Incentives in Computer Science. 3 Units.

Problem solving strategies and techniques in discrete mathematics and computer science. Additional problem solving practice for CS103. In-class participation required. Prerequisite: consent of instructor. Co-requisite: CS103.

CS 269O. Introduction to Optimization Theory. 3 Units.

Mathematical foundations required for computer science, including propositional predicate logic, induction, sets, functions, and relations. Formal language theory, including regular expressions, grammars, finite automata, Turing machines, and NP-completeness. Mathematical rigor, proof techniques, and applications. Prerequisite: CS106B or equivalent. CS106B may be taken concurrently with CS103.

CS 298. Seminar on Teaching Introductory Computer Science. 1 Unit.

Supplemental lab to and . Students will apply fundamental computer science concepts learned in 106B/X to problems in the social good space (such as health, government, education, and environment). Course consists of in-class activities designed by local tech companies and nonprofits. Corequisite: 106B or 106X.

CS 309. Industrial Lectureships in Computer Science. 1 Unit.

Aimed at non-CS undergraduate and graduate students who want to learn the basics of big data tools and techniques and apply that knowledge in their areas of study. Many of the world's biggest discoveries and decisions in science, technology, business, medicine, politics, and society as a whole, are now being made on the basis of analyzing massive data sets. At the same time, it is surprisingly easy to make errors or come to false conclusions from data analysis alone. This course provides a broad and practical introduction to big data: data analysis techniques including databases, data mining, and machine learning; data analysis tools including spreadsheets, relational databases and SQL, Python, and R; data visualization techniques and tools; pitfalls in data collection and analysis; historical context, privacy, and other ethical issues. Tools and techniques are hands-on but at a cursory level, providing a basis for future exploration and application. Prerequisites: comfort with basic logic and mathematical concepts, along with high school AP computer science, CS106A, or other equivalent programming experience.