This course introduces basic techniques for the design and analysis of computer algorithms, such as divide-and-conquer, the greedy method, and dynamic programming. Students learn to reason algorithmically about problems arising in computer applications, and experience the practical aspects of implementing an abstract algorithm.
English Lecture
Y
CS504
Computational Geometry
3:0:3
Spring
Course Name
Computational Geometry
SubTitle
Course Code
CS504
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring
Course Description
Computational geometry studies algorithms and data structures for processing and storing geometric objects. This courses discusses algorithm design techniques such as plane sweep and geometric divide & conquer; data structures such as point location structures, interval trees, segment trees, and BSP trees; and geometric structures such as arrangements, triangulations, Voronoi diagrams, and Delaunay triangulations.
English Lecture
N
CS510
Computer Architecture
3:0:3
Spring
Course Name
Computer Architecture
SubTitle
Course Code
CS510
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring
Course Description
This goal of this course is to provide the student with an understanding of (i) the architectural aspect of the performance issues, and (ii) investigation of the full spectrum of design alternatives and their trade-offs.
English Lecture
Y
CS520
Theory of Programming Languages
3:0:3
Fall
Course Name
Theory of Programming Languages
SubTitle
Course Code
CS520
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
This course reviews design principles and implementation techniques of various programming languages. This course also introduces a wide spectrum of programming paradigms such as functional programming, logic programming, and object-oriented programming.
English Lecture
N
CS522
Theory of Formal Languages and Automata
3:0:3
Spring
Course Name
Theory of Formal Languages and Automata
SubTitle
Course Code
CS522
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring
Course Description
This course is intended to understand the current theories of deterministic parsing of context-free grammars. Two basic parsing schemes, LR(k) and LL(k) parsing, are considered and the practical SLR(1) and LALR(1) techniques are discussed. The syntactic error recovery in LR-based parsing is also discussed.
English Lecture
N
CS530
Operating System
3:0:3
Spring or Fall
Course Name
Operating System
SubTitle
Course Code
CS530
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
The main focus of this course is to understand the concurrency features of modern operating systems. Concurrent programming is dealt with in detail to simulate various parts of an OS. Other topics that are required to understand the process-oriented OS structure are also discussed.
English Lecture
Y
CS540
Network Architecture
3:0:3
Spring or Fall
Course Name
Network Architecture
SubTitle
Course Code
CS540
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
The goal of this course is to provide students with an understanding on the following topics. (1) the concept of layered architectures, (2) the design and implementation of communication protocols, (3) the multimedia communication protocol, and (4) the design of high-speed protocols. The course also covers many aspects of protocol engineering: design, implementation and test of communication protocols.
English Lecture
Y
CS542
Internet Systems Technology
3:0:3
Spring or Fall
Course Name
Internet Systems Technology
SubTitle
Course Code
CS542
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course reviews the state-of-the-art of today's Internet system as well as service architectures, describes the challenges facing them, and discusses emerging approaches. In particular, the course covers issues around Internet traffic characterization; protocols; server architectures and performance; mobile and pervasive services and systems, virtualization; content distribution; peer-to-peer architecture, quality of services (QoS); and architectural alternatives for applications and services. The goal of the course is to gain understanding of the current research issues and a vision of the next generation Internet system and service architecture.
English Lecture
N
CS543
Distributed Systems
3:0:3
Fall
Course Name
Distributed Systems
SubTitle
Course Code
CS543
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
This course provides theoretical knowledge and hands-on experience with distributed systems' design and implementation. The course will focus on the principles underlying modern distributed systems such as networking, naming, security, distributed sychronization, concurrency, fault tolerance, etc. along with case studies. Emphasis will be on evaluating and critiquing approaches and ideas. (Prerequisite: CS510, CS530)
English Lecture
N
CS546
Wireless Mobile Internet
3:0:3
Spring or Fall
Course Name
Wireless Mobile Internet
SubTitle
Course Code
CS546
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course is intended for graduate students who want to understand Wireless Mobile Internet. It provides a comprehensive technical guide covering introductory concepts, fundamental techniques, recent advances and open issues in ad hoc networks and wireless mesh networks. The course consists of lectures, exams and term project.
English Lecture
N
CS548
Advanced Information Security
3:0:3
Fall
Course Name
Advanced Information Security
SubTitle
Course Code
CS548
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
The main objective of this course is to provide students with comprehensive knowledge of information security. The course helps students to build profound understanding of information security by teaching the fundamentals of information security, which include, but are not limited to: cipher, access control, protocol, and software engineering. The primary fous of the course is on the general concept of information security.
English Lecture
Y
CS550
Software Engineering
3:0:3
Spring
Course Name
Software Engineering
SubTitle
Course Code
CS550
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring
Course Description
This course covers fundamental concepts required in developing reliable softwares in a cost-effective manner.
English Lecture
Y
CS552
Models of Software Systems
3:0:3
Fall
Course Name
Models of Software Systems
SubTitle
Course Code
CS552
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
For long time, computer scientists have investigated the problem of automating software development from a specification to its program. So far the efforts were not fully successful but much of the results can be fruitfully applied to development of small programs and critical small portions of large programs. In this course, we study the important results of such efforts and, for that, we learn how to model software systems with formal description techniques, how to model software systems such that the various properties expected of the software systems are verifiable and how to verify various properties of software systems though the models.
English Lecture
N
CS554
Designs for Software and Systems
2:3:3
Fall
Course Name
Designs for Software and Systems
SubTitle
Course Code
CS554
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
2:3:3
Level
Graduate
Semester
Fall
Course Description
Development of software and systems requires to understand engineering design paradigms and methods for bridging the gap between a problem to be solved and a working system. This course teaches how to understand problems and to design, architect, and evaluate software solutions.
English Lecture
N
CS560
Database System
3:0:3
Spring
Course Name
Database System
SubTitle
Course Code
CS560
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring
Course Description
This course addresses current technologies of various aspects of database systems. The main objective of this course is to study the design and implementation issues of high performance and high functionality database systems. Through this course, the students will have concrete concepts on database systems and will have in-depth knowledge on most issues of advanced database researches.
English Lecture
Y
CS562
Database Design
3:0:3
Fall
Course Name
Database Design
SubTitle
Course Code
CS562
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
The goal of this course is to establish a consistent framework for database design. Practical database design methodology, major principles, tools and analysis techniques for various phases of database design process are studied.
English Lecture
N
CS570
Artificial Intelligence and Machine Learning
3:0:3
Spring
Course Name
Artificial Intelligence and Machine Learning
SubTitle
Course Code
CS570
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring
Course Description
Classical artificial intelligence algorithms and introduction to machine learning based on probability and statistics.
English Lecture
Y
CS572
Intelligent Robotics
3:0:3
Fall
Course Name
Intelligent Robotics
SubTitle
Course Code
CS572
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
The goal of this course is to provide students with state-of-the-art technologies in intelligent robotics. Major topics include sensing, path planning, and navigation, as well as artificial intelligence and neural networks for robotics.
English Lecture
N
CS574
Natural Language Processing I
3:0:3
Spring or Fall
Course Name
Natural Language Processing I
SubTitle
Course Code
CS574
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
As a typical application of symbolic AI machine translation (M.T) addresses the major issues involving computational linguistics, rules base, and more fundamentally knowledge representation and inference. In this regard, the goal of the course is to provide students with first-hand experience with a real AI problem. The topics include application of M.T., basic problems in M.T., and classical approaches to the problems.
English Lecture
N
CS576
Computer Vision
3:0:3
Spring or Fall
Course Name
Computer Vision
SubTitle
Course Code
CS576
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
The goal of this course is to provide students with theory and application of computer vision. Major topics include digital image fundamentals, binary vision, gray-level vision, 3-D vision, motion detection and analysis, computer vision system hardware and architecture, CAD-based vision, knowledge-based vision, neural-network-based vision.
English Lecture
N
CS579
Computational Linguistics
3:0:3
Fall
Course Name
Computational Linguistics
SubTitle
Course Code
CS579
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
This course focuses on universal models for languages, especially English and Korean. For computational study, issues on knowledge representation, generalized explanation on linguistic phenomena are discussed. When these models are applied to natural language processing, properties needed for computational models and their implementation methodologies are studied.
English Lecture
N
CS580
Interactive Computer Graphics
3:1:3
Spring
Course Name
Interactive Computer Graphics
SubTitle
Course Code
CS580
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:1:3
Level
Graduate
Semester
Spring
Course Description
We will study fundamentals of computer graphics and their applications to games, movies, and other related areas. In particular, we will study different branches, fundamentals, rendering, animation, and modeling, of computer graphics. Also, CS580 can be taken by students who have not taken any computer graphics related courses in their undergraduate courses.
English Lecture
Y
CS584
Human-Computer Interaction
3:0:3
Fall
Course Name
Human-Computer Interaction
SubTitle
Course Code
CS584
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
본 과목은 다음 세 가지 목표를 추구한다. 1) 실증적 HCI 연구를 위한 과학적 기반과 연구방법을 교육하고, 2) 다양한 사용자 인터페이스 기술 및 사례를 교육하고, 3) 새로운 사용자 인터페이스 아이디어를 구현하고 평가하는 경험 체득할 수 있는 기회를 제공한다.
English Lecture
Y
CS590
Semantic Web
3:0:3
Spring or Fall
Course Name
Semantic Web
SubTitle
Course Code
CS590
Course Type
Elective Major(Essential)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
"Semantic Web" allows machines to process and integrate Web resources intelligently. Beyond enabling quick and accurate web search, this technology may also allow the development of intelligent internet agents and facilitate communication between a multitude of heterogeneous web-accessible devices.
English Lecture
N
Elective Major(Elective)
Code
Subject
Credit
Term
CS524
Program Analysis
3:0:3
Fall
Course Name
Program Analysis
SubTitle
Course Code
CS524
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
This course introduces a technique called program analysis that estimates the behavior of programs before running them. Instead of running programs with infinite inputs, program analysis statically estimates runtime behaviors of programs within a finite time. The course will cover fundamental theories, designs and implementations of program analysis including semantic formalism and the theory of abstract interpretation.
English Lecture
Y
CS541
Smart Business Application and Development
3:0:3
Fall
Course Name
Smart Business Application and Development
SubTitle
Course Code
CS541
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
The course is intended for graduate students to understand and develop smart business application running on smart phones. It provides a comprehensive guide covering programming technology on Mobile Internet, Mobile Security and Payment, Location based and Context Aware Services, Social Network Services, and Business Model Development Method through Case Study, Value Chain Analysis and Economic Feasibility Study. An application is proposed and developed by students as team consisting of business and engineering areas for the purpose of creating new application services and businesses.
English Lecture
N
CS564
Data Science Methodology
3:0:3
Spring or Fall
Course Name
Data Science Methodology
SubTitle
Course Code
CS564
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
The ability to handle big data and statistically analyse them is crucial for data scientists. This course covers social data basics and tools to handle, analyze, and visualize such data via utilizing key analysis packages in R.
English Lecture
Y
CS565
IoT Data Science
3:0:3
Spring
Course Name
IoT Data Science
SubTitle
Course Code
CS565
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring
Course Description
The goal of this course is to learn the basics of how to use sensor data for designing intelligent IoT services. The course covers the entire process of IoT data science for ubiquitous computing: i.e., data collection, pre-processing, feature extraction, and machine learning modeling. Mobile, wearable, and smart sensors will be used, and the types of sensor data covered include motion (e.g., vibration/acceleration, GPS), physiological signals (e.g., heart rate, skin temperature), and interaction data (e.g., app usage). Students will learn the basic digital signal processing and feature extraction techniques. Basic machine learning techniques (e.g., clustering, supervised learning, time-series learning, and deep learning) will be reviewed, and students will master these techniques with in-class practices with Google Co-lab and IoT devices. A final mini-project will help students to apply the techniques learned in the class to solve real-world IoT data science problems.
English Lecture
Y
CS575
AI Ethics
3:0:3
Spring
Course Name
AI Ethics
SubTitle
Course Code
CS575
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring
Course Description
Recent progress in AI technologies and research have raised concerns about data privacy and protection, misuse of AI to harm people and society, bias in data and trained models, and AI divide that benefits the rich people and nations more than the poor. It is thus very important to learn about the ethical issues of AI including bias, fairness, privacy, trust, interpretability, and societal impact.
English Lecture
Y
CS577
Robot Learning and Interaction
3:0:3
Fall
Course Name
Robot Learning and Interaction
SubTitle
Course Code
CS577
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
This course will introduce graduate students to the emerging area of robot learning and interaction toward human-centered robotics. The course overviews each robotic learning and interaction areas including learning from demonstration (LfD), (inverse) reinforcement learning (RL), natural language interaction, interactive perception, etc. We will then review the state-of-the-art technologies and exercise a part of technologies using simulated robotic manipulators via Robot Operating System (ROS). Finally, we will exercise the learned techniques via final individual/team projects.
English Lecture
Y
CS578
Bionic Human-Robot Interaction
3:0:3
Spring or Fall
Course Name
Bionic Human-Robot Interaction
SubTitle
Course Code
CS578
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
We aim to study neural signal modellings through the integration of AI, control theory, neuroscience, biomechanics and robot design, and go over technologies of the human-robot interaction by using neural signals in the aspect of both software and hardware engineering. Discussion on the current and future trends and search about interdisciplinary approaches are planned. Various application examples will be demonstrated to promote students' understanding.
English Lecture
Y
CS588
Deep Learning based Image Search
3:0:3
Spring
Course Name
Deep Learning based Image Search
SubTitle
Course Code
CS588
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring
Course Description
In this class we will discuss various techniques related to image/video search. Especially, we will go over deep learning image/video features, their indexing data structures, and runtime query algorithms. We will also study recent learning based techniques that can handle various multi-modal data in addition to looking into novel applications of them.
English Lecture
N
CS591
Software Ecosystem
3:0:3
Fall
Course Name
Software Ecosystem
SubTitle
Course Code
CS591
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
As the importance of software in the overall industrial economy grows, and as the software industry undergoes important transformations, this course reviews software technology and the issues that surround its dissemination and use from a number of relevant perspectives. This includes the perpectives from the user, the creator, manager, software supply industry, software creation industry, government.
English Lecture
Y
CS592
Special Topics in Computing
3:0:3
Spring or Fall
Course Name
Special Topics in Computing
SubTitle
Course Code
CS592
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
본 과목은 급변하는 전산학의 다양한 주제들을 새로운 방향으로 다루어, 학생들에게 최신 기술 발전 동향을 교육하도록 한다. 또한 기존의 과목과는 다른 전산학의 토픽을 발굴하고, 향후 정규 과목으로 발전할 수 있는 가능성을 입증할 수 있도록 하는데 목적을 둔다.
English Lecture
N
CS600
Graph Theory
3:0:3
Spring or Fall
Course Name
Graph Theory
SubTitle
Course Code
CS600
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course is intended as a first course in graph theory. It covers the basic theory and applications of trees, networks, Euler graphs, Hamiltonian graphs, matchings, colorings, planar graphs, and network flow.
English Lecture
N
CS610
Parallel Processing
3:0:3
Spring
Course Name
Parallel Processing
SubTitle
Course Code
CS610
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring
Course Description
This course discusses both parallel software and parallel architectures. It starts with an overview of the basic foundations such as hardware technology, applications and, computational models. An overview of parallel software and their limitations is provided. Some existing parallel machines and proposed parallel architectures are also covered.
English Lecture
N
CS612
Social network-aware ubiquitous computing
3:0:3
Spring
Course Name
Social network-aware ubiquitous computing
SubTitle
Course Code
CS612
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring
Course Description
This course is intended for graduate students. This course introduces the fundamentals of social network aware ubiquitous computing. The first half of the course focuses on the main components of ubiquitous computing and social networking. The core concepts of social network aware ubiquitous computing will be explained by analysis of and discussion on existing approaches. Students will be asked to participate in prototyping of a social network aware ubiquitous computing application and/or system.
English Lecture
Y
CS620
Theory of Compiler Construction
3:0:3
Spring or Fall
Course Name
Theory of Compiler Construction
SubTitle
Course Code
CS620
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course's goal is to expose students to some research issues in modern programming language implementation. Topics include conventional data-flow analysis techniques, semantics-based flow analysis, type inference, type-based program analysis, and garbage collection.
English Lecture
Y
CS632
Embedded Operating Systems
3:0:3
Fall
Course Name
Embedded Operating Systems
SubTitle
Course Code
CS632
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
The goal of this course is to provide in-depth design concepts and implementation skills required for designing and developing embedded operating systems. Topics covered include boot loader, process management, memory management, I/O device management, and file systems in embedded operating systems.
English Lecture
N
CS634
Real-Time Systems
3:0:3
Spring or Fall
Course Name
Real-Time Systems
SubTitle
Course Code
CS634
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course aims to provide 1) broad understanding on real-time systems, 2) in-depth knowledge on real-time scheduling theories, and 3) hands-on experience on real-time operating systems. In particular, it will deal with real-time issues on smartphone operating systems.
English Lecture
N
CS636
UX-oriented Platform Design Studio Ⅰ
0:9:3
Spring or Fall
Course Name
UX-oriented Platform Design Studio Ⅰ
SubTitle
Course Code
CS636
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
0:9:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course provides a studio-oriented eduction for designing and prototyping UX-oriented SW platforms. Based on user study and creative concept development method, students will learn to extract system requirements, design a platform, and implement the proposed system. This course will emphasize design and implementation aspects for user-oriented SW systems, in addition to basic theoretical aspects for creative concept.
English Lecture
Y
CS644
Ubiquitous Networking
3:0:3
Spring or Fall
Course Name
Ubiquitous Networking
SubTitle
Course Code
CS644
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course serves to provide a more complete understanding of network architecture. In particular, these topics are discussed: internet architecture, architecture components, and architectural implication of new technologies and non-technical issues. The course is composed of lectures, invited presentations and term projects.
English Lecture
Y
CS646
Digital Contents Security
3:0:3
Spring or Fall
Course Name
Digital Contents Security
SubTitle
Course Code
CS646
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
In this course, the technology related with the contents security is studied. Various security issues of the multimedia including image, video and audio are covered.
English Lecture
Y
CS650
Advanced Software Engineering
3:0:3
Fall
Course Name
Advanced Software Engineering
SubTitle
Course Code
CS650
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
In this course, the fundamental concepts of object-orientation are covered from requirement analysis to implementation with various object-oriented methods including OMT, Booch method, and UML. In addition, several advanced topics in the field of object-orientation are also covered. These advanced topics include parallel and distributed object system, real-time issues, and so on.
English Lecture
N
CS652
Software & Systems Product Line Engineering
3:0:3
Spring or Fall
Course Name
Software & Systems Product Line Engineering
SubTitle
Course Code
CS652
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
In contrast that traditional software engineering has been focussed on single systems, software & systems product line (SSPL) is applicable to family of software systems and embedded systems. Students will understand the SSPL paradigms and will learn how to realize & evaluate SSPL. The key knowledge areas in this course include reference model, scoping, commonality, variability, domain and application engineering.
English Lecture
Y
CS654
Software Process
3:0:3
Spring or Fall
Course Name
Software Process
SubTitle
Course Code
CS654
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
Software process is an important leverage point from which to address software quality and productivity issues. Students will learn theoretical foundations on software process, the methods of defining process, and how to apply the process concepts to improve software quality and productivity.
English Lecture
N
CS655
System Modeling and Analysis
3:0:3
Spring or Fall
Course Name
System Modeling and Analysis
SubTitle
Course Code
CS655
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
Today's information systems are getting more complex, and need for automation systems is ever increasing. In this course we address basic modelling methods in system analysis and study static and dynamic analysis of systems using Petri Nets.
English Lecture
Y
CS656
Software Engineering Economics
3:0:3
Spring
Course Name
Software Engineering Economics
SubTitle
Course Code
CS656
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring
Course Description
The primary objectives of this course are to enable the students to understand the fundamental principles underlying software management and economics; to analyze management situations via case studies; to analyze software cost/schedule tradeoff issues via software cost estimation tools and microeconomic techniques; and to apply the principles and techniques to practical situations
English Lecture
Y
CS660
Information Storage and Retrieval
3:0:3
Spring
Course Name
Information Storage and Retrieval
SubTitle
Course Code
CS660
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring
Course Description
This course covers content analysis and indexing, file organization and record classification for information storage, query formulation, retrieval models, search or selection process, and application systems on question-answering systems, on-line information services, library automation, and other information systems.
English Lecture
Y
CS662
Distributed Database
3:0:3
Spring
Course Name
Distributed Database
SubTitle
Course Code
CS662
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring
Course Description
The goal of this course is to study the theory, algorithms and methods that underlie distributed database management systems.
English Lecture
Y
CS664
Advanced Database System
3:0:3
Spring or Fall
Course Name
Advanced Database System
SubTitle
Course Code
CS664
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
The goal of this course is to study the formal foundation of database systems. The course covers advanced topics such as deductive databases, relational database theory, fixed point theory, stratified negation, closed-world assumption, safety, multivalved dependency, generalized dependency and crash recovery.
English Lecture
N
CS665
Advanced Data Mining
3:0:3
Spring
Course Name
Advanced Data Mining
SubTitle
Course Code
CS665
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring
Course Description
Mining big data helps us find useful patterns and anomalies which lead to high impact applications including fraud detection, recommendation system, cyber security, etc. This course covers advanced algorithms for mining big data.
English Lecture
N
CS670
Fuzzy and Intelligent System
3:0:3
Spring or Fall
Course Name
Fuzzy and Intelligent System
SubTitle
Course Code
CS670
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
The aim of this course is to introduce basic concepts and knowledge of the fuzzy theory and its applications. This course also covers some important intelligent systems including the neural network model and genetic algorithm, and the fusion of the different techniques will be discussed.
English Lecture
Y
CS671
Advanced Machine Learning
3:0:3
Spring or Fall
Course Name
Advanced Machine Learning
SubTitle
Course Code
CS671
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course will cover advanced and state-of-the-art machine learning such as graphical models, Bayesian inference, and nonparametric models.
English Lecture
N
CS672
Reinforcement Learning
3:0:3
Spring or Fall
Course Name
Reinforcement Learning
SubTitle
Course Code
CS672
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course covers reinforcement learning, which is one of the core research areas in machine learning and artificial intelligence. Reinforcement learning has various applications, such as robot navigation/control, intelligent user interfaces, and network routing. Students will be able to understand the fundamental concepts, and capture the recent research trends.
English Lecture
N
CS674
Natural Language Processing II
3:0:3
Spring or Fall
Course Name
Natural Language Processing II
SubTitle
Course Code
CS674
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
The goal of this course is to provide students with current topics in natural language processing (NLP). Students are expected to get acquainted with various leading-edge ideas and techniques in NLP.
English Lecture
Y
CS676
Pattern Recognition
3:0:3
Fall
Course Name
Pattern Recognition
SubTitle
Course Code
CS676
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
Through this course, students are expected to acquire general ideas of pattern recognition and its application. Three fields (character, speech and image processing) will be studied in which pattern recognition techniques can be successfully applied.
English Lecture
N
CS680
Advanced Computer Graphics
3:0:3
Fall
Course Name
Advanced Computer Graphics
SubTitle
Course Code
CS680
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
In this class we will discuss various advanced computer graphics, virtual reality, and interaction techniques. More specifically, we will look into rendering, visibility culling, multi-resolution, cache-coherent methods, and data compression techniques for rasterization, global illumination and collision detection.
English Lecture
N
CS681
Computational Imaging
3:0:3
Spring or Fall
Course Name
Computational Imaging
SubTitle
Course Code
CS681
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course provides an introduction to color in computer graphics, with an in-depth look at two fundamental topics: digital color imaging techniques and numerical visual perception models. Students will work on an individual project on color of their choice.
English Lecture
N
CS682
Digital Storytelling
3:0:3
Spring or Fall
Course Name
Digital Storytelling
SubTitle
Course Code
CS682
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
The need for a computational approach to storytelling is growing due to the digitalization of all media types - text, image, and sound. Regardless of media types, the story forms the underlying deep structure. This course is concerned with computational aspects of storytelling: building a computational model for storytelling, narrative design, and applications of the computational model to the Web, games, e-books, and animation. Students are expected to build a coherent perspective on designing, implementing, and analyzing digital media.
English Lecture
Y
CS686
Motion Planning and Applications
3:0:3
Fall
Course Name
Motion Planning and Applications
SubTitle
Course Code
CS686
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
In this class we will discuss various techniques of motion and path planning for various robots. We go over various classic techniques such as visibility graphs and cell decomposition. In particular, we will study probabilistic techniques that have been used for a wide variety of robots and extensively investigated in recent years.
English Lecture
Y
CS700
Topics in Computation Theory
3:0:3
Spring or Fall
Course Name
Topics in Computation Theory
SubTitle
Course Code
CS700
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
Students study recent papers or books in the area of Theory of Computation.
English Lecture
N
CS710
Topics in Computational Architecture
3:0:3
Spring or Fall
Course Name
Topics in Computational Architecture
SubTitle
Low-Power Computing
Course Code
CS710
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course covers recently developed, new computer architectures. Students study and analyze new computational models, high-level languages, computer architectures etc.
English Lecture
N
CS712
Topics in Parallel Processing
3:0:3
Fall
Course Name
Topics in Parallel Processing
SubTitle
Course Code
CS712
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Fall
Course Description
In this course, students study parallel processing architectures, algorithms, and languages, especially their use in 5th generation computers. The course is based on recent papers, and can be seen as a continuation of Parallel Processing (CS610).
English Lecture
N
CS720
Topics in Programming Languages
3:0:3
Spring or Fall
Course Name
Topics in Programming Languages
SubTitle
Programming Languages and Environments on Smartphones
Course Code
CS720
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course covers recent research topics related to programming languages, such as theory, new paradigms, programming language design & implementation etc.
English Lecture
N
CS730
Topics in Operating Systems
3:0:3
Spring or Fall
Course Name
Topics in Operating Systems
SubTitle
Mobile Operating Systems
Course Code
CS730
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
The goal of this course is to develop abilities related to role and performance of operating systems. Students study and debate topics such as designing and implementing a new operating systems for a new environment, utilizing an existing operating systems effectively, OS architecture, ways of evaluating OS performance, file systems, threads, parallel operating systems, etc.
English Lecture
N
CS744
Topics in System Architecture
3:0:3
Spring or Fall
Course Name
Topics in System Architecture
SubTitle
Course Code
CS744
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
In this course, students learn about the structure of computer systems through individual projects and experiments related to user interfaces and object-oriented architectures.
English Lecture
N
CS748
Topics on Information Security
3:0:3
Spring or Fall
Course Name
Topics on Information Security
SubTitle
Cyber Security
Course Code
CS748
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
The goal of this course is to discuss with the research trends and hot issues on information security and suggest the best security practices on new emerging IT services or systems as the security expertise.
English Lecture
N
CS750
Topics in Software Engineering
2:3:3
Spring or Fall
Course Name
Topics in Software Engineering
SubTitle
Course Code
CS750
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
2:3:3
Level
Graduate
Semester
Spring or Fall
Course Description
Students study advanced topics in software engineering, such as formal specification, reuse, software development environments, theory of testing, proving program correctness, etc.
English Lecture
N
CS760
Topics in Database System
3:0:3
Spring or Fall
Course Name
Topics in Database System
SubTitle
Course Code
CS760
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
In this course, students study and discuss recent developments and topics in database systems.
English Lecture
N
CS770
Topics in Computer Vision
3:0:3
Spring or Fall
Course Name
Topics in Computer Vision
SubTitle
Course Code
CS770
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course consists of lectures about major topics related to computer vision, seminars, and projects. Recent major topics are motion detection and analysis, parallel computer vision systems, CAD-based 3-D vision, knowledge-based vision, neural network-based vision, etc.
English Lecture
N
CS772
Topics in Natural Language Processing
3:0:3
Spring or Fall
Course Name
Topics in Natural Language Processing
SubTitle
Course Code
CS772
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course covers the theory of natural language processing and recent developments in practice. Students study the theory of language, parsing, situational semantics, belief models etc. They practice by designing and developing utilities and systems.
English Lecture
N
CS774
Topics in Artificial Intelligence
3:0:3
Spring or Fall
Course Name
Topics in Artificial Intelligence
SubTitle
(Social Media Analytics)
Course Code
CS774
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
The goal of this course is to provide students with recent theory of AI and its application. It covers information representation. heuristic search, logic and logic language, robot planning, AI languages, expert system, distributed AI system, uncertainty problem and so on.
English Lecture
Y
CS776
Topics in Cognitive Science
3:0:3
Spring or Fall
Course Name
Topics in Cognitive Science
SubTitle
Course Code
CS776
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course defines humans' cognitive ability, and then studies a variety of methodologies by which cognitive psychology, artificial intelligence, computer science, linguistics, and philosophy apply this ability to machines. This course focuses on 'neural networks' as a computational model of the brain and as a method for approaching fields that computers cannot solve efficiently, such as pattern recognition, voice recognition and natural language processing.
English Lecture
N
CS780
Topics in Interactive Computer Graphics
2:3:3
Spring or Fall
Course Name
Topics in Interactive Computer Graphics
SubTitle
Course Code
CS780
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
2:3:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course covers advanced topics of computer graphics such as modeling geometric objects, rendering and processing three-dimensional objects, and manipulating motion. The course surveys and analyzes recent results, and discusses the research focus for the future.
English Lecture
N
CS788
Topics on Human-Computer Interaction
3:0:3
Spring or Fall
Course Name
Topics on Human-Computer Interaction
SubTitle
Physical Interaction
Course Code
CS788
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
3:0:3
Level
Graduate
Semester
Spring or Fall
Course Description
This course focuses on technical problems in the interaction between humans and computers. Human-Computer interaction (HCI) is related to somatology, sociology, psychology as well as software and hardware. Through this course, students survey and analyze recent research tendencies, and discuss the future developments.
English Lecture
N
CS790
Technical Writing for Computer Science
2:3:3
Spring or Fall
Course Name
Technical Writing for Computer Science
SubTitle
Course Code
CS790
Course Type
Elective Major(Elective)
Prerequisite
Lecture:Lab:Credit
2:3:3
Level
Graduate
Semester
Spring or Fall
Course Description
The ability to communicate about technical matters is critical for IT professionals. The purpose of this course is to develop the student's technical communication skills, primarily in writing, but also in oral communication. Students practice the skills necessary for writing technical papers. Through active discussions and reviews, students work on their ability to convey technical ideas in a concise and well-organized manner.