Saint Louis University Menu Search

Undergraduate

CSCI 1010
Introduction to Computer Science: Principles
A broad survey of the computer science discipline, focusing on the computer's role in representing, storing manipulating, organizing and communicating information. Topics include hardware, software, algorithms, operating systems, networks.
Prerequisite(s): None
More information

CSCI 1020
Introduction to Computer Science: Bioinformatics
An introduction to computer programming motivated by the analysis of biological data sets and the modeling of biological systems. Computing concepts to include data representation, control structures, text processing, input and output. Applications to include the representation and analysis of protein and genetic sequences, and the use of available biological data sets.
Prerequisite(s): None
More information

CSCI 1030
Introduction to Computer Science: Game Design
Introduces the design of computer and video games. Students learn the practical aspects of game implementation using computer game engines and 3D graphics tools, while simultaneously studying game concepts like history, genres, storylines, gameplay elements and challenges, and the design process.
Prerequisite(s): None
More information

CSCI 1040
Introduction to Computer Science: Mobile Computing
An introduction to programming based on the development of apps for mobile devices such as phones and tablets. Students will learn to design an effective user interface, to interact with device hardware and sensors, to store data locally and access Internet resources.
Prerequisite(s): None
More information

CSCI 1050
Introduction to Computer Science: Multimedia
An introduction to computer programming, motivated by the creation and manipulation of images, animations, and audio. Traditional software development concepts, such as data representation and control flow, are introduced for the purpose of image processing, data visualization, and the synthesis and editing of audio.
Prerequisite(s): None
More information

CSCI 1060
Introduction to Computer Science: Scientific Programming
Elementary computer programming concepts with an emphasis on problem solving and applications to scientific and engineering applications. Topics include data acquisition and analysis, simulation and scientific visualization.
Prerequisite(s): MATH 1510 or concurrent enrollment
More information

CSCI 1070
Introduction to Computer Science: Taming Big Data
An introduction to data science and machine learning. Fundamentals of data representation and analysis will be covered, with a focus on real-world applications to business intelligence, natural language processing, and social network analysis.
Prerequisite(s): None
More information

CSCI 1080
Introduction to Computer Science: World Wide Web
An introduction to the technology of the web, from the structure of the Internet (web science) to the design of dynamic web pages (web development). The web science component of the class introduces notions of the web as an example of a network and use the tools of graph theory to better understand the web. The web development component introduces some of the fundamental languages and tools for web programming.
Prerequisite(s): None
More information

CSCI 1090
Introduction to Computer Science: Special Topics
varies
Prerequisite(s): None
More information

CSCI 1300
Introduction to Object-Oriented Programming
An introduction to computer programming based upon early coverage of object-oriented principles such as classes, methods, inheritance and polymorphism, together with treatment of traditional flow of control structures. Good software development practices will also be established, including issues of design, documentation, and testing.
Prerequisite(s): MATH 1200 and C- or better in one of CSCI 1010 through CSCI 1090 or equivalent programming experience with permission
More information

CSCI 1930
Special Topics
varies
More information

CSCI 1980
Independent Study
More information

CSCI 2040
Unix Tools
An introduction to programming on the Unix command line, including a thorough grounding in regular expressions, programming with pipes and filters, parsing structured and semi-structured file formats, and web scraping.
More information

CSCI 2050 / PHIL 3410
Computer Ethics
This course examines the moral, legal, and social issues raised by computers and electronic information technologies for different stakeholder groups (professionals, users, business, etc.). Students are expected to integrate moral theories and social analysis for addressing such issues as intellectual property, security, privacy, discrimination, globalization, and community.
Prerequisite(s): PHIL 2050
More information

CSCI 2100
Data Structures
The design, implementation and use of data structures. Principles of abstraction, encapsulation and modularity to guide in the creation of robust, adaptable, reusable and efficient structures. Specific data types to include stacks, queues, dictionaries, trees and graphs.
Prerequisite(s): C- or better in CSCI 1300; passing grade or concurrent enrollment in MATH 1660
More information

CSCI 2190
Computational Problem Solving
Intended primarily to train students for the International Collegiate Programming Contest (ICPC), this course covers data structures, algorithms, and programming techniques that apply to typical programming challenges.
Prerequisite(s): CSCI 2100
More information

CSCI 2300
Object-Oriented Software Design
An implementation-based study of object-oriented software development. Teams will design and create medium-scale applications. Additional focus on the design and use of large object-oriented libraries, as well as social and professional issues.
Prerequisite(s): C- or better in CSCI 2100
More information

