2026-2027 Academic Catalog

Computer Science

Majors:

Minors: 

Concentrations:

Bachelor of Science, Computer Information Systems

The Common Academic Program (CAP) is an innovative curriculum that is the foundation of a University of Dayton education. It is a learning experience that is shared in common among all undergraduate students, regardless of their major. Some CAP requirements must be fulfilled by courses taken at UD. Some major requirements must also be fulfilled by courses taken at UD. Students should consult with their advisor regarding applicability of transfer credit to fulfill CAP and major program requirements. 

Common Academic Program (CAP) 1
First-Year Humanities Commons 26 cr. hrs.
Chaminade Seminar: Reading and Responding to the Signs of the Times
Marie Thérèse Seminar: Human Dignity and the Common Good
Second-Year Rhetoric and Writing3 cr. hrs.
Arts3 cr. hrs.
Mathematics3 cr. hrs.
Natural Science 34 cr. hrs.
Oral Communication3 cr. hrs.
Social Science3 cr. hrs.
Advanced Study9 cr. hrs.
Historical Studies (3 cr. hrs.) 4
Philosophical Studies (3 cr. hrs.)
Religious Studies (3 cr. hrs.) 5
Crossing Boundaries9 cr. hrs.
Faith Traditions (3 cr. hrs.)
Interdisciplinary Investigations (3 cr. hrs.) 4
Practical Ethical Action (3 cr. hrs.)
Diversity and Social Justice 5, 63 cr. hrs.
Major Capstone 70-6 cr. hrs.
Experiential Learning 80-3 cr. hrs.
Total Hours0-55
1

The credit hours listed reflect what is needed to complete each CAP component. However, they should not be viewed as a cumulative addition to a student's degree requirements because many CAP courses are designed to satisfy more than one CAP component (e.g., Crossing Boundaries and Advanced Studies) and may also satisfy requirements in the student's major.

2

May be completed with ASI 101 and ASI 102 through the Core Program. ASI 101 also fulfills CAP Arts and ASI 102 also fulfills CAP Second-Year Rhetoric and Writing.

3

Must include a lecture course and a lab.

4

U.S. History AP and CLEP credit will not satisfy this requirement.

5

Must be completed with a UD course or education abroad transfer credit; other types of transfer credit cannot be applied.

6

May not double count with First-Year Humanities Commons, Second-Year Rhetoric and Writing, Oral Communication, Social Science, or Natural Science CAP components, but may double count with courses taken to satisfy other CAP components and/or courses taken in the student's major. 

7

The course or experience is designed by faculty in each major; it may, or may not, be assigned credit hours. The Major Capstone CAP requirement must be completed with a UD course; transfer credit cannot be applied.

8

The course or experience will have variable credit, depending on the intensity and duration of the experience, or where it is housed in existing curricular and co-curricular spaces.

