3-0-3
| Programming Languages | 3 |
Co-requisite: CSCI 651
The general principles of modern programming language design: Imperative (as exemplified by Pascal, C and Ada), functional (Lisp), and logical (Prolog) languages. Data management, abstract data types, packages, and object-oriented languages (Ada, C + +). Control structures. Syntax and formal semantics. While some implementation techniques are mentioned, the primary thrust of the course is concerned with the abstract semantics of programming languages.
3-0-3 |
| Algorithm Concepts | 3 |
Abstract Data Structures are reviewed. The course covers the study of both the design and analysis of algorithms. Design methods include: divide-and-conquer; the greedy method; dynamic programming; basic traversal and search techniques algebraic and geometric problems as well as parallel algorithms (PRAM). Space and time complexity; performance evaluation; and NP-Hard and NP-Complete classes are also covered. The purpose of this approach to the subject is to enable students to design and analyze new algorithms for themselve.
3-0-3 |
| | Total: 9 Credits |
Electives can be selected from the following list in the areas of: Computer Science; Cybersecurity; and Data Science. |
|
| Credits: |
| Distributed Systems | 3 |
This course introduces the principles and practice underlying the design of distributed systems, both Internet-based and otherwise. Major topics include interprocess communication and remote invocation, distributed naming, distributed file systems, data replication, distributed transaction mechanisms, and distributed shared objects, secure communication, authentication and access control, mobile code, transactions and persistent storage mechanisms. A course project is required to construct working distributed applications using contemporary languages, tools and environments.
3-0-3 |
| Operating System Security | 3 |
In this course students are introduced to advanced concepts in operating systems with emphasis on security. Students will study contemporary operating systems including UNIX and Windows. Topics include the application of policies for security administration, directory services, file system security, audit and logging, cryptographic enabled applications, cryptographic programming interfaces, and operating system integrity verification techniques. Equivalent to ITEC 445.
3-0-3 |
| Information Retrieval | 3 |
This course provides students with an introduction to the basics and techniques of information retrieval. Topics cover search engines, retrieval strategies such as vector space, extended Boolean, probabilistic models and evaluation methods including relevance-based measures, query processing, indexing and searching. Classroom Hours- Laboratory and/or Studio Hours- Course Credits: 3-0-3
3-0-3 |
| Big Data Analytics | 3 |
Organizations today are generating massive amounts of data that are too large and unstructured to fit in relational databases. Organizations and enterprises are turning to massively parallel computing solutions such as Hadoop. The Apache Hadoop platform allows for distributed processing of large data sets across clusters of computers using the map and reduce programming model. Students will gain an in-depth understanding of how MapReduce and Distributed File Systems work. In addition, they will be able to author Hadoop-based MapReduce applications in Java and use Hadoop subprojects Hive and Pig to build powerful data processing applications. Industry systems, such as IBM InfoSphere BigInsights and IBM InfoSphere Streams will be studied. Classroom Hours- Laboratory and/or Studio Hours- Course Credits: 3-0-3
3-0-3 |
| Computer Architecture I | 3 |
This course explores modem architectural design patterns and exposes the students to latest technologies used to build computing systems. Concepts presented in this course include but are not limited to pipelining, multicore processors, superscalar processors with in-order and out-of order execution, virtual machines, memory hierarchy, virtual memory, interconnection networking, storage and I/0 architectures, computer clustering and cloud computing. Students are introduced to performance evaluation techniques and learn how to use the results of such techniques in the design of computing systems. Equivalent to EENG 641.
3-0-3 |
| Numerical Analysis | 3 |
Real and complex zeros of a function and polynomials, interpolation, roundoff error, optimization techniques, least square techniques, orthogonal functions, Legendre and Chebyshev polynomials, numerical integration and differentiation, numerical solution of differential equations with initial and boundary values. The numerical methods developed will emphasize efficiency, accuracy and suitability to high-speed computing. Selected algorithms may be flowcharted and programmed for solution on a computer.
3-0-3 |
| Database Interface and Programming | 3 |
An advanced course in static and dynamic programming embedded SQL using C. Open Database Connectivity (ODBC), interface to access data from various database management systems with Structured Query Language (SQL). Classroom Hours- Laboratory and/or Studio Hours- Course Credits: 3-0-3
3-0-3 |
| Principles of Information Security | 3 |
In this course students will study the issues involved in structuring information systems to meet enterprise requirements including security and public policy regulations. Topics include the building blocks of an information system, emphasizing the security and administration aspects of each, as well as life- cycle considerations, and risk management. The course will also include a special project or paper as required and specified by the instructor and the SoECS graduate committee. Classroom Hours- Laboratory and/or Studio Hours- Course Credits 3-0-3
|
| Automata Theory | 3 |
Theory of finite automata, identification of states. Turing Machines, neural nets, majority logic. Applications in pattern recognition and game playing. Hardware and software implementations.
3-0-3 |
| Distributed Database Systems | 3 |
Concepts underlying distributed systems: synchronization, communication, fault-tolerance. Concepts and architecture of distributed database systems. Distributed concurrency control and recovery. Replicated databases. Distributed Query Processing. Examples of commercial relational distributed DBMS. Classroom Hours- Laboratory and/or Studio Hours- Course Credits: 3-0-3
3-0-3 |
| Introduction to Data Mining | 3 |
This course introduces the concepts, techniques, and applications of data mining. Topics include data preprocessing, clustering, data warehouse and Online Analytical Processing (OLAP) technology, cluster and social network analysis, data classification and prediction, multimedia and web mining. Classroom Hours- Laboratory and/or Studio Hours- Course Credits: 3-0-3
3-0-3 |
| Software Engineering | 3 |
Techniques for the development and implementation of high-quality digital computer software are presented. Major areas covered in the course include software quality factors and metrics, software development outlines and specification languages, top-down vs. bottom-up design and development, complexity, testing and software reliability.
3-0-3 |
| Computer Networks | 3 |
Connection of multiple systems in a networked environment. Topics include physical connection alternatives, error management at the physical level, commercially available protocol support, packet switching, LANs, WANs and Gateways.
3-0-3 |
| Artificial Intelligence I | 3 |
Prerequisite: CSCI 651
This course will cover machine learning (ML) concepts, decision theory, classification, clustering, feature selection, and feature extraction. Emphasis is on the core idea and optimization theory behind ML methods. Important ML applications (including biometrics and anomaly detection) will also be covered.
3-0-3 |
| Database Systems | 3 |
Prerequisites: CSCI 651 or DTSC 610
Design and implementation of databases. Hierarchal and network concepts; relational databases systems; entity relationship model: query languages; relational design theory; security and authorization; access methods; concurrency control backup and recovery.
3-0-3 |
| Advanced Software Engineering | 3 |
Prerequisite: CSCI 665
The major emphasis in this course is on the structural design of software. Methods and concepts covered include cohesion and coupling; structured and composite design: Jackson methodology; higher order software; data abstraction and design of program families.
3-0-3 |
| Advanced Network and Internet Security | 3 |
In this course, students are introduced to the design of secure computer networks. Exploitation of weaknesses in the design of network infrastructure and security flaws in network protocols are presented and discussed. Network operation systems and network architectures are reviewed, together with the respective security related issues. Issues related to the security of content and applications such as emails, DNS, web servers are also addressed. Security techniques including intrusion detection, forensics, cryptography, authentication and access control are analyzed. Security issues in IPSEC, SSL/ TLS and the SSH protocol are presented.
3-0-3 |
| Computer Security Risk Management and Legal Issues | 3 |
This course explores several domains in the Information Security Common Body of Knowledge. Students in this course will be introduced to the following domains within Information Security: Security Management Practices, Security Architecture and Models, Business Continuity Planning (BCP), Disaster Recovery Planning (DRP), Law, Investigations, Ethics, Physical Security, Operations Security, Access Control Systems and Methodology, Network and Internet Security. 3-0-3
|
| Digital Forensics | 3 |
Prerequisite: INCS 615
Digital forensics is concerned with the post-analysis of information systems that have already been compromised, usually by criminal actors. It is a field that encompasses a range of topics, including computer forensics, memory forensics, network forensics, and incident response. This course is an introduction to the investigation procedures that are used in digital forensics. These procedures, depending on the type of crime, reconstruct the events that led to the compromise. Students who take this course will gain an in depth understanding of handling digital evidence, gathering and investigating artifacts and evidence, and effectively managing security incidents, including incident response techniques for preventing and addressing cyberattacks.
3-0-3 |
| Cryptography | 3 |
In this course we introduce the students to key issues in cryptography. Topics covered include definitions of security, digital signatures, cryptographic hash functions, authentication, symmetric and asymmetric encryption, stream ciphers, and zero knowledge proof systems.
3-0-3 |
| Intrusion Detection and Hacker Exploits | 3 |
Prerequisite: CSCI 620 and INCS 615
Methods used in computer and network hacking are studied with the intention of learning how to better to protect systems from such intrusions. Methods used by hackers include reconnaissance techniques, system scanning, and gaining system access by network and application level attacks, and denial of service attacks. The course will extensively study Internet related protocols, methods of traffic analysis, tools and techniques for implementing traffic filtering and monitoring, and intrusion detection techniques. Students will study common hacking and evasion techniques for compromising intrusion detection systems.
3-0-3 |
| Data Center Security | 3 |
Prerequisite: INCS 745
Data Center Security is concerned with the study of computer architectures and systems that provide critical computing infrastructure. This infrastructure combines hardware devices including computers, firewalls, routers, switches, and software applications such as email systems, Web servers, and computer desktop operating systems, to implement and manage organization wide secure computing capability. Examples of critical systems include intranet, extranet, and Internet systems.
3-0-3 |
| Programming for Data Science | 3 |
This course will introduce basic programming concepts (i.e. in Python and R), and techniques including data structures (vector, matrix, list, data frame, factor), basic and common operations/concepts (indexing, vectorization, split, subset), data input and output, control structures and functions. Other topics will include string operations (stringr package) and data manipulation techniques (dplyr, reshape2 packages). The course will also explore data mining, such as probability basics/data exploration, clustering, regression, classification, graphics and debugging.
2-2-3 |
| Optimization Methods for Data Science | 3 |
Corequisites: DTSC 635
Basic concepts in optimization are introduced. Linear optimization (linear and integer programming) will be introduced including solution methods like simplex and the sensitivity analysis with applications to transportation, network optimization and task assignments. Unconstrained and constrained non-linear optimization will be studied and solution methods using tools like Matlab/Excel will be discussed. Extensions to game theory and computational methods to solve static, dynamic games will be provided. Decision theory algorithms and statistical data analysis tools (Z-test, t-test, F-test, Bayesian algorithms and Neyman Pearson methods) will be studied. Linear and non-linear regression techniques will be explored.
3-0-3 |
| Statistics for Data Science | 3 |
This course presents a range of methods in descriptive statistics, frequentist statistics, Bayesian statistics, hypothesis testing, and regression analysis. Topics includes point estimation, confidence interval estimation, nonparametric model estimation, parametric model estimation, Bayesian parametric models, Bayesian estimators, parametric testing, nonparametric testing, simple and multiple linear regression models, logistic regression model.
3-0-3 |
| Data Visualization | 3 |
This course is designed to provide an introduction to the fundamental principles of designing and building effective data visualizations. Students will learn about data visualization principles rooted in graphic design, psychology and cognitive science, and how to the use these principles in conjunction with state-of-the-art technology to create effective visualizations for any domain. Students who have taken this course will not only understand the current state-of-the-art in data visualization but they will be capable of extending it.
3-0-3 |
| Probability and Stochastic Processes | 3 |
This course starts with a review of the elements of probability theory such as: axioms of probability, conditional and independent probabilities, random variables, distribution functions, functions of random variables, statistical averages, and some well-known random variables such as Bernoulli, geometry, binomial, Pascal, Gaussian, and Poisson. The course introduces more advanced topics such as stochastic processes, stationary processes, correlations, statistical signal processing, and well-known processes such as Brownian motion, Poisson, Gaussian, and Markov. Prerequisite: Undergraduate level knowledge of probability theory.
3-0-3 |
| Introduction to Big Data | 3 |
Prerequisite: DTSC 610
This course provides an overview of big data applications ranging from data acquisition, storage, management, transfer, to analytics, with focus on the state-of-the-art technologies, tools, and platforms that constitute big-data computing solutions. Real-life big data applications and workflows are introduced as well as use cases to illustrate the development, deployment, and execution of a wide spectrum of emerging big-data solutions.
3-0-3 |
| Machine Learning | 3 |
Prerequisite: DTSC 615
In this course, students will learn important machine learning (ML) and data mining concepts and algorithms. Emphasis is on basic ideas and intuitions behind ML methods and their applications in activity recognition, and anomaly detection. This course will cover core ML topics such as classification, clustering, feature selection, Bayesian networks, and feature extraction. Classroom teaching will be augmented with experiments performed on machine learning systems. Student understanding and progress will be measured through quizzes, exams, homework, project assii.mments, proposals, term-paper reports, and presentations.
3-0-3 |
| Deep Learning | 3 |
Prerequisites: DTSC 620, DTSC 710
This course presents a range of topics from basic neural networks, convolutional and recurrent network structures, deep unsupervised and reinforcement learning, and applications to problem domains like speech recognition and computervision. Classroom Hours- Laboratory and/or Studio Hours- Course Credits: 3-0-3
3-0-3 |
| Biometrics | 3 |
Prerequisite: DTSC 710
Biometrics has emerged as an important tool for user identification and authentication in security-critical applications, both the physical and virtual world. At its core, biometrics is an application of machine learning and anomaly detection. This course introduces biometrics concepts by building on machine learning and anomaly detection, and shows how state-of-the-art machine learning techniques are currently applied to biometric authentication. The course covers core biometric topics, and discusses the innovations made in the past decade. The course also concentrates on emerging biometric applications and their privacy, security, and usability, implications in a networked society.
3-0-3 |
| | Total: 27 Credits |
** Students can register for the courses below multiple times with credits ranging from 1 to 9 to fulfill the total 30-credit requirement for research and dissertation. |
|
| Credits: |
| Independent Research** | 1–9 |
This course is devoted to independent research for PhD student. Work is carried out under supervision of a graduate school faculty member and must be approved by the chairperson of ECE department.
0-0-1 |
| | Total: 18 Credits |
|
| Credits: |
| Ph.D. Dissertation** | 1–9 |
Development and implementation of original research. After completion of preliminary dissertation proposal, candidates must continue to register for this course to maintain candidacy until the completed dissertation is submitted.
0-0-1 |
| | Total: 12 Credits |
Students will be required to maintain an overall GPA of 3.0 in Ph.D. courses. A grade below a B- will result in the student repeating the course. |
|
By continuing to use the website, you consent to analytics tracking per NYIT's Privacy Statement Accept Cookies
IMAGES
COMMENTS
Benefits of a Ph.D. in computer science include: Sharper Skills: A computer science doctorate can help you improve a variety of important career skills, such as research, communication, critical thinking, and problem-solving. Job Opportunities: Ph.D. in computer science graduates can qualify for promotions and higher-level roles.
A Ph.D. in computer science is a doctoral degree that students can earn after completing advanced research on a complex computer science topic, such as artificial intelligence (AI) or network architecture. A doctorate is the highest academic degree students can earn in the computer science field. These programs typically teach students how to ...
The Computer Science Department PhD program is a top-ranked research-oriented program, typically completed in 5-6 years. There are very few course requirements and the emphasis is on preparation for a career in Computer Science research. Eligibility. To be eligible for admission in a Stanford graduate program, applicants must meet: Degree level ...
No, it is not required that a student have majored in CS. However, it is important that you have strong quantitative and analytical skills. If I already have a PhD degree in Computer Science from another institution, may I apply to the PhD program at Stanford? No, if you have a PhD in CS from another institution, you cannot apply to the CS PhD ...
8 of the 10 courses must be disciplinary, and at least 7 of those must be technical courses drawn from the Harvard John A. Paulson School of Engineering and Applied Sciences, FAS or MIT. Of the 7 technical courses, at least 3 must be 200-level Computer Science courses, with 3 different middle digits (from the set 2,3,4,5,6,7,8), and with one of ...
The Computer Science Department also believes that teaching is an integral and important part of graduate-level education in Computer Science. In pursuing the PhD degree, students have clear and defined milestones that help guide them to the successful completion of their dissertation and oral defense.
In the Computer Science program, you will learn both the fundamentals of computation and computation's interaction with the world. Computer Science is an area of study within the Harvard John A. Paulson School of Engineering and Applied Sciences. Prospective students apply through Harvard Griffin GSAS; in the online application, select ...
Computer Science PhD Degree. In the Computer Science program, you will learn both the fundamentals of computation and computation's interaction with the world. Your work will involve a wide range of areas including theoretical computer science, artificial intelligence and machine learning, economics and computer science, privacy and security ...
Carnegie Mellon's Ph.D. in Computer Science is, above all, a research degree. When the faculty award a Ph.D., they certify that the student has a broad foundation and awareness of core concepts in computer science, has advanced the field by performing significant original research and has reported that work in a scholarly fashion. When you ...
The computer science Ph.D. program complies with the requirements of the Cornell Graduate School, which include requirements on residency, minimum grades, examinations, and dissertation. The Department also administers a very small 2-year Master of Science program (with thesis). Students in this program serve as teaching assistants and receive ...
The high cost of a graduate degree can make postsecondary education seem out of reach for many. Total tuition for the programs on this list costs $57,000 at Capital Tech and around $59,000 at NU ...
The PhD is the Computer Science Department's primary doctoral program. PhD students are expected to be during every fall and spring academic semester from initial enrollment until the dissertation has been distributed to their defense committee, except during leaves of absence approved by the university. PhD students spend at least half of ...
PhD Program. We are proud of the quality of PhD students we attract and the training they receive. All of our students receive support, including an annual stipend, in the form of external and internal competitive fellowships, research fellowships, or teaching fellowships. As a PhD candidate, you will share in the excitement of discovery as you ...
The Ph.D. in Computer Science aims to build the next generation of scholars in computer science research. At GW, doctoral students can expect to work closely with a faculty advisor in their chosen research area to create a curriculum plan and guidance for the doctoral dissertation.
Find Your Passion for Research Duke Computer Science gives incoming students an opportunity to investigate a range of topics, research problems, and research groups before committing to an advisor in the first year. Funding from the department and Duke makes it possible to attend group meetings, seminars, classes and colloquia. Students may work on multiple problems simultaneously while ...
Earning A PhD in Computer Science. An online PhD in Computer Science typically takes between 4-5 years to complete. It's always smart to research in-person and online formats to find the program that fits your schedule. Aspiring PhD students should consider admissions requirements, areas of specialization, and cost to ensure the program they ...
The standalone CSE PhD program is intended for students who intend to pursue research in cross-cutting methodological aspects of computational science. The resulting doctoral degree in Computational Science and Engineering is awarded by CCSE via the the Schwarzman College of Computing. In contrast, the interdisciplinary CSE PhD program is ...
While doing a PhD in Computer Science can be highly lucrative, you should never do a PhD for money alone. You should do a PhD for the love of learning. You should do it because you enjoy learning advanced materials in computer science, because you enjoy solving hard problems, and because you want to be known and respected for creating knowledge ...
We're thrilled that you are interested in our PhD program in computer science! This page provides an overview of the application process, some guidelines, and answers to specific questions. Please check our FAQ before emailing [email protected] with any questions not answered here. Our program accepts a large number of applicants each ...
The Department of Electrical Engineering and Computer Sciences (EECS) offers two graduate programs in Computer Science: the Master of Science (MS), and the Doctor of Philosophy (PhD). Master of Science (MS) The Master of Science (MS) emphasizes research preparation and experience and, for most students, is a chance to lay the groundwork for ...
Computer Science is an ever evolving and massively expanding field of study as technology continues to innovate and data grows exponentially. For those highly interested in research, earning your PhD in Computer Science can offer you top level accessibility to become an expert in the field and pursue either a high-level career within the industry or work in academia.
What can you do with a PhD in computer science? We generally think of PhDs—in any field—teaching and conducting research at a university, and in fact there are academic positions available to computer science PhDs. The majority wind up elsewhere, however; according to 80000hours.org, only about 30 percent of computer science PhDs wind up ...
A Master's degree in Computer Science with a 78% average. Student with an undergraduate degree in Computer Science may apply for admission directly to the PhD program. Successful applicants will have an outstanding academic record, breadth of knowledge in computer science, and strong letters of recommendation.
This course is devoted to independent research for PhD student. Work is carried out under supervision of a graduate school faculty member and must be approved by the chairperson of ECE department. ... A maximum of 18 credits can be transferred if the student has an M.S. degree in computer science or a related area, with approval of the program ...
The objective of the Computer Science Ph.D. program is to prepare exceptionally qualified individuals for research careers in academia and industry. The program is designed for students who offer evidence of exceptional scholastic ability, intellectual creativity, and research motivation. The Ph.D. degree is viewed as a certification by the ...