CSCI 2400 / ECE 3217
Computer Architecture
Introduction to the organization and architecture of computer systems, including aspects of digital logic, data representation, assembly level organization, memory systems and processor architectures.
Prerequisite(s): CSCI 1300 and MATH 1660
More information

CSCI 2500
Computer Organization and Systems
An introduction to computer systems, from hardware to operating systems. Topics include computer architecture, instruction sets, data representation, memory systems, and how the operating system manages processes and user applications.
Prerequisite(s): CSCI 2100 or concurrent enrollment
More information

CSCI 2510
Principles of Computing Systems
An exploration of computing systems with a strong emphasis on how systems interact with each other. Topics will include concurrent and parallel programming, network communication, and computer security. In addition to foundational knowledge, the course includes simulating, benchmarking, and testing such systems.
Prerequisite(s): CSCI 2500
More information

CSCI 2930
Special Topics
varies
More information

CSCI 2980
Independent Study
More information

CSCI 3100
Algorithms
Introduction to analysis and complexity of algorithms. Big-O notation. Running time analysis of algorithms for traversing graphs and trees, searching and sorting. Recursive versus iterative algorithms. Complexity, completeness, computability.
Prerequisite(s): CSCI 2100, MATH 1660, MATH 1510
More information

CSCI 3200
Programming Languages
Overview of programming languages: procedural and functional languages. Exposure to functional languages. Analysis of solution strategies to variable binding and function calls. Problem solving paradigms and linguistic issues.
Prerequisite(s): CSCI 2300
More information

CSCI 3250
Compilers
Introduction to the theory and techniques of compiler design, lexical analysis, finite state automata, context-free grammars, top-down and bottom-up parsing, syntax analysis, code generation. Other important issues such as optimization, type-checking, and garbage collection will be discussed.
Prerequisite(s): CSCI 2100 and CSCI 2400 / ECE 3217
More information

CSCI 3300
Software Engineering
Theory and practice of software engineering. Design and implementation of software systems. Levels of abstraction as a technique in program design. Organized around major group programming projects.
Prerequisite(s): CSCI 2300
More information

CSCI 3450 / ECE 3225
Microprocessors
Microprocessors/microcomputer structure, input/output. Signals and devices. Computer arithmetic, programming, interfacing and data acquisition.
Prerequisite(s): CSCI 1060 or CSCI 1300; Corequisite CSCI 3451
More information

CSCI 3451 / ECE 3226
Microprocessor Lab
Laboratory experiments to emphasize material covered in CSCI 3450.
Prerequisite(s): CSCI 3450 corequisite
More information

CSCI 3500
Operating Systems
Theory and practice of operating systems as managers of shared computer hardware: processors, memory, mass storage, and peripherals. Includes also an introduction to computer networking. Hands-on experience with general systems programming, concurrent and parallel programming, and network programming.
Prerequisite(s): CSCI 2100 and CSCI 2400 / ECE 3217
More information

CSCI 3910
Internship with Industry
A work experience with an agency, firm, or organization that employs persons in this degree field. Learning plan and follow-up evaluation required.
Prerequisite(s): Permission
More information

CSCI 3930
Special Topics
More information

CSCI 3980
Independent Study
Prerequisite(s): Permission
More information

CSCI 4120
Advanced Data Structures
A comprehensive treatment of the design, analysis and implementation of advanced data structures, and their role in algorithmic design. Topics include data structures that are dynamic, persistent and/or cache-oblivious, an examination of performance including both amortized and probabilistic analyses, and domain-specific applications of data structures.
Prerequisite(s): CSCI 3100
More information

CSCI 4130
Automata
The theory of automata and finite state machines. Regular languages and automata. Algebraic coding theory and shift registers. Algebraic matching theory.
Prerequisite(s): CSCI 2100
More information

CSCI 4310
Software Architecture
The theory and practice of software architecture and global design of software systems, with focus on recurring architectural patterns via in-depth case studies of various large-scale systems.
Prerequisite(s): CSCI 3300
More information

CSCI 4360
Web Technologies
An overview of the client-side and server-side technologies that power the modern web. Hands-on experience with interactive web site and web application development for desktop and mobile.
Prerequisite(s): CSCI 2300
More information

CSCI 4500
Advanced Operating Systems
Parallel processes; processor problems; linear address space and tree structured spaces of objects; resource allocation, queuing and network control policies; system balancing and thrashing; job allocation and process scheduling; multiprogramming systems; protection mechanisms for accessing jobs; pipelining and parallelism; distributed systems.
Prerequisite(s): CSCI 3500
More information