Science Breadth Requirements
Mathematics 19
Precalculus Math
&
Introductory Calculus I (Satisfies CAP Mathematics)
OR
Introductory Calculus I
&
Introductory Calculus II
=========================
Introduction to Statistics
OR
Statistical Methods I
Natural Sciences (Applies to CAP Natural Science) 18
===========================
Select two lecture/lab pairs from:
Concepts of Biology I: Cellular & Molecular Biology
and Concepts of Biology Laboratory I: Cellular & Molecular Biology
Concepts of Biology II: Evolution & Ecology
and Concepts of Biology Laboratory II: Evolution & Ecology
General Chemistry I
and General Chemistry I Laboratory
General Chemistry II
and General Chemistry II Laboratory
Physical Geology
and Physical Geology Laboratory
Geological History of the Earth
and Geological History of the Earth Laboratory
College Physics I
and College Physics Laboratory I
College Physics I
and College Physics Laboratory I
College Physics II
and College Physics Laboratory II
College Physics II
and College Physics Laboratory II
General Physics I - Mechanics
and General Physics Laboratory I
General Physics I - Mechanics
and General Physics Laboratory I
General Physics II - Electricity & Magnetism
and General Physics Laboratory II
General Physics II - Electricity & Magnetism
and General Physics Laboratory II
Major Requirements65
CPS 149Creative Media Applications4
or CSCI 149 Creative Media Applications
CPS 150Algorithms & Programming I4
or CSCI 150 Algorithms & Programming I
CPS 151Algorithms & Programming II4
or CSCI 151 Algorithms & Programming II
CPS 242Web Application Development3
or CSCI 242 Web Application Development
CPS 310Systems Analysis3
or CSCI 310 Systems Analysis
CPS 341Discrete Structures3
or CSCI 341 Discrete Structures
CPS 350Data Structures & Algorithms3
or CSCI 350 Data Structures & Algorithms
CPS 430Database Management Systems3
or CSCI 430 Database Management Systems
CPS 490Capstone I (Satisfies CAP Major Capstone)3
or CSCI 490 Capstone I
CPS 491Capstone II3
or CSCI 491 Capstone II
Select five CPS or CSCI courses (15 hrs., numbered higher than 310)
Minor Concentration
18 Credit Hrs.
Any minor program of study chosen by the student and approved by the student's academic advisor. This choice should involve an area where the student might apply skills acquired through this program.
Breadth
ASI 150Introduction to the University Experience1
PHL 319Information and AI Ethics (Satisfies CAP Practical Ethical Action and Adv Studies in PHL)3
Social and Behavioral Sciences (includes CAP Social Science) 16
Total Hours to total at least120
1

This requirement, and CAP components, will be satisfied in some cases by the minor that is chosen.

Bachelor of Science, Computer Science

The Common Academic Program (CAP) is an innovative curriculum that is the foundation of a University of Dayton education. It is a learning experience that is shared in common among all undergraduate students, regardless of their major. Some CAP requirements must be fulfilled by courses taken at UD. Some major requirements must also be fulfilled by courses taken at UD. Students should consult with their advisor regarding applicability of transfer credit to fulfill CAP and major program requirements. 

Common Academic Program (CAP) 1
First-Year Humanities Commons 26 cr. hrs.
Chaminade Seminar: Reading and Responding to the Signs of the Times
Marie Thérèse Seminar: Human Dignity and the Common Good
Second-Year Rhetoric and Writing3 cr. hrs.
Arts3 cr. hrs.
Mathematics3 cr. hrs.
Natural Science 34 cr. hrs.
Oral Communication3 cr. hrs.
Social Science3 cr. hrs.
Advanced Study9 cr. hrs.
Historical Studies (3 cr. hrs.) 4
Philosophical Studies (3 cr. hrs.)
Religious Studies (3 cr. hrs.) 5
Crossing Boundaries9 cr. hrs.
Faith Traditions (3 cr. hrs.)
Interdisciplinary Investigations (3 cr. hrs.) 4
Practical Ethical Action (3 cr. hrs.)
Diversity and Social Justice 5, 63 cr. hrs.
Major Capstone 70-6 cr. hrs.
Experiential Learning 80-3 cr. hrs.
Total Hours0-55
1

The credit hours listed reflect what is needed to complete each CAP component. However, they should not be viewed as a cumulative addition to a student's degree requirements because many CAP courses are designed to satisfy more than one CAP component (e.g., Crossing Boundaries and Advanced Studies) and may also satisfy requirements in the student's major.

2

May be completed with ASI 101 and ASI 102 through the Core Program. ASI 101 also fulfills CAP Arts and ASI 102 also fulfills CAP Second-Year Rhetoric and Writing.

3

Must include a lecture course and a lab.

4

U.S. History AP and CLEP credit will not satisfy this requirement.

5

Must be completed with a UD course or education abroad transfer credit; other types of transfer credit cannot be applied.

6

May not double count with First-Year Humanities Commons, Second-Year Rhetoric and Writing, Oral Communication, Social Science, or Natural Science CAP components, but may double count with courses taken to satisfy other CAP components and/or courses taken in the student's major. 

7

The course or experience is designed by faculty in each major; it may, or may not, be assigned credit hours. The Major Capstone CAP requirement must be completed with a UD course; transfer credit cannot be applied.

