MA in Computer Science

Master

In Chicago (USA)

Price on request

Description

  • Type

    Master

  • Location

    Chicago (USA)

The department maintains and provides full-time technical staff for several specialized research laboratories, many housed in the Engineering Research Facility. The laboratories contain over 300 workstations and servers and an extensive array of computer-based multimedia equipment. All departmental computing facilities are networked to general university computing resources and national networks, which permits high-speed access to such facilities.

Facilities

Location

Start date

Chicago (USA)
See map
5801 South Ellis Avenue, 60637

Start date

On request

About this course

Admission and Degree Requirements

MS in Computer Science
PhD in Computer Science
MS in Computer Science/MFA in New Media Arts

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Reviews

Subjects

  • Computational
  • Network Training
  • Programming
  • Engineering
  • Systems
  • Project
  • CS
  • Design
  • Biology
  • Algorithms
  • Operating Systems
  • Network
  • Object-oriented training
  • Networks
  • Computing
  • Object oriented training
  • Credit

Course programme

CS 401. Computer Algorithms I. 3 or 4 hours.

Design and analysis of computer algorithms. Divide-and-conquer, dynamic programming, greedy method, backtracking. Algorithms for sorting, searching, graph computations, pattern matching, NP-complete problems. Course Information: Same as MCS 401. 3 undergraduate hours. 4 graduate hours. Prerequisite(s): Grade of C or better in MCS 360; or Grade of C or better in CS 202.

CS 411. Artificial Intelligence I. 3 or 4 hours.

Problem representation; rule-based problem-solving methods; heuristic search techniques. Application to expert systems, theorem proving, language understanding. Individual projects. Course Information: 3 undergraduate hours. 4 graduate hours. Prerequisite(s): CS 251.

CS 412. Introduction to Machine Learning. 3 or 4 hours.

Mechanism, implementation, and application of systems that improve automatically based on past experience, including classification, density estimation, clustering, and online learning tasks and solutions. Course Information: 3 undergraduate hours. 4 graduate hours. Extensive computer use required. MATLAB will be used for some of the homework assignments, but prior experience with it is not required. Prerequisite(s): CS 251; and IE 342 or STAT 381 or ECE 341; or consent of the instructor.

CS 415. Computer Vision I. 3 or 4 hours.

Computer vision system design. Segmentation and representation of regions and boundaries; image filtering; object recognition; advanced topics (examples: texture, stereo, color); applications. Programming assignments. Course Information: 3 undergraduate hours. 4 graduate hours. Previously listed as EECS 487. Prerequisite(s): CS 202 or MCS 360; or consent of the instructor.

CS 418. Introduction to Data Science. 3 or 4 hours.

Provides an in-depth overview of data science in engineering. Topics include modeling, storage, manipulation, integration, classification, analysis, visualization, information extraction, and big data in the engineering domain. Course Information: 3 undergraduate hours. 4 graduate hours. Extensive computer use required. Prerequisite(s): CS 251 and STAT 381; or IE 342 or ECE 341.

CS 421. Natural Language Processing. 3 or 4 hours.

Design of natural language processing systems; part-of speech tagging, statistical and symbolic parsers; semantic interpretation; discourse and dialogue processing; natural language generation; applications. Course Information: 3 undergraduate hours. 4 graduate hours. Prerequisite(s): CS 301 or MCS 441.

CS 422. User Interface Design and Programming. 3 or 4 hours.

User interface design, implementation, and evaluation: user-centered design methodologies, windowing systems, I/O devices and techniques, event-loop programming, user studies. Programming projects. Course Information: 3 undergraduate hours. 4 graduate hours. Prerequisite(s): CS 342.

CS 424. Visualization and Visual Analytics. 3 or 4 hours.

Geospatial visualization, scientific visualization, medical visualization, information visualization, and social network visualization, interaction, data analysis, human factors, dynamic data, privacy, uncertainty, data transforms. Course Information: 3 undergraduate hours. 4 graduate hours. Extensive computer use required. Prerequisite(s): CS 251; or graduate standing; or consent of the instructor.

CS 425. Computer Graphics I. 0-4 hours.