CSCI 4530
Computer Security
Fundamental introduction to the broad area of computer security. Topics include access control, security policy design, network security, cryptography, ethics, securing systems, and common vulnerabilities in computer systems.
Prerequisite(s): CSCI 2510
More information

CSCI 4550
Computer Networks
An exploration of the underlying concepts and principles of computer networks. Topics include communication protocols such as TCP/IP, design of network architectures, and the management and security of networks. Examples of real networks will be used to reinforce and demonstrate concepts.
Prerequisite(s): CSCI 2510
More information

CSCI 4610
Concurrent and Parallel Programming
The design and implementation of software that fully leverages a single computer’s resources. Topics include profiling and optimization of codes, multi-threaded programming, parallelism using a graphical processor unit (GPU), and efficient use of memory cache.
Prerequisite(s): CSCI 2510
More information

CSCI 4620
Distributed Computing
The design and implementation of software solutions that rely upon the cooperation of multiple computing systems. Topics will include parallelization of computation and data storage across small clusters of computers, and the deployment of systems in large-scale grid and cloud computing environments.
Prerequisite(s): CSCI 2510
More information

CSCI 4710
Databases
Fundamentals of database systems. Topics include relational and NoSQL data models, structured query language, the entity-relationship model, normalization, transactions, file organization and indexes, and data security issues. The knowledge of the listed topics is applied to design and implementation of a database application.
Prerequisite(s): CSCI 2100
More information

CSCI 4740
Artificial Intelligence
Fundamental introduction to the broad area of artificial intelligence and its applications. Topics include knowledge representation, logic, search spaces, reasoning with uncertainty, and machine learning.
Prerequisite(s): CSCI 2100
More information

CSCI 4750
Machine Learning
This course introduces students to the field of machine learning with emphasis on the probabilistic models that dominate contemporary applications. Students will discover how computers can learn from examples and extract salient patterns hidden in large data sets. The course will introduce classification algorithms that predict discrete states for variables as well as regression algorithms that predict continuous values for variables. Attention will be given to both supervised and unsupervised settings in which (respectively) labeled training data is or is not available.
Prerequisite(s): CSCI 2100; MATH 2350; STAT 3850
More information

CSCI 4760
Deep Learning
An exploration of multi-layered machine learning architectures as applied to problems in a variety of domains. The course will study various network architectures including deep feed-forward, convolutional and recurrent networks, and uses in both supervised and unsupervised learning. Students will implement solutions in different problem domains, and learn to effectively manage practical and domain-specific issues that affect model performance.
Prerequisite(s): CSCI 4750
More information

CSCI 4820
Computer Graphics
Applications and implementation of computer graphics. Algorithms and mathematics for creating two and three dimensional figures. Animation and two and three dimensional transformations. Interaction, windowing, and perspective techniques. Coding using the graphics library OpenGL.
Prerequisite(s): CSCI 2100, MATH 2530 and one of MATH 3110 or MATH 3120
More information

CSCI 4830
Computer Vision
This course will introduce the fundamentals of image processing and computer vision, including image models and representation, image analysis methods such as feature extraction (color, texture, edges, shape, skeletons, etc.), image transformations, image segmentation, image understanding, motion and video analysis, and application-specific methods such as medical imaging, facial recognition, and content-based image retrieval.
Prerequisite(s): CSCI 2100
More information

CSCI 4845
Natural Language Processing
Introduction to the development of computer systems that attempt to manage the complexity and diversity of human language. Application of artificial intelligence and machine learning techniques to address problems such as machine translation and speech recognition. Emphasis to be placed on working with real data sets in the form of text corpora and sound recordings.
Prerequisite(s): CSCI 4750
More information

CSCI 4910
Internship with Industry
A work experience with an agency, firm, or organization that employs persons in this degree field. Learning plan and follow-up evaluation required.
More information

CSCI 4930
Special Topics
More information

CSCI 4961
Capstone Project I
The first part of a two-course sequence serving as a concluding achievement for graduating students. In this course, students develop a proposal, collect and formalize specifications, become acquainted with necessary technologies, and create and present a detailed design for completing the project.
Prerequisite(s): CSCI 2300 and CSCI 2510
More information

CSCI 4962
Capstone Project II
The continuation of CSCI-4961. In the second part of the sequence, students complete their project based upon the design that was developed during the first part of the sequence. Students must demonstrate continued progress throughout the semester and make a preliminary and final presentation of their results.
Prerequisite(s): CSCI 4961
More information