8

The course or experience will have variable credit, depending on the intensity and duration of the experience, or where it is housed in existing curricular and co-curricular spaces.

Science Breadth Requirements
MTH 168Analytic Geometry & Calculus I (Satisfies CAP Mathematics)4
MTH 169Analytic Geometry & Calculus II4
MTH 218Analytic Geometry & Calculus III4
MTH 301Matrix Theory and Applications3
MTH 367Statistical Methods I3
Select one natural sciences group from (Applies to CAP Natural Sciences):8
Concepts of Biology I: Cellular & Molecular Biology
and Concepts of Biology Laboratory I: Cellular & Molecular Biology
and Concepts of Biology II: Evolution & Ecology
and Concepts of Biology Laboratory II: Evolution & Ecology
General Chemistry I
and General Chemistry I Laboratory
and General Chemistry II
and General Chemistry II Laboratory
Physical Geology
and Physical Geology Laboratory
and Geological History of the Earth
and Geological History of the Earth Laboratory
General Physics I - Mechanics
and General Physics II - Electricity & Magnetism
and General Physics Laboratory I
and General Physics Laboratory II
General Physics I - Mechanics
and General Physics Laboratory I
and General Physics II - Electricity & Magnetism
and General Physics Laboratory II
Natural Sciences 26
Major Requirements50
CPS 150Algorithms & Programming I4
or CSCI 150 Algorithms & Programming I
CPS 151Algorithms & Programming II4
or CSCI 151 Algorithms & Programming II
CPS 250Computer Organization and Architecture3
or CSCI 250 Computer Organization and Architecture
CPS 341Discrete Structures3
or CSCI 341 Discrete Structures
CPS 350Data Structures & Algorithms3
or CSCI 350 Data Structures & Algorithms
CPS 352Concepts and Implementation of Programming Languages3
or CSCI 352 Concepts and Implementation of Programming Languages
CPS 356Operating Systems: Modern Mobile Devices and Massive Concurrency3
or CSCI 356 Operating Systems: Modern Mobile Devices and Massive Concurrency
CPS 420Software Engineering3
or CSCI 420 Software Engineering
CPS 450Design and Analysis of Algorithms (Satisfies CAP Integrative)3
or CSCI 450 Design and Analysis of Algorithms
CPS 470Computer Networks and Security3
or CSCI 470 Computer Networks and Security
CPS 490Capstone I (Satisfies CAP Major Capstone)3
or CSCI 490 Capstone I
CPS 491Capstone II3
or CSCI 491 Capstone II
Select four CPS or CSCI courses (300/400 level) 312
Breadth
ASI 150Introduction to the University Experience1
PHL 319Information and AI Ethics (Satisfies CAP Practical Ethical Action and Adv Studies in PHL)3
or PHL 312 Ethics
or PHL 316 Engineering Ethics
or PHL 321 Environmental Ethics
Social and Behavioral Sciences (Includes CAP Social Science)6
Total Hours to total at least120
1

CPS 353 will not count towards major requirement.

2

Select two acceptable courses for Science or Engineering majors.

3

These courses may be taken from any area as defined by the department. At least three courses in an area are required for obtaining a concentration.

Minor in Computer Science

Computer Science
CPS 149Creative Media Applications4
or CSCI 149 Creative Media Applications
CPS 150Algorithms & Programming I4
or CSCI 150 Algorithms & Programming I
CPS 151Algorithms & Programming II4
or CSCI 151 Algorithms & Programming II
CPS 350Data Structures & Algorithms3
or CSCI 350 Data Structures & Algorithms
CPS 430Database Management Systems3
or CSCI 430 Database Management Systems
Select one 400 level CPS or CSCI course3
Total Hours21
 

Minor in AI and Data Science

This Minor in AI and Data Science offers theoretical/practical coursework to design intelligent systems and gain insights from complex data. Students from different disciplines will gain an experience that makes a positive impact on their future careers in their fields of study. The minor program will provide them with the ability to successfully pursue professional development. They will learn programming skills, machine learning techniques, and use of various modern software tools for addressing challenges that they may come across in today’s high-tech society. They also become self-reliant and better able to handle vague instructions.