Principles of interactive computer graphics. Raster and vector display, techniques and hardware considerations. Introduction to two-dimensional and three dimensional rendering. Course Information: 3 undergraduate hours. 4 graduate hours. Previously listed as CS 488. Extensive computer use required. Prerequisite(s): CS 251. Class Schedule Information: To be properly registered, students must enroll in one Laboratory-Discussion and one Lecture-Discussion.

CS 426. Video Game Design and Development. 3 or 4 hours.

Theory and practice of video game design and programming. Students will form interdisciplinary teams, to design, build and demonstrate video games or related interactive simulation environments. Course Information: Same as DES 426. 3 undergraduate hours. 4 graduate hours. Prerequisite(s): CS 251 or consent of the instructor.

CS 427. Creative Coding. 3 or 4 hours.

Creative Coding investigates how contemporary computational techniques can inspire novel forms of art making, providing students with the skills to make use of technology for expressive purposes. Course Information: Same as DES 427. 3 undergraduate hours. 4 graduate hours. Prerequisite(s): CS 251; or consent of the instructor.

CS 428. Virtual, Augmented and Mixed Reality. 3 or 4 hours.

Virtual reality, augmented reality, and mixed reality environments, display devices, input devices, tracking, navigation, interaction, collaboration, generating visuals and sounds, software tools, applications, evaluation, safety. Course Information: 3 undergraduate hours. 4 graduate hours. Extensive computer use required. Prerequisite(s): CS 342; or consent of the instructor.

CS 440. Software Engineering I. 3 or 4 hours.

Software life-cycle model, requirement specification techniques, large-scale software design techniques and tools, implementation issues, testing and debugging techniques, software maintenance. Course Information: 3 undergraduate hours. 4 graduate hours. Previously listed as EECS 470. Prerequisite(s): CS 342.

CS 441. Engineering Distributed Objects For Cloud Computing. 3 or 4 hours.

Provides a broad but solid overview of engineering distributed object for cloud computing. Students will learn the theory and principles of engineering distributed objects for cloud environments. Programming assignments required. Course Information: 3 undergraduate hours. 4 graduate hours. Extensive computer use required. Prerequisite(s): Grade of C or better in CS 341 or Grade of C or better in CS 342; and Grade of C or better in CS 361.

CS 442. Software Engineering II. 3 or 4 hours.

Advanced concepts in software development: requirements engineering, cost estimation, risk analysis, extreme programming, regression test case selection, and design patterns. Software lab assignments required. Course Information: 3 undergraduate hours. 4 graduate hours. Extensive computer use required. Prerequisite(s): CS 440.

CS 450. Introduction to Networking. 3 or 4 hours.

Network protocols, algorithms, and software issues. Topics include the Open Systems Interconnect model, data link, network and transport layers, TCP/IP, ATM, mobile networks. Course Information: 3 undergraduate hours. 4 graduate hours. Credit is not given for CS 450 if the student has credit for ECE 433. Prerequisite(s): CS 361.

CS 455. Design and Implementation of Network Protocols. 3 or 4 hours.

Network protocols and their software, Examines OS network interface through network layers. Topics include routing, congestion control, fault tolerance, security, name servers, multicast, and performance. Course Information: 3 undergraduate hours. 4 graduate hours. Prerequisite(s): CS 340 and CS 450.

CS 461. Operating Systems Design and Implementation. 3 or 4 hours.

Kernel design and implementation; process management; effective management of machine resources: resource allocation and scheduling, mutual exclusion, deadlock avoidance, memory management policies, devices and file systems, and client-server systems. Course Information: 3 undergraduate hours; 4 graduate hours. Previously listed as CS 385. Extensive computer use required. Prerequisite(s): CS 361.

CS 463. Systems Performance and Concurrent Computing. 3 or 4 hours.

Understanding the many systems factors that affect program performance, including program design for concurrent computing, profiling and program optimization. Course Information: 3 undergraduate hours. 4 graduate hours. Prerequisite(s): CS 361. Recommended Background: CS 461.

CS 466. Advanced Computer Architecture. 3 or 4 hours.

Design and analysis of high performance uniprocessors. Topics include arithmetic: multiplication, division, shifting; processor: pipelining, multiple function units. instruction sets; memory: caches, modules; virtual machines. Course Information: Same as ECE 466. 3 undergraduate hours. 4 graduate hours. Prerequisite(s): ECE 366 or CS 261.