CSCI 4980
Advanced Independent Study
Prerequisite(s): Permission
More information

CSCI 4WU
Wash U Inter University Course
More information

CSCI 5WU
Wash U Inter University Course
More information

Graduate

CSCI 5001
Object-Oriented Programming
An accelerated introduction to object-oriented computer programming including coverage of classes, methods, inheritance and polymorphism. Good software development practices will also be established, including issues of design, documentation, and testing.
More information

CSCI 5002
Data Structures
An accelerated study of the design, implementation, and use of data structures. Principles of abstraction, encapsulation, and modularity to guide in the creation of robust, adaptable, reusable and efficient structures. Specific data types to include stacks, queues, dictionaries, trees, and graphs.
More information

CSCI 5003
Object-Oriented Software Design
An implementation-based study of object-oriented software development. Teams will design and create medium-scale applications. Additional focus on the design and use of large object-oriented libraries, as well as social and professional issues.
Prerequisite(s): CSCI 5002
More information

CSCI 5004
Introduction to Algorithms
Introduction to analysis and complexity of algorithms. Big-O notation. Running time analysis of algorithms for traversing graphs and trees, searching and sorting. Recursive versus iterative algorithms. Complexity, completeness, computability.
Prerequisite(s): CSCI 5002
More information

CSCI 5005
Introduction to Operating Systems
Theory and practice of operating systems as managers of shared computer hardware: processors, memory, mass storage, and peripherals. Includes also an introduction to computer networking. Hands-on experience with general systems programming, concurrent and parallel programming, and network programming.
Prerequisite(s): CSCI 5002
More information

CSCI 5030
Principles of Software Development
An overview of software development at a graduate level, including software engineering processes, software design and architecture, testing and quality assurance, and selected other topics of interest to software practitioners.
More information

CSCI 5040
Unix Tools
An introduction to programming on the Unix command line, including a thorough grounding in regular expressions, programming with pipes and filters, parsing structured and semi-structured file formats, and web scraping.
More information

CSCI 5050
Computing and Society
A study of legal and ethical issues that arise with the use of computing technologies, and how new technologies alter the society that we live in.
More information

CSCI 5070
Algorithmic Fairness
Machine learning algorithms are being used more and more to make decisions that affect everyone. This course addresses the major moral concerns that these algorithms do not treat people fairly. Students will learn how to detect bias in machine learning models and construct models and training sets that minimize bias.
Prerequisite(s): CSCI 5750
More information

CSCI 5090
Computer Science Colloquium
A series of presentations, given by faculty members and invited speakers, to provide students with exposure to current research and developments in the field of computer science. Students will be required to produce written summaries of the presentations.
More information

CSCI 5100
Algorithms
An overview of algorithm design and analysis. Topics include analysis of algorithms for traversing graphs and trees, searching and sorting, recursion, dynamic programming, and approximation, as well as the concepts of complexity, completeness, and computability.
More information

CSCI 5120
Advanced Data Structures
A comprehensive treatment of the design, analysis and implementation of advanced data structures, and their role in algorithmic design. Topics include data structures that are dynamic, persistent and/or cache-oblivious, an examination of performance including both amortized and probabilistic analyses, and domain-specific applications of data structures.
More information

CSCI 5150
Computational Geometry
The goal of computational geometry is to find efficient algorithms for solving geometric problems. Topics include convex hulls, Voronoi diagrams, Delaunay triangulations, geometric search and geometric data structures.
More information

CSCI 5200
Programming Languages
Overview of programming languages: procedural and functional languages. Exposure to functional languages. Analysis of solution strategies to variable binding and function calls. Problem solving paradigms and linguistic issues.
Prerequisite(s): CSCI 5030
More information

CSCI 5250
Compilers
Theory and practice of compiler design, including lexical analysis, finite state automata, context-free grammars, parsing algorithms, and code generation. Other important issues such as optimization, type-checking, and garbage collection will be discussed.
Prerequisite(s): CSCI 5030
More information

CSCI 5300
Software Engineering
Key aspects of the software engineering discipline, including software process models, software project initiation, software analysis and design, software project planning and management, and software process and product metrics.
Prerequisite(s): CSCI 5030
More information

CSCI 5310
Software Architecture
The theory and practice of software architecture and global design of software systems, with focus on recurring architectural patterns via in-depth case studies of various large-scale systems.
Prerequisite(s): CSCI 5300
More information