CPS 149Creative Media Applications4
or CSCI 149 Creative Media Applications
CPS 249 Programming and Data Structures in Python3
or CSCI 249 Programming and Data Structures in Python
CPS 349Data Science3
or CSCI 349 Data Science
CPS 449Cloud-based Intelligent Application Development3
or CSCI 449 Cloud-based Intelligent Application Development
CPS 480Artificial Intelligence3
or CSCI 480 Artificial Intelligence
Total Hours16

Concentration in AI and Data Science

This concentration in AI and Data Science offers theoretical/practical coursework to facilitate the improvement of intelligent and machine learning system design and the awareness of the role of such systems in society. 

Select three courses from the following: 19
User Interface Design and Development
User Interface Design and Development
Database Management Systems
Database Management Systems
Big Data and Cloud Computing
Big Data and Cloud Computing
Interactive Media
Interactive Media
Artificial Intelligence
Artificial Intelligence
Intelligent Systems and Machine Learning
Intelligent Systems and Machine Learning
Evolutionary Computation
Evolutionary Computation
Total Hours9
1

Other courses can count toward this concentration with the permission of the chair.

Concentration in Cyber Defense

This concentration in Cyber Defense offers theoretical/practical coursework to facilitate the improvement of secure computing system design and the awareness of the role of such systems in society. 

Fundamentals of Cyber Security
Fundamentals of Cyber Security
Secure Application Development
Secure Application Development
Choose one course from the following: 13
Software Testing and Security Analysis
Software Testing and Security Analysis
Cyber Forensics
Cyber Forensics
UNIX/Linux Programming
UNIX/Linux Programming
Computer Architecture and Design
Computer Architecture and Design
Computer Networks and Security
Computer Networks and Security
Computer and Network Security
Computer and Network Security
Reverse Code Engineering
Reverse Code Engineering
Software Security
Software Security
Total Hours3
1

Other courses can count toward this concentration with the permission of the chair.

 

Concentration in Software Engineering

This concentration in Software Engineering offers theoretical/practical coursework to facilitate the improvement of software system design and the awareness of the role of such systems in society. 

Choose three courses from the following: 19
Systems Analysis
Systems Analysis
User Interface Design and Development
User Interface Design and Development
Software Testing and Security Analysis
Software Testing and Security Analysis
Software Engineering
Software Engineering
Database Management Systems
Database Management Systems
Database Management Systems II
UNIX/Linux Programming
UNIX/Linux Programming
Emerging Programming Languages
Automata Theory
Automata Theory
Total Hours9
1

Other courses can count toward this concentration with the permission of the chair.

Courses

CSCI 149. Creative Media Applications. 4 Hours

This is a multidisciplinary, project-driven learning process course that encourages students to develop problem-solving and teamwork skills while fostering creativity and logic. The goal is not only to provide students with some “programming maturity " but also to engage them through working in small teams on existing projects related to their discipline and interests.

CSCI 150. Algorithms & Programming I. 4 Hours

Introduction to computers and programming using a high-level, structured language. Topics include problem solving, algorithms, programming constructs, data representation, stepwise refinement, and debugging.

CSCI 151. Algorithms & Programming II. 4 Hours

Algorithms and Programming II covers object-oriented design and development, data abstraction, exception handling, linked lists, stacks, queues, binary trees, and recursion using a high level, structured language. Prerequisite(s): CSCI 150.

CSCI 242. Web Application Development. 3 Hours

Web application development using the state-of-the-art environments such as markup languages, scripting languages, dynamic web pages, server side technologies, and database access. Prerequisite(s): CSCI 151.

CSCI 249. Programming and Data Structures in Python. 3 Hours

This course will introduce the core data structures of the Python programming language. We explore fundamental data structures, their design, implementation, and effective use in solving problems. Topics include data structures such as trees, search trees, queues, and graphs. Prerequisite(s): CSCI 149.

