Courses in Columbia University
- COMS W4111 Introduction to Database
- COMS W4731 Computer Vision
- CSEE W4119 Computer Network
- ELEN E6761 Computer Communication Network
- COMS W4115 Programming Language & Translator
- CSEE E6861 CAD of Digital Systems
- CSOR W4231 Analysis of Algorithms I
- ELEN E6882 Visual Search Engine
- COMS E6111 Advanced Database Systems
- COMS E6998 Formal HW & SW Verification
The fundamentals of database design and application development using databases: entity-relationship modeling, logical design of relational databases, relational data definition and manipulation languages, SQL, XML, query processing, physical database tuning, transaction processing, security. Programming projects are required.
Course(fall 2012) WebsiteIntroductory course in computer vision. Topics include image formation and optics, image sensing, binary images, image processing and filtering, edge extraction and boundary detection, region growing and segmentation, pattern classification methods, brightness and reflectance, shape from shading and photometric stereo, texture, binocular stereo, optical flow and motion, 2-D and 3-D object representation, object recognition, vision systems and applications.
Introduction to computer networks and the technical foundations of the Internet, including applications, protocols, local area networks, algorithms for routing and congestion control, security, elementary performance evaluation. Several written and programming assignments required.
Focus on architecture protocols and performance evaluation of geographically distributed and local area data networks. Emphasis on layered protocols. Data link layer. Network layer: flow and congestion control routing. Transport layer. Typical Local and Metropolitan Area Network standards: Ethernet, DQDB, FDDI. Introduction to internetting. Review of relevant aspects of queueing theory to provide the necessary analytical background.
Course WebsiteModern programming languages and compiler design. Imperative, object-oriented, declarative, functional, and scripting languages. Language syntax, control structures, data types, procedures and parameters, binding, scope, run-time organization, and exception handling. Implementation of language translation tools including compilers and interpreters. Lexical, syntactic and semantic analysis; code generation; introduction to code optimization. Teams implement a language and its compiler.
Course WebsiteThis course is an introduction to modern computer-aided design (“CAD”) of digital systems. This is an important and highly-active research area, which is also a key driver of the growth of the microelectronics industry. The course is a nice blend of three areas: (i) optimization algorithms, (ii) digital design, and (iii) software tools and applications. It is suitable for students with a wide range of interests: from those more interested in applied theory and algorithms, to those more interested in digital design, or software tool development.
Course WebsiteModern programming languages and compiler design. Imperative, object-oriented, declarative, functional, and scripting languages. Language syntax, control structures, data types, procedures and parameters, binding, scope, run-time organization, and exception handling. Implementation of language translation tools including compilers and interpreters. Lexical, syntactic and semantic analysis; code generation; introduction to code optimization. Teams implement a language and its compiler.
Course WebsiteVisual Search refers to a new information retrieval paradigm that extends conventional keyword based query methods to include novel modalities, such as query by visual examples, sketches, and mobile imaging. Several applications such as Google Goggles and Amazon SnapTell are well-known examples. Many exciting and challenging problems exist in this space: extracting robust features to represent visual content, measuring relevance to a query, harnessing the power of multiple modalities, designing novel interfaces for intuitive query, and searching over large databases of millions or even more images. This course will provide overview of basic and advanced topics involved in developing visual search engines. The goal is two-fold - first, help students to gain familiarity with the basic knowledge and building tools for developing visual search systems, and second, motivate students to explore advanced research issues in this fast developing field.
Course WebsiteContinuation of COMS W4111-Introduction to Databases, covers the latest trends in both database research and industry. Programming projects are required.
Course WebsiteParticular topics that will be covered in the course include an overview of formal verification approaches, formal verification vs simulation/testing, temporal logic, Binary Decision Diagrams, SAT (satisfiability) solvers, explicit-state and symbolic model checking, abstraction techniques, software model checking, formal verification in the HW and SW industry (which techniques really work and which don't).