CSCI 5320
Software Project Management
A study of key components of project management including project integration, project scope management, project time and cost management, quality management, human resource considerations, communications, risk management, and procurement management.
Prerequisite(s): CSCI 5300
More information

CSCI 5330
Software Quality Assurance
Best practices for the process of quality assurance for complex software systems. Topics include prevention of errors, testing, verification, and validation of software systems, inspection and review processes, and the distinction between process assurance and product assurance.
Prerequisite(s): CSCI 5300
More information

CSCI 5350
Human-Computer Interaction
An introduction to the field of Human-Computer Interaction, with a particular focus on the design, implementation, and evaluation of software interfaces.
Prerequisite(s): CSCI 5030
More information

CSCI 5360
Web Technologies
An overview of the client-side and server-side technologies that power the modern web. Hands-on experience with interactive web site and web application development for desktop and mobile.
Prerequisite(s): CSCI 5030
More information

CSCI 5500
Operating Systems
Theory and practice of operating systems, with hands-on emphasis on one of the UNIX family of operating systems. Processes, processor scheduling, virtual memory, parallelism and concurrency, race conditions, file systems, networking models, sockets programming, as well as a general focus on operating systems mechanisms and abstractions.
More information

CSCI 5530
Computer Security
Fundamental introduction to the broad area of computer security. Topics will include access control, security policy design, network security, cryptography, ethics, securing systems, and common vulnerabilities in computer systems.
More information

CSCI 5550
Computer Networks
A graduate-level introduction to the concepts and principles of computer networks, including the basic technologies of a network and how these systems interact. Focus includes the design and implementation of network software that transforms raw hardware into a richly functional communication system.
More information

CSCI 5570
Learning and Inference in Networking
An introduction to the underlying concepts and principles of data aspects of computer networks. The course covers machine learning techniques used by networked systems, for both wireless and wired networks. Topics in network analytics and management including traffic analysis and prediction, service differentiation, detection of anomalous network conditions, and enhancement of end-to-end network management and operation. The course includes hands-on assignments using networking tools and large-scale virtual network testbeds that can be used to collect data from network protocols or analyze large data sets for networking problems.
Prerequisite(s): CSCI 5750
More information

CSCI 5610
Concurrent and Parallel Programming
The design and implementation of software that fully leverages a single computer’s resources. Topics include profiling and optimization of codes, multi-threaded programming, parallelism using a graphical processor unit (GPU), and efficient use of memory cache.
More information

CSCI 5620
Distributed Computing
The design and implementation of software solutions that rely upon the cooperation of multiple computing systems. Topics will include parallelization of computation and data storage across small clusters of computers, and the deployment of systems in large-scale grid and cloud computing environments.
More information

CSCI 5710
Databases
Fundamentals of database systems. Topics include relational and NoSQL data models, structured query language, the entity-relationship model, normalization, transactions, file organization and indexes, and data security issues. The knowledge of the listed topics is applied to design and implementation of a database application.
More information

CSCI 5730
Evolutionary Computation
A survey of the major types of evolutionary algorithms (EAs), a class of stochastic, population-based algorithms inspired by natural evolution theory, genetics, and population dynamics, which are capable of solving complex optimization and modeling problems. This is a rigorous and programming-intensive course in which students will gain hands-on experience in solving complex problems with EAs.
More information

CSCI 5740
Introduction to Artificial Intelligence
Fundamental introduction to the broad area of artificial intelligence and its applications. Topics include knowledge representation, logic, search spaces, reasoning with uncertainty, and machine learning.
More information

CSCI 5745
Advanced Techniques in Artificial Intelligence
Intelligent agents in complex environments must deal with uncertainty and how to represent varied knowledge. This course focuses on the design and implementation of agents that can function in such complex environments. Topics include knowledge representation, environments with hidden information, and probabilistic reasoning.
Prerequisite(s): CSCI 5740
More information

CSCI 5750
Introduction to Machine Learning
This course introduces students to the field of machine learning with emphasis on the probabilistic models that dominate contemporary applications. Students will discover how computers can learn from examples and extract salient patterns hidden in large data sets. The course will introduce classification algorithms that predict discrete states for variables as well as regression algorithms that predict continuous values for variables. Attention will be given to both supervised and unsupervised settings in which (respectively) labeled training data is or is not available. Emphasis is placed on both the conceptual relationships between these different learning problems as well as the statistical models and computational methods used to employ those models.
More information