CSCI 250. Computer Organization and Architecture. 3 Hours

Machine and assembly language instructions, and writing assembly programs. Design of basic logic circuits needed in constructing a computer. Design of circuits for information encoding, arithmetic units, and transferring and storing information. Data path and control unit for a simple processor. Multiprocessing and alternative parallel systems. Prerequisite(s): CSCI 151.

CSCI 310. Systems Analysis. 3 Hours

Methodologies for developing software, software development life cycles, data flow approach for system development, data dictionary, process specification, input/output design, E-R diagrams, normalization, and introduction to object-oriented analysis. Prerequisite(s): CSCI 151.

CSCI 312. Systems Design. 3 Hours

Software design process; developing structured design (e.g., structure charts) from data flow approach using coupling, cohesion, and other design guidelines; fine-tuning object-oriented analysis model to design using design patterns, and implementation. Prerequisite(s): CSCI 310.

CSCI 341. Discrete Structures. 3 Hours

Propositional logic, Boolean algebra, predicate logic, logical deductions, proof techniques, sets, combinatorics, recurrences, functions, relations, discrete structures such as graphs, digraphs, and associated algorithms. Prerequisite(s): CSCI 150.

CSCI 343. Comparative Languages. 3 Hours

Language design issues, formal syntax specification, data types and storage methods, activation records and procedural object oriented, functional, and logic programming paradigms. Prerequisite(s): CSCI 350 or CPS 350.

CSCI 349. Data Science. 3 Hours

Design and implementation of systems for data analytics. Topic includes supervised/unsupervised machine learning, regression analysis, neural network, statistical analysis, and data visualization. Prerequisite: CSCI 249.

CSCI 350. Data Structures & Algorithms. 3 Hours

Dynamic nonlinear data structures including trees, binary trees, search trees, balanced search trees, priority queues, and graphs, with an emphasis on their implementation, uses, and associated algorithms. Analysis of the computational complexity of algorithms related to these structures. Prerequisite(s): CSCI 151 or CPS 151.

CSCI 352. Concepts and Implementation of Programming Languages. 3 Hours

Study of programming language concepts through the implementation of interpreters and assessment of the conceptual differences in the resulting languages. Concepts covered include syntax and semantics, regular and context-free grammars, parsing, binding, scope, parameter passing, lazy evaluation, types, currying, and continuations. A comparative survey of the imperative, functional, logical, and object-oriented paradigms of programming is presented. Prerequisite(s): CSCI 350.

CSCI 356. Operating Systems: Modern Mobile Devices and Massive Concurrency. 3 Hours

Introduces the theoretical and practical concepts underlying an operating system's structure and operation. Topics include process and thread creation and management, scheduling, concurrent, multi-threaded programming and synchronization, deadlock, memory management, virtual memory, and computer security. Prerequisite(s): (CSCI 250 or ECE 314) and CSCI 350.

CSCI 410. User Interface Design and Development. 3 Hours

Addresses the practical problems of designing interfaces for modern software as well as other interactive media. Topics include interaction framework and styles, design principles, design models, new interactive technologies, usability testing and facets of interaction. Group activities and project work is an integral part of this course. Prerequisite(s): CSCI 350.

CSCI 415. Software Testing and Security Analysis. 3 Hours

Detailed examination of the software testing and security analysis process. Topics include testing methodologies, code analysis techniques, and secure programing principles and practices. Prerequisite(s): CSCI 350.

CSCI 420. Software Engineering. 3 Hours

Provides an overview of the software engineering discipline. Topics include software processes, requirements engineering, system modeling, architectural design, software testing, dependability and security, software reuse, distributed software engineering, project planning, quality management, configuration management, and process improvement. Prerequisite(s): CSCI 350.

CSCI 422. Software Project Management. 3 Hours

Introduction to software project management. Topics include process models for software development, project planning techniques, estimation techniques, measuring and controlling work products and processes, managing project risk, teams and communication, and organizational issues. Prerequisite(s): CSCI 310.