CS 469. Hardware Description Language Based Digital and Computer System Design. 0-5 hours.

Hardware description language (HDL) introduction; digital system design including arithmetic circuit, datapath and control; basic processor architecture and design; use of CAD tools for simulation, synthesis, and verification. Course Information: 4 undergraduate hours. 5 graduate hours. Same as ECE 469. Prerequisite(s): CS 366; or CS 362. Class Schedule Information: To be properly registered, students must enroll in one Lecture and one Laboratory.

CS 473. Compiler Design. 3 or 4 hours.

Language translation: lexical analysis, parsing schemes, symbol table management, syntax and semantic error detection, and code generation. Development of fully-functional compiler. Course Information: Same as MCS 411. 3 undergraduate hours. 4 graduate hours. Prerequisite(s): Grade of C or better in CS 301 or Grade of C or better in MCS 441; and Grade of C or better in CS 251 or Grade of C or better in MCS 360; and Grade of C or better in CS 261.

CS 474. Object-Oriented Languages and Environments. 3 or 4 hours.

Data abstraction, classes and objects, messages and methods, polymorphism and dynamic binding, inheritance. Object-oriented design. Pure and hybrid object-oriented languages. Course Information: 3 undergraduate hours. 4 graduate hours. Previously listed as EECS 474. Prerequisite(s): CS 342.

CS 475. Object-Oriented Programming. 3 or 4 hours.

OO Paradigm: classes, messages, methods, variables, inheritance, polymorphism; the C++ and Java languages; programming labs required. Course Information: 3 undergraduate hours. 4 graduate hours. Credit is not given for CS 475 if the student has credit for CS 340 or CS 474. Extensive computer use required. Prerequisite(s): CS 202; and consent of the instructor.

CS 476. Programming Language Design. 3 or 4 hours.

Definition, design, and implementation of programming languages. Syntactic and semantic description; variable bindings, control and data structures, parsing, code generation, optimization; exception handling; data abstraction. Course Information: Same as MCS 415. 3 undergraduate hours. 4 graduate hours. Previously listed as EECS 476. Prerequisite(s): MCS 360; or CS 341.

CS 477. Public Policy, Legal, and Ethical Issues in Computing, Privacy, and Security. 3 or 4 hours.

Contemporary topics involving legal, public policy, and/or ethical issues in computing, especially privacy, security, and surveillance. Course Information: 3 undergraduate hours. 4 graduate hours. Prerequisite(s): Consent of the instructor.

CS 478. Software Development for Mobile Platforms. 3 or 4 hours.

Design and implementation of mobile applications; operating systems, object-oriented languages and programming environments for mobile platforms; integration with hardware components; and location-aware applications. Programming assignments required. Course Information: 3 undergraduate hours. 4 graduate hours. Extensive computer use required. Prerequisite(s): CS 342.

CS 480. Database Systems. 3 or 4 hours.

Database design, logical design, physical design. Relational databases. Recovery, concurrency control. Normalization. Course Information: 3 undergraduate hours. 4 graduate hours. Prerequisite(s): CS 251.

CS 485. Networked Operating Systems Programming. 4 or 5 hours.

Concepts, design, and programming of multi-process and distributed systems; inter-process communications; fault tolerance; distributed programming semantics. Programming assignments and project required. Course Information: 4 undergraduate hours. 5 graduate hours. Previously listed as EECS 471. Prerequisite(s): CS 385.

CS 486. Secure Operating System Design and Implementation. 3 or 4 hours.

Design of operating systems; operating system kernel implementation; secure coding and systems; virtual machines; extensive programming in a systems language such as C. Course Information: 3 undergraduate hours. 4 graduate hours. Extensive computer use required. Prerequisite(s): Credit or concurrent registration in CS 385; and credit or concurrent registration in CS 450 or consent of the instructor.

CS 487. Building Secure Computer Systems. 3 or 4 hours.

Building and programming secure systems; protecting systems from threats and reduction of vulnerabilities; Includes application, host and network security. Course Information: 3 undergraduate hours. 4 graduate hours. Extensive computer use required. Prerequisite(s): Grade of C or better in CS 385; and senior standing or above; or consent of the instructor.