CSCI 5760
Deep Learning
An exploration of multi-layered machine learning architectures as applied to problems in a variety of domains. The course will study various network architectures including deep feed-forward, convolutional and recurrent networks, and uses in both supervised and unsupervised learning. Students will implement solutions in different problem domains, and learn to effectively manage practical and domain-specific issues that affect model performance.
Prerequisite(s): CSCI 5750
More information

CSCI 5830
Computer Vision
This course will introduce the fundamentals of image processing and computer vision, including image models and representation, image analysis methods such as feature extraction (color, texture, edges, shape, skeletons, etc.), image transformations, image segmentation, image understanding, motion and video analysis, and application-specific methods such as medical imaging, facial recognition, and content-based image retrieval.
More information

CSCI 5845
Natural Language Processing
Introduction to the development of computer systems that attempt to manage the complexity and diversity of human language. Application of artificial intelligence and machine learning techniques to address problems such as machine translation and speech recognition. Emphasis to be placed on working with real data sets in the form of text corpora and sound recordings.
Prerequisite(s): CSCI 5750
More information

CSCI 5910
Internship with Industry
A work experience with an agency, firm, or organization that employs persons in this degree field. Learning plan and follow-up reflection and evaluation are required.
Prerequisite(s): Permission
More information

CSCI 5930
Special Topics
More information

CSCI 5960
Software Engineering Capstone Project
A culminating experience in which teams of students complete a full software development life-cycle resulting in the creating of a software system.
Prerequisite(s): CSCI 5300
More information

CSCI 5961
Artificial Intelligence Capstone Project
A culminating experience in which teams of students solve complex problems using techniques from artificial intelligence.
Prerequisite(s): CSCI 5740 and CSCI 5750
More information

CSCI 5970
Research Topics
A research experience in computer science guided by faculty.
Prerequisite(s): Permission
More information

CSCI 5980
Graduate Reading Course
More information

CSCI 5990
Thesis Research
Work toward a Master's thesis.
More information

Bioinformatics

BCB 5000
Introduction to Computer Programming for Life Sciences
An accelerated introduction to programming, covering control structures, functions, and classes, as well as data structures including stacks, queues, linked lists, priority queues, dictionaries, trees, and binary search trees. When possible, programming projects will draw upon motivation from biological problems.
More information

BCB 5100
Advanced Scripting for Life Sciences
This course explores intermediate programming techniques, with focus on combining use of various software packages and existing tools to facilitate the gathering, processing, and visualization of biological data sets.
More information

BCB 5200
Introduction Bioinformatics I
The course focuses on the study of nucleotide and peptide sequences and structures from a computational perspective. Topics including sequence alignment, detecting and understanding mutations, gene identification, and structural comparison and prediction.
More information

BCB 5250
Introduction Bioinformatics II
This course focuses on the study of interaction and evolution of biological sequences and structures. Topics include interaction networks, clustering, phylogenic trees and how biological systems change at the genomic metabolic, species and ecological levels.
Prerequisite(s): BCB 5200
More information

BCB 5300
Algorithms in Computational Biology
This course introduces the foundations of algorithmic techniques and analysis, as motivated by biological problems. Topics include dynamic programming, tree and graph algorithms, sequence analysis, hidden markov models. Motivations include sequence alignment, motif finding, gene prediction, and phylogeny.
Prerequisite(s): BCB 5250
More information

BCB 5350
Machine Learning in Bioinformatics
An application of machine learning techniques to solve problems arising in bioinformatics. Unsupervised and supervised learning, clustering, hidden Markov models, and neural networks will be introduced and applied to study biological sequences, structure prediction and gene expression.
More information

BCB 5810
Bioinformatics Colloquium
The course provides students with current information about studies in bioinformatics and computational biology through presentations given by faculty members, students, and invited speakers. Students who enroll for credit must present a 20-30 minute talk as part of the seminar, demonstrating their oral communication skills while presenting technical content.
More information

BCB 5910
Bioinformatics Internship
Internships will include experiences in research and development laboratories of local biotechnology companies, as well as in research laboratories in SLU's departments of Biology, Chemistry, Computer Science, and Mathematics or departments in the School of Medicine.
Prerequisite(s): BCB 5250 and permission
More information

BCB 5930
Special Topics
varies
More information

BCB 5970
Research Topics
This course will provide research experiences in SLU's departments of Biology, Chemistry, Computer Science, and Mathematics or departments in the School of Medicine.
More information

BCB 5980
Graduate Reading Course
More information