CSCI 430. Database Management Systems. 3 Hours

Physical and logical organization of databases: the entity-relationship model; relational database model; the data definition and data manipulation language of a commercial database management system; integrity constraints; conceptual database design. Prerequisite(s): CPS 350 or CSCI 350.

CSCI 433. Cyber Forensics. 3 Hours

Preserving, recovering, and analyzing digital evidence found in physical and virtual worlds. Topics include data and information retrieval; computer/media forensic analysis, techniques, and tools; and basic criminal law concepts. Prerequisite(s): CSCI 356.

CSCI 434. Big Data and Cloud Computing. 3 Hours

Focuses on technologies to make intelligent decisions for scientific and business applications. Topics include semantic web, knowledge representation languages for expressing metadata, machine learning, data visualization, data integration, and predictive models. Prerequisite(s): CSCI 350.

CSCI 444. UNIX/Linux Programming. 3 Hours

Prepares students for developing software in the UNIX/Linux environment using the C programming language. Topics include system libraries and system calls, shells, system structures and internals, interprocess communication (pipes and signals), network programming (client-server model and sockets), pattern matching and filters, shell programming, automatic program generation, and GUI programming. Prerequisite(s): CSCI 356.

CSCI 449. Cloud-based Intelligent Application Development. 3 Hours

State-of-art techniques in building intelligent applications on the cloud that can be applied in various domains. Prerequisite(s): CSCI 249 or CSCI 350.

CSCI 450. Design and Analysis of Algorithms. 3 Hours

Introduction to order notation and algorithm analysis. Emphasis will be on learning algorithm design techniques such as divide and conquer, greedy approach, and dynamic programming through exposition of classical algorithms from domains such as sorting, string matching, and graph algorithms. Hardness of problems and introduction to the complexity classes P, NP, and NP-complete. Topics also include impact of computing techniques to the improvement or welfare of society as a whole. Prerequisite(s): CSCI 341, CSCI 350.

CSCI 455. Computer Architecture and Design. 3 Hours

Provides a foundation for understanding and evaluating the design principles incorporated in modern computers. Topics include history and classification of computers, instruction-level, data-level, and thread-level parallelism. Prerequisite(s): CSCI 250, CSCI 350.

CSCI 460. Computer Graphics. 3 Hours

Introduction to primitives and interactive graphics software development. Topics include transforms, clipping, modeling, rendering, texture, animation, and ray tracing. Prerequisite(s): CSCI 350.

CSCI 465. Interactive Media. 3 Hours

Provides an exposure to the capabilities of new digital tools to create new experiences. Topics include tools/techniques for collecting, analyzing, and visualizing 3D data; interactive audio/video using motion/light detectors; mobile interfaces; animation; smart rooms; and social networks. Prerequisite(s): CSCI 350.

CSCI 470. Computer Networks and Security. 3 Hours

Computer Networks and Security focus on Internet protocols and secure protocols. Topics include the web, domain name systems, reliable data transfer, flow control, congestion control, routing, wireless networks, secure computing, Internet vulnerability and security. Prerequisite: CSCI 350.

CSCI 471. Fundamentals of Cyber Security. 3 Hours

This course introduces the student to the theoretical basis of cyber security and provides practical experience in hardening a system against cyber attacks. The course explains the essential concepts of cyber security and applies those concepts to a modern networked operating system via course lectures and a project. Prerequisite: CSCI 341.

CSCI 472. Computer and Network Security. 3 Hours

Computer and Network Security covers information protection. Topics includes techniques for security in multi-user and distributed systems, principles of secure design, cryptography, authentication, access-control, intrusion detection and viruses, firewalls, wireless security, cracking WEP keys, and VPN security. Prerequisite(s): CSCI 356.

CSCI 473. Reverse Code Engineering. 3 Hours

Study theories on the application of cyber power to achieve certain objectives. Topics includes cyber policy, tracing strategy, targeting, cyber intelligence, measuring effects, and legal and ethical issues. Prerequisite(s): CSCI 350.

CSCI 474. Software Security. 3 Hours