CS 489. Human Augmentics. 3 or 4 hours.

Study of technologies for augmentation of human capabilities; human limitations; implants and wearable technologies; implants; brain-computer interfaces; exoskeletons; sensors and networks. Includes project work. Course Information: Same as COMM 489 Extensive computer use required. Prerequisite(s): Senior standing or above; or consent of the instructor; or senior majoring in communications or psychology.

CS 491. Seminar. 1-4 hours.

Topics of mutual interest to a faculty member and a group of students. Offered as announced by department bulletin or the Timetable. Course Information: May be repeated. Previously listed as EECS 491. Prerequisite(s): Consent of the instructor.

CS 493. Special Problems. 2-4 hours.

Special problems or reading by special arrangement with the faculty. Course Information: Previously listed as EECS 493. No graduate credit for Computer Science majors. Prerequisite(s): Consent of the instructor.

CS 494. Special Topics in Computer Science. 1-4 hours.

Multidisciplinary computer science topics for undergrad seniors and graduate student that vary from term to term depending on current student and instructor interests. Course Information: 1 to 3 undergraduate hours; 2 to 4 graduate hours. Prerequisite(s): Consent of the instructor.

CS 499. Professional Development Seminar. 0 hours.

Graduating seniors will be provided with information regarding future career paths and will provide information regarding the program to be used for assessment purposes. Students take the CS Major Field Exam as part of this course. Course Information: Satisfactory/Unsatisfactory grading only. Prerequisite(s): Open only to seniors; and approval of the department. Must be taken in the student's last semester of study.

CS 501. Computer Algorithms II. 4 hours.

Continuation of MCS 401 (same as CS 401). Advanced topics in algorithms. Lower bounds. Union-find problems. Fast Fourier transform. Complexity of arithmetic, polynomial, and matrix calculations. Approximation algorithms. Parallel algorithms. Course Information: Same as MCS 501. Prerequisite(s): MCS 401 or CS 401.

CS 502. Design and Analysis of Efficient Algorithms in Computational Molecular Biology. 4 hours.

Design and analysis of efficient algorithms for computational problems in molecular biology such as genome sequencing and construction of evolutionary trees. Course Information: Prerequisite(s): Grade of B or better in CS 401; or consent of the instructor. Recommended background: CS 501 and some exposure to basic chemistry and biology.

CS 503. Applied Graph Theory. 4 hours.

Paths, circuits, trees, cutsets, planarity, duarity, matrices and vector space of graphs, directed graphs, coloring, covering, matching and applications to switching networks and computer science. Course Information: Previously listed as EECS 563. Prerequisite(s): Consent of the instructor.

CS 505. Computability and Complexity Theory. 4 hours.

Turing machines, undecidability, Rice's theorem, recursively enumerable sets, complexity theory, hierarchy theorems, alternation, parallel complexity classes, complete problems. Course Information: Previously listed as EECS 561. Prerequisite(s): CS 301.

CS 506. An Introduction to Quantum Computing. 4 hours.

Quantum computing models and their algorithmic applications. Course Information: Prerequisite(s): CS 401; or consent of the instructor. Recommended background: CS 501 and background in linear algebra at advanced undergraduate level.

CS 510. Introduction to Cognitive Science. 3 hours.

The computer modeling of intelligent agents and systems. Course Information: Same as PSCH 510. Extensive computer use required. Prior experience with computers is expected to vary widely among the students, and the instruction, readings, and course project are designed to take this into account. Prerequisite(s): Consent of the instructor. Recommended background: Prior training and/or prior coursework in human cognition and/or computer programming.

CS 511. Artificial Intelligence II. 4 hours.

Predicate logic and resolution strategies, reasoning under uncertainty, incomplete information reasoning, state and change, planning, temporal reasoning knowledge representation, learning, advanced search techniques and current topics. Course Information: Previously listed as EECS 584. Prerequisite(s): CS 411.

CS 512. Advanced Machine Learning. 4 hours.

. Course studies theoretical principle and analysis of systems that make sense of data, along with scalable implementations in computation

MA in Computer Science

Price on request