Introduction to the fundamental topics of software vulnerabilities and attacks together with the countermeasures to prevent the attacks. Covered concepts include vulnerability taxonomies such as CVE, race conditions, buffer overflows, privilege escalation attacks, input validation issues, trust relationships, web security, mobile security, and cutting-edge security research. Prerequisite(s): CSCI 341 and CSCI 350.

CSCI 475. Secure Application Development. 3 Hours

This course introduces secure programming principles and practices to develop robust, secure software systems that are free from vulnerabilities. Constructive secure programming techniques are integrated with modern application development technologies so that security can be built-in during the design phase in the development process to avoid potential software vulnerabilities and attacks. Prerequisite(s): CSCI 341 and CSCI 350.

CSCI 477. Honors Thesis. 3 Hours

First of two courses leading to the selection, design, investigation, and completion of an independent, original Honors Thesis project under the guidance of a faculty research advisor. Restricted to students in the University Honors Program with permission of the program director and department chairperson. Students pursuing an interdisciplinary thesis topic may register for three semester hours each in two separate disciplines in consultation with the department chairpersons. Prerequisite(s): Approval of University Honors Program.

CSCI 478. Honors Thesis. 3 Hours

Second of two courses leading to the selection, design, investigation, and completion of an independent, original Honors Thesis project under the guidance of a faculty research advisor. Restricted to students in the University Honors Program with permission of the program director and department chairperson. Students pursuing an interdisciplinary thesis topic may register for three semester hours each in two separate disciplines in consultation with the department chairpersons. Prerequisite(s): Approved 477; approval of University Honors Program.

CSCI 480. Artificial Intelligence. 3 Hours

Fundamentals concepts and techniques of intelligent systems. Topics includes knowledge representation, search strategies, predicate logic, and expert systems. Prerequisite(s): CSCI 350 or CSCI 249.

CSCI 481. Intelligent Systems and Machine Learning. 3 Hours

State-of-art techniques in building intelligent systems. Topics include soft computing, agents and multiagent systems, and machine learning. Prerequisite(s): CSCI 350.

CSCI 482. Automata Theory. 3 Hours

Formal languages (regular, context-free, recursive, and recursively enumerable), machine models (deterministic and non-deterministic finite automata, push down automata, Turing machines), grammars (regular, context-free, and unrestricted), interplay among these concepts, Church-Turing thesis, and undecidability. Prerequisite(s): CSCI 341.

CSCI 483. Graph Algorithms. 3 Hours

Design and analysis of algorithms for problems based on graphs. Classical algorithms and efficient algorithms for restricted domains of graphs will be covered. Analysis of algorithms, complexity classes P, NP, and NP-complete, traversals, bi-connectedness, strongly-connectedness, 2-SAT, planarity testing, and algorithms for restricted classes of graphs. Prerequisite(s): CSCI 341, CSCI 350.

CSCI 485. Evolutionary Computation. 3 Hours

The history and use of Evolutionary Computation (EC) are explored. Popular approaches to EC (genetic algorithms, genetic programming, evolution strategies, evolutionary programming) are defined and discussed. Coursework includes implementation of evolutionary techniques and review and analysis of literature in the field. Prerequisite(s): CSCI 350.

CSCI 490. Capstone I. 3 Hours

Examination of principles, practices, and methodology for development of large software systems using data flow and object-oriented methodologies. User interface design, software testing, and software project management. Selecting and planning a team project; this involves team formation, project selection, project planning, and proposal writing and presentation. Prerequisite(s): CSCI 420 for CSCI Majors or CSCI 310 for CIS Majors.

CSCI 491. Capstone II. 3 Hours

An exercise in the design, implementation, documentation, and deployment of a group project culminating in a presentation to the computer science faculty and industry representatives. Prerequisite(s): CSCI 490.

CSCI 499. Special Topics in Computer Science. 1-4 Hours

Lectures or laboratory work in advanced topics from the various areas of computer science. By arrangement. May be taken more than once. Prerequisite(s): Permission of department chairperson.