Home » College of Arts + Sciences » Department of Math + Computer Science
With a unique approach to computer science education, it’s no wonder that LTU students reach the highest possible levels in their fields.
LTU students publish more peer-reviewed scientific papers than most other computer science departments, including leading independent and public universities.
Students discover courses that combine theoretical computer science foundations with industry-relevant practical knowledge. LTU’s internationally recognized faculty help to guide each student. This personal attention optimizes the learning experience and enhances creativity and complex problem-solving skills.
To cultivate an analytical, quantitative, computational, and interdisciplinary mindset in our students. Faculty are committed to providing students with data-driven skills using mathematical and computational methods that are critical for understanding and solving today’s most challenging problems.
Fundamental operations, factoring, exponents, radical expression, rectangular coordinate system, and graphing. Linear equations and inequalities, absolute value equations, and inequalities, systems of linear equations. Introduction to quadratic equations, fundamental concepts, and formulae of geometry.
Prerequisite: None. Introduction to applications involving use of a computer. E-Mail, word processors, spreadsheets, database applications, introduction to computer graphics. (This course or a programming course is required of those who do not successfully demonstrate knowledge of these topics upon entry to Lawrence Tech. No credit for mathematics/computer science majors.
Functions and graphs, polynomial, rational, exponential, logarithmic and their applications. Trigonometric functions, identities, equations and their applications. The law of Sine and the Law of Cosine. Partial Fractions.
This one credit course will focus on programming languages such as Scratch, Python, Javascript, Ruby, R, PHP, C# or Matlab. Students will be expected to work in groups on coding projects that will focus on syntax and semantics with application to a specific language.
An introduction to writing programs using C programming language. Brief introduction to computer hardware and software history. Binary, decimal, hex, and octal representations. Variable types, conditional statements, loops, arrays, functions including sending and returning values, formatted input, and output including file operations. Simple pointer types.
Must have placement. Limits and continuity, differentiation, curve sketching, applications of differentiation, integration, methods and applications of integration, multivariable calculus. No credit after completion of MCS1414.
An overview of computer science for CS and non-CS majors with the overarching objective to develop a computational mindset. For CS majors, to gain an appreciation of the relevance of the various computing topics and interrelationships for future courses. For non-CS majors, to provide the necessary technological background to appreciate and integrate into today’s technical society.
A rigorous look into symmetry, tiling, perspective and surfaces using tools from Euclidean Geometry and other mathematical principles to further the understanding of limits, areas under curves, slopes and tangent lines. Topics covered include Fibonacci numbers, the Golden Ratio, Platonic and Archimedean solids, rigid motions, rosette, frieze and wallpapers groups and their commonalities in Art, Engineering and Computer Science.
Topics include, limits and continuity, differentiation of algebraic and transcendental functions, mean value theorem, applications of differentiation, anti-derivatives, indefinite integrals, inverse trigonometric functions, substitutions, definite integrals, the Fundamental Theorem of Calculus, applications of integration. Applications will be emphasized. In addition to regular class meetings, all students are required to participate in calculus lab sessions. The schedule, frequency, and modality of these labs may vary by section. Refer to the class schedule and course syllabus for details.
Hyperbolic functions, L’Hospital’s rule, techniques of integration, application to arc length and surface area, polar coordinates, infinite series, Taylor Series. In addition to regular class meetings, all students are required to participate in calculus lab sessions. The schedule, frequency, and modality of these labs may vary by section. Refer to the class schedule and course syllabus for details.
Introduction to programming with C++. Binary, two’s complement, decimal, hex, and octal representations. Variable types. Simple, iterative, and conditional statements. Procedure and functions with parameters by value and reference with or without a returning value. Arrays and vectors, multidimensional arrays, bubble and selection sorts, linear and binary search. Pointer and dynamic memory allocation, character and C-strings, file input/output (sequential). Classes, friends, array of objects, and operators’ overloading. Inheritance, polymorphism, virtual function, and recursion.
Hands-on introduction for programmers and artists into game development. Each of the major components of making computer games will be studied through hands-on exercises. Students will make their first games using industry-wide tools. No prior programming experience required.
Create video games of several different genres such as shoot-em-up, scrolling shooter, platform, puzzles, maze racing, sports, and RPG. Examining and implementing game requirements for different hardware platforms.
This course introduces the students to the concepts and techniques for developing dynamic web –based applications. Introduction to Web-based application development; client-side authoring using HTML, CSS, and JavaScript; web protocols; server-side programming; connecting to databases.
Each Spring, the faculty in Mathematics and Computer Science will provide students with an overview of the research they are working on. This will provide students with the opportunity gain critical exposure to research ideas early on in their academic careers. Each week a different faculty member will host the meeting to allow students to ask questions and to learn what is current in the field of math and computer science. Meetings will be hosted virtually, via Zoom.
This course covers descriptive statistics, probability, and probability distributions with an emphasis on statistical inference such as confidence intervals, hypothesis testing, correlation and regression, chi-square tests, t-and F-distributions, and selected nonparametric tests.
In this course, students will learn object-oriented programming techniques and write scripts for a current game engine. Students will gain a basic understanding of computer science concepts, awareness of different scripting languages, explore a program-development environment, and become aware of code syntax. The course will also emphasize an understanding of control structures, data structures, and program logic.
By answering questions that cannot be addressed by other means, mathematics can be an indispensable tool for biological research. The interdisciplinary field of mathematical biology combines experiments, mathematical theory, statistics and computation to understand biological systems better. These areas will be studied by collecting data and implementing the essential modeling techniques of formulation, implementation, validation, and analysis. These tools will be applied to a wide variety of biological systems.
The Data Science course delivers the fundamentals of data sets analysis arising in various disciplines, like banking, finance, health care, bioinformatics, security, education, and social services. The content of this course introduces theories and practices of data science concepts based on mathematical and statistical concepts. This course offers a multitude of topics relevant to the analysis of complex data sets accompanying programming and code algorithms in R that underpinning data science. This course is ideal for students and practitioners without a strong background in data science. The students will also learn analyses of foundational theoretical subjects, including the history of data science, matrix algebra, and random vectors, and multivariate analysis; a comprehensive examination of time series forecasting, including the different components of time series and transformations to achieve stationarity; introductions to the R programming languages, including basic data types and sample manipulations; an exploration of algorithms, including how to write one and how to perform an asymptotic analysis; and, a comprehensive discussion of several techniques for analyzing and predicting complex data sets. Towards the end of the class, students will develop a case study by gathering data to apply and practice the learned concepts in a large-scale project.
This course covers the principles and practical applications of generative artificial intelligence in data science, with a focus on coding, debugging, and implementation. Topics include foundations of generative models, prompt engineering, large language models (LLMs), and deep learning techniques such as transformers and diffusion models. Students will learn to develop, test, and debug AI-driven solutions for tasks such as data generation, text and code synthesis, automation, and analytics using modern programming tools and libraries. Emphasis is placed on writing efficient, reliable code, troubleshooting model and integration errors, and improving performance. The course also addresses ethical considerations, model evaluation, and deployment of generative AI systems in real-world data science workflows.
Three-dimensional analytic geometry. Vectors, vector-valued functions, motions in space, functions of several variables, partial differentiation, multiple integration, integration of vector fields, Green’s Theorem and Divergence Theorem.
Topics include, but are not limited to, solving first and second-order differential equations and first-order linear systems of differential equations by various techniques such as separation of variables, integrating factors, substitution methods, variation of parameters, and Laplace Transforms. Emphasis will be placed on applications of differential equations arising from engineering applications and the natural sciences.
Systems of linear equations, matrices, determinants, eigenvalues, eigenvectors, finite-dimensional vector spaces, linear transformations and their matrices, Gram-Schmidt orthogonalization, inner product spaces.
Records, advanced file input/output (random access), dynamic memory allocation. Static and dynamic implementation of stacks, linked lists (ordered and unordered), queue (regular and priority), circular queues. Selection and insertion sort, binary search. Lecture 3 hrs., Lab 1hr.
Number Theory, review of induction and recursion, advanced counting, equivalence, partial ordering, graphs, trees.
Analysis of algorithms, Big Oh notation, asymptotic behavior. Advanced sorting (heapsort, quicksort), external sorting. Binary, multiway, and AVL trees. Lecture 4 hrs.
Organization of database systems. Data definition, retrieval, manipulation. Relational databases, SQL. Practice using standard databases.
Introduction to JAVA; comparing Java and C++, Java building elements; control structures, methods, object-oriented programming, arrays and strings, inheritance, graphics programming, applets, multithreading and multimedia.
This course provides students with an introductory experience to using Large Language Models in development of functional applications. Students will learn to use AI tools to generate code for a variety of domains—such as computer vision, mobile apps, and cloud services—while applying the core programming logic learned in CS2. The curriculum focuses on setting up AI development environments, decomposing specific technical problems into solvable prompts, and evaluating the resulting code for accuracy and performance. By completing several small-scale projects, students will learn to verify AI-generated components and integrate them into complete, working systems. Topics and application areas will vary by semester to reflect current technology trends.
This course is an introduction to Cyber Security concepts and methods. The course presents and explains different types of threats and explores a range of topics within Cybersecurity: infrastructure, network security, intrusion detection and prevention, information systems strategy and planning, security risk analysis and risk management, information assurance, and cybersecurity infrastructure.
Current trends and technology in computer science will be presented to Freshman and Sophomores to provide opportunities to begin to study and research a specialized topic. Topics will be decided by the faculty who are teaching.
An introduction to epidemiological topics such as different measures of disease occurrence, epidemiological time series, various study types, and seasonal trends. Students will learn about causality and association as well as data analysis techniques using Data Science toolbox (e.g. autocorrelation, regression lag plots, and time series decomposition), introduction to disease control techniques, diagnostic tests, accuracy measurement, and public health applications, offering a strong foundation in epidemiology and its global health relevance in data science.
This seminar course covers material to prepare students to take the FM examination on financial mathematics.
Students will review the fundamentals of probability theory and then move to distribution theory and parameter estimation techniques to create a bases for understanding the application of statistical tests. Topics covered will include hypothesis testing and model building strategies, assumption checking such as checking for normality and outliers, visualization methods such as scatterplots and box plots, model diagnostics such as serial correlation and normality. We will use free statistical package R to do most problems in class and in homework. Students do not need to know R prior to this class. Basic R programming will be taught in class and more complex codes for simulations and other application.
Methods of integration, functions of two variables, partial derivatives, double integrals, power series, operations with series, introduction to differential equations, first order linear differential equations, higher order diff. eq., initial value problems, Laplace transform. No credit after completion of MCS2423.
Representation of data, probability, random variables, discrete and continuous distributions, sampling theory, central limit theorem, confidence intervals, tests of statistical hypotheses, regression analysis. Lecture 3 hrs.
Laplace transforms of continuous and piecewise continous functions, inverse Laplace transforms, applications to ordinary differential equations. Complex variables, analytic functions, Laurent expansions, residue theory with applications, complex inversion integral and convolution integral. Lecture 3 hrs.
A rigorous treatment of probability and combinatorics, including theoretical aspects and computational implementation. Topics include permutations and combinations, multinomial coefficients, probability axioms, discrete and continuous distributions, marginal and conditional densities, expectations, moment generating functions, and generation of random variables to simulate stochastic models.
Application programming interfaces (APIs); interactive computer graphics; two- and three-dimensional representation and transformation; viewing with parallel and perspective projections; shading with illumination and material. Lecture 3 hours.
Software Architecture course teaches the principles and concepts involved in the design and development of large-scale software systems. Various architectural styles such as layered, event-driven, service-oriented, cloud, etc are covered. How to design, select, and use appropriate reusable design patterns/core assets is also introduced. Object-oriented design & programming skills are reviewed in depth. Model-Based Design approaches are also covered in depth. Students will gain practical experience in the development of a software project by selecting/reusing appropriate architectural style and software design patterns. Students will also gain real-world model-based design and code generation experiences using tools such as SIMULINK.
This course is designed to provide students with an understanding of mathematical modeling and the link between Mathematics and Engineering, Science and Nature. This course will introduce modeling techniques and dynamical systems analysis using examples from Engineering, Physics, and Biology. Coverage includes both the analysis, including bifurcation theory, and computation.
Each aspect of game design is examined and implemented. At the end of the course students will have designed a complete game.
An introduction to functional programming. Induction and recursion, symbolic computation, higher-order functions, polymorphism, data abstraction and modularity, invariants, demand-driven programming, exception handling, and computability. Lecture 3 hrs.
This course is a brief overview of software engineering topics including software development models, requirements, software design & implementation, software debugging & testing, software maintenance, software quality & metrics, and software project management. Focused in depth learning goals include system modelling & analysis tools, model-based design, coding standards, IDE tools, version control systems, and the introduction of agile software development methodologies. In addition to theories, students will practice in the development of a long-running software project applying & utilizing software engineering techniques & tools covered in class.
This course continues from Software Engineering I and covers overall software engineering topics especially for developing large software using modelling languages and object oriented design methodologies. In-depth learning topics include UML (Unified Modelling Language) & tools, Object Oriented Design (OOD) methodologies, model-based design, software reuse, and comparison of various version control systems. Students will gain practical experience in the development of a larger long-running software project with a focus on object oriented programming language utilizing UML diagrams such as Use-Case, State, Sequence, Class, and Component diagrams as well as OOD methodologies
Basic Structure of computer hardware and assembly programming. Internal representation, processing unit arithmetic, memory addressing modes, stack processing, CISC, RISC. Lecture 3 hrs.
Implementation details of fundamental topics in 2D and 3D animation will be covered. Key framing; Interpolation; Rigging; Inverse kinematics; Particle systems.
This course is an advanced course and next course in the data science program designed to provide students with a comprehensive understanding of the data science landscape, and the tools and techniques used to analyze data. Students will learn to identify the various components of a data science strategy and explore the ethical implications of data science, optimize forecasting and accuracy, interpret data, explore the implications of data science in the current market, and discuss the best practices for data science.
Line and surface integrals, Green’s theorem, Stokes’ theorem, Divergence Theorem. Topics from differential and integral calculus theory. Power series solution of differential equations. Bessel functions, Leg endre’s equation. Lecture 3 hrs.
Orthogonality, orthonormal bases, Fourier series, Fourier integral. Solution techniques for first and second order equations. Solutions of homogeneous and non-homogeneous boundary value problems. Sturm-Liouville theory. Lecture 3 hrs.
Cryptography is a foundation of cybersecurity. This course introduces the principles and practice of modern cryptography as used in real systems. Students study core cryptographic primitives and protocols, including symmetric encryption and modes, hash functions, message authentication codes, pseudorandom functions, public-key encryption, digital signatures, and key exchange. The course emphasizes understanding security goals such as confidentiality, integrity, and authenticity, and learning how cryptography can fail when used incorrectly. Students complete programming-based assignments and a course project that focus on implementing, testing, and applying cryptographic building blocks. They will also survey selected advanced topics such as secret sharing and threshold cryptography, zero-knowledge at a high level, and post-quantum cryptography.
Topics of current interest in game development. (May be taken more than once if the topic is different).
A preparatory lab class designed specifically for upper-division CS students to provide practical experience for potential career paths in business, industry, or research. Specific course topics will change each semester to provide for different career path interests, but activities will revolve around creating and delivering effective presentations related to the CS curriculum.
Students in this journal club will be responsible for leading the discussion on a research paper to a group of students. Students may also be asked to review a research paper that has been submitted for publication and provide a detailed description of why the paper should be accepted, declined, or revised.
A dive deep into the evolving world of textual data analysis. This course is meticulously crafted to provide students with a comprehensive understanding of how machine learning algorithms work for text. We will also get an introduction to large language models and gain practical experience. Beyond technical skills, students will also engage in thoughtful discussions about the ethical implications and potential biases of text-based machine learning. In addition, this course has been designated as a CRE-based course which includes a significant research component. We will review and discuss papers on a specific topic and problem, which will cultivate in the development of a research project and paper.
This course presents theory and practice for testing software and assuring its quality. Topics include introduction to software quality, software standards, software reviews and inspections, software verification & validation, software quality management, software quality assurance, software measurements & metrics, software security, and formal/informal proofs of program correctness. Topics related to testing include stages of testing, types of testing, testing techniques, designing test-cases, test coverage analysis, automated testing tools, and performance testing tools. This course will provide students with practical experience using a different testing techniques such as Unit Testing, User Interface Testing, Continuous Integration, and Test-Driven Development (TDD) for software projects. Students gain hands-on experience in planning and managing software development through real-world projects. By implementing a term project, students will learn how software projects are planned, developed, monitored, and controlled. This course will cover in-depth software project management topics such as project planning, estimation, scheduling, tracking, risk management, configuration and change management, and version management. This course will strongly emphasize collaboration, continuous integration, and continuous delivery using agile software development methodologies. Agile framework and tools such as SCRUM, XP, Kanban, and/or JIRA are covered and applied to the term project.
Transmission media, local asynchronous communication (RS232) long distance communication, LAN Technologies, network topologies, hardware addressing, LAN wiring, physical topologies, interface hardware, extending LANs, fiber modems repeaters, bridges, and switches, WAN topologies and routing. Lecture 3 hrs.
This course introduces the fundamental concepts & methods of knowledge representation, perception, reasoning, problem solving, data-mining, and machine learning in Artificial Intelligence (AI). Topics covered include Knowledge-Based Systems, Rule-Based Expert Systems, Uncertainty Management, Fuzzy Systems, Artificial Neural Networks, Evolutionary Computation, Semantic Web, and Autonomous Robotics.
This course will cover survey of the four various programming languages in the imperative, multiprogramming, functional and logical domains. An understanding of the fundamental design and language concepts provides the foundation for the critical examination and implementation of programming language paradigms from lexical and syntactical perspective.
Beginning course on theory of computation. Regular languages, finite automata, context-free language, Turing Machine, Chomsky hierarchy, applications to parsing. Lecture 3 hrs.
This course focuses on the core concepts that underlie contemporary operating systems. It introduces the structure and responsibilities of operating systems, discusses the cutting-edge advances in computing that are redefining operating systems, and addresses design considerations, such as performance, fault tolerance, security, modularity, and cost. Topics include Operating System Architecture, Process Concepts and Management, Thread Concepts, Asynchronous Concurrent Execution, Concurrent Programming, Deadlock and Indefinite Postponement, Processor Scheduling Algorithms, Real Memory Organization and Management, Virtual Memory Organization and Management, Disk Performance Optimization, RAID, File Systems, and Case Studies.
Students will apply their knowledge from Mathematics and Computer Science within a professional industry setting. Under the guidance of an industry mentor, students will engage in technical projects that align their academic studies with current market demands. Requirements include the submission of a work plan, documented time tracking, and a formal performance evaluation by the workplace supervisor. A minimum of 45 hours of documented work is required.
Students will apply their knowledge from Mathematics and Computer Science within a professional industry setting. Under the guidance of an industry mentor, students will engage in technical projects that align their academic studies with current market demands. Requirements include the submission of a work plan, documented time tracking, and a formal performance evaluation by the workplace supervisor. A minimum of 90 hours of documented work is required.
Students will apply their knowledge from Mathematics and Computer Science within a professional industry setting. Under the guidance of an industry mentor, students will engage in technical projects that align their academic studies with current market demands. Requirements include the submission of a work plan, documented time tracking, and a formal performance evaluation by the workplace supervisor. A minimum of 135 hours of documented work is required.
Approximation and error. Roots of equations approximation of algebraic and transcendental functions, differentiation, indefinite and definite integration. Quadrature, interpolation. Lecture 3 hrs.
The senior project is an intensive study of problems in either Computer Science or Applied Mathematics. Problems in CS can include software system development where students participate in specifying, designing, developing, coding, and testing complex software systems. Problems in AM can include the development and implementation of mathematical and computational models to address problems of interest.
Continuation of Senior Project for projects that cannot be completed in one semester.
Must have permission of department chairman. By arrangement.
Must have permission of department chairman By arrangement.
Must have permission of department chairman. By arrangement.
Grant research for undergraduate students.
Topics of current interest in mathematics and computer science. (May be taken more than once if the topic is different.)
Topics course in computer science. Various current topics will be discussed.
The central theme of this course is to learn how to solve problems by writing a program. The course provides an introduction to the ANSI C language, emphasizing portability and structured design. The course presents all major language elements including fundamental data types, data structures, flow control, and standard function libraries. Topics presented in the course include basic computer concepts, C++ program development environment; the concept of structured programming; basic problem-solving techniques; the development of algorithms through the process of top-down, stepwise refinement using C++-program control structures including selection statements, controlled- and sentinel-iteration constructs, assignment and condition statements; and the concepts of files and streams as well as the fundamental data types; abstract data types and complex data structures ; including arrays, stacks, sets, trees, heaps, and graphs. This course will provide the core programming skills necessary to be successful in our graduate program.
Prerequisite: Permission of department chair Introduction to the Web-server basis; Web authoring using HTML; advanced Web authoring with dynamic HTML, XML; JavaScript programming; CGI programming in C, C++ and PERL. Introduction to ASP to the middle tier. Lecture 3 hrs.
An overview of foundational mathematical techniques from discrete math, linear algebra, probability and statistics, and calculus which are essential for graduate-level computer science courses such as artificial intelligence, machine learning, algorithmic design, and robotics. Topics may include vector operations, matrix inversion, rotations and projections, linear transformations, eigenvalues and eigenvectors, set theory, graph theory, counting techniques, Bayes’ Theorem, the uniform and Gaussian distribution, linear regression and model fitting, partial derivatives, and optimization techniques. Emphasis will be placed on both conceptual understanding and computational implementation.
The course provides the basic background for a computer scientist in the area of data structures and algorithms. The course learning outcomes are aligned with the weekly course teaching and learning goals and assignments. The outcomes will be evaluated through assignments, assessments, and other methods throughout the course.
A dive deep into the evolving world of textual data analysis. This course is meticulously crafted to provide students with a comprehensive understanding of how machine learning algorithms work for text. We will also get an introduction to large language models and gain practical experience. Beyond technical skills, students will also engage in thoughtful discussions about the ethical implications and potential biases of text-based machine learning. In addition, this course has been designated as a CRE-based course which includes a significant research component. We will review and discuss papers on a specific topic and problem, which will cultivate in the development of a research project and paper.
The Theory of Computation course includes topics in mathematical concepts of theorem and proof. In particular, the course will cover complexity theory, automata and language theory, computability theory, complexity theory, finite automata, regular expressions, push-down automata, Turing machines, Church-Turing thesis, decidability, time and space measures, hierarchy theorems, complexity classes P, and NP.
Prerequisite: Permission of department chair. Design and implementation of relational, hierarchical and network database system. Query/update data language, conceptual data model, physical storage methods, database system architecture and normal forms. Database security and integrity. Relational database system are emphasized. A project involving an on-line database system is normally assigned. No credit given after MIS6113. Lecture 3 hrs.
This course introduces the fundamental concepts & methods of knowledge representation, perception, reasoning, problem solving, data-mining, and machine learning in Artificial Intelligence (AI). Topics covered include Knowledge-Based Systems, Rule-Based Expert Systems, Uncertainty Management, Fuzzy Systems, Artificial Neural Networks, Evolutionary Computation, Semantic Web, and Autonomous Robotics. Graduate students are required to do an additional project such as robotics applying AI techniques.
The Advanced Data Science course for graduate level aims to provide students with a comprehensive understanding of data science strategies and their implementation. This course will focus on time series forecasting techniques and the use of code programming to enhance accuracy. Students will begin by exploring time series features, such as moving average smoothing and trend estimation, using seasonal data. They will also learn how to apply simple statistics using R for data analysis. The course will then delve into the key steps of a tidy forecasting workflow, including defining a model and evaluating its effectiveness using various methods such as mean, naïve, and drift. The course will also cover important topics such as residual diagnostics, judgmental forecasting, and distributional forecasting, which will be applied to a real-world project. Students will be required to complete a data science project to demonstrate their understanding and present their findings to the class. In the next part of the course, students will learn about time series regression models, including the linear model and least squares estimation. They will also explore evaluation techniques and apply them to a project. The course will then move on to ARIMA models, covering topics such as stationarity, differencing, and estimation techniques. Students will also learn about the differences between ARIMA and ETS models. Another project will be assigned to students to apply their knowledge of ARIMA models. In the following section of the course, students will learn about dynamic regression models and how to apply them in projects. They will also explore forecasting hierarchical and grouped time series, using single-level approaches. The final part of the course will cover advanced forecasting methods, such as vector autoregressions and neural network models. Students will learn how to apply these techniques and their strengths and weaknesses. Another project will be assigned to students to showcase their understanding and skills in advanced forecasting methods. By the end of this course, students will have a deep understanding of data science and time series forecasting techniques and will be able to apply them in real-world scenarios. They will also have completed several projects that will help them build a strong portfolio for future endeavors in the field of data science.
This course introduces theories, algorithms, techniques, practical issues, and tools to develop & engineer software for intelligent autonomous robotics systems with ROS (Robot Operating System) software development environment. ROS has a large open source community and is becoming widely adopted in research, industrial, and autonomous vehicle applications. Covered topics include sensor data processing, machine vision, mobile robot control, localization, navigation, mapping, state machines, human-robot interaction/interfaces, robot communication, and 3D modeling and simulation with Gazebo. The course will also give students experience using Git, Linux, and various C++/Python tools and frameworks. Machine learning and deep learning technologies for autonomous vehicles will also be introduced.
An introduction to the theory and practice of data management and analysis in molecular biology. Topics include DNA and protein sequence analysis; genomic mapping; biological databases; and modeling and simulation protocols for bio-molecular systems.
The objective of the course is to study, understand, and practice the concepts of machine learning and pattern recognition. The course will cover the basic aspects of pattern recognition and machine learning such as different approaches to feature selection, classification methods, interpolation methods, and techniques of machine learning performance evaluation. In the end of the course the students will be able to implement all aspects of pattern recognition to create a working machine learning system that will solve a real-life pattern recognition problem.
Distributed computing plays a crucial role in numerous applications demanding intensive computational tasks. This course will focus on both fundamental concepts in distributed computing and practical distributed system design. Covered topics include distributed computing models, communication, naming, synchronization, consistency and replication, fault tolerance, and security.
Brain-inspired Deep Learning (DL) is a subfield of machine learning that trains neural network based models to perform human-like tasks, such as identifying images, recognizing speech, or making predictions. A DL system is trained rather than explicitly programmed. To train a DL system, a set of example data as well as the answers expected from the data are used. This course will cover a range of topics from dense networks, Convolutional Neural Networks (CNN), recurrent neural networks and long short-term memory (LSTM), and Generative Adversarial Networks (GAN). Students will apply deep learning to real-world problems as class projects. No credit after EEE 5253 Deep Learning for Engineers.
With an objective to study, understand, and practice the concepts of data mining using social network data. The course will cover the basic aspects of data mining such as different approaches to classification, regression, segmentation, text analysis, recommendation systems, etc. The aim is to develop skills in obtaining data from social network, analyzing it and visualizing it.
Topics include Advanced Data Science in Health Care 1. Time series graphics, tsibble objects 2. Seasonal subseries plots 3. Autocorrelation 4. Scatterplots 5. White noise 6. Time series decomposition.
An introduction to computational scene understanding focused on computer vision. Students will study the acquisition and processing of camera data to describe the surrounding environment, using tools and methods now being deployed in industry. Included topics to range from basic image processing techniques such as camera models, object detection, and filtering to higher level scene understanding methods using neural networks to perform multi-view reconstruction, motion/tracking, and recognition.
Building on a first undergraduate course in data structures, this course contains a deeper analysis of the design of efficient algorithms on data structures for problems in sorting, searching, graph theory, combinatorial optimization, computational geometry, and algebraic computation. Topics covered in the course include divide-and-conquer, dynamic programming, greedy method, and approximation algorithms.
Security measures are associated with various types of computing systems. An introduction to network security fundamentals, including compliance and operational security; threats and vulnerabilities; application, data, and host security; access control and identity management; and cryptography. New topics in network security, including psychological approaches to social engineering attacks, web application attacks, penetration testing, data loss prevention, cloud computing security, and application programming security. It is recommended, but not required, that MCS3663, MCS4613, and MCS4653 is taken prior to taking MCS5813.
Topics of current interest in computer science. (May be taken more than once if the topic is different)
Topics of current interest in computer science. (May be taken more than once if the topic is different)
Architecture of software environments. Syntax directed editors. Tools for programming-in-the-large. Tools to support the assessment of partial design. Expert systems for software development. Lecture 3 hrs.
The objective of this course is to familiarize students with the practice of performing reverse engineering on suspicious files and firmware by utilizing static and dynamic techniques and procedures. The student will gain an understanding of how malware behavior can be used to train machine learning classifiers to detect malicious software. Analytical information such as environment changes (file, system, network, and process), communication with the rest of the network and the malware’s impact on system will be closely observed and analyzed for actionable information.
This course aims to provide a practical survey of the standards and best practices for cybersecurity. The emphasis is focused on technologies that are commonly used on the Internet for network systems and widely implemented protocols. It also offers students information and skills to start implementing management solutions and best practices to enforce security. The course contains multiple modules covering network programming and hands-on security labs. Students will be tested using a number of methods: laboratory tasks, forum posts and answers, quizzes, one community project, and one final test.
Cryptography is a foundation in cybersecurity. This course explores the fundamental principles, advanced techniques, and practical applications of cryptography in real-world systems. Advanced topics include zero-knowledge proofs, secret sharing, threshold cryptography, secure multi-party computations, differential privacy, blockchain, and post-quantum cryptography. Additionally, this course covers essential cryptographic primitives and protocols such as symmetric encryption, public key encryption, digital signatures, message authentication, hash functions, pseudo-random functions, and key exchange mechanisms.
This course provides a comprehensive exploration of Natural Language Processing (NLP) with a focus on applying modern machine learning techniques to text data. Students will learn to implement and evaluate a wide range of algorithms for text representation, classification, clustering, and generation, covering both traditional statistical methods and cutting-edge deep learning approaches.
The objective of the course is to complete a graduate-level research project in the concentration field of the graduate student. The project will be done with full supervision of the faculty, in the faculty field of specialty to develop a research project leading to new knowledge that is of interest to the broad relevant scientific community. The project will be done at the highest possible level within the sub-discipline, and will expand on the state-of-the-art in the field. The goal is exposure to state-of-the-art activity in the field of concentration, and to be introduced to high level academic research.
The objective of the course is to complete a graduate-level research project in the concentration field of the graduate student. The project will be done with full supervision of the faculty, in the faculty field of specialty to develop a research project leading to new knowledge that is of interest to the broad relevant scientific community. The project will be done at the highest possible level within the sub-discipline, and will expand on the state-of-the-art in the field. The goal is exposure to state-of-the-art activity in the field of concentration, and to be introduced to high level academic research. The project selected in MCS6833 may or may not be a continuation of a project started in MCS6823.
Must have permission of program director. Initiation of work on a large-scale computer science team or project at the student’s workplace. Students work closely with a faculty member and an industry representative.
Completion of the computer science project began in MCS7013.
Three credit hours of a course to form research for the Master’s Thesis, which partially fulfill the thesis option in the MSCS program. The student works in collaboration with a faculty advisor (or advisors) and, optionally and industrial advisor, and is expected to meet regularly with his or her advisors. The student expected to make an oral defense of their thesis’s prospectus.
Three credit hours of a course to fulfill the thesis option in the MSCS program. The student works in collaboration with a faculty advisor (or advisors) and, optionally and industrial advisor, and is expected to meet regularly with his or her advisors. Upon completion of the six credit hours of thesis research, the student makes an oral defense of the thesis, and submits the thesis to the University for publication.
Must have permission of program director. Topics of current interest in computer science. Course may be taken more than one if the topic is different. Lecture 3 hrs.
By enrolling in this course, a student states their intention to take the qualifying exam associated with a PhD program offered through the Department of Mathematics and Computer Science. Passing the exam is required to become a candidate for a PhD degree, and is a necessary prerequisite for enrolling in dissertation research. Note that there is a limit on the number of times a student can enroll in this class. Refer to the specific program for more details.
This class is for PhD students that have yet to complete their qualifying exam. It supports graduate level research on topics agreed upon with their PhD advisor.
This class is for PhD students that have yet to complete their qualifying exam. It supports graduate level research on topics agreed upon with their PhD advisor.
Three, six or nine credit hours of a course to form research for the PhD Thesis, which partially fulfill the thesis option in the CS PhD program. The student works in collaboration with a faculty advisor (or advisors) and is expected to meet regularly with his or her advisors.
Three, six or nine credit hours of a course to form research for the PhD Thesis, which partially fulfill the thesis option in the CS PhD program. The student works in collaboration with a faculty advisor (or advisors) and is expected to meet regularly with his or her advisors.
Three, six or nine credit hours of a course to form research for the PhD Thesis, which partially fulfill the thesis option in the CS PhD program. The student works in collaboration with a faculty advisor (or advisors) and is expected to meet regularly with his or her advisors.
Sessions feature TA/faculty support, extra credit worksheets, and math Bingo with prizes!
– Algebra/Precalculus: Log into Canvas and navigate to Assignments
– Calculus 1: Log into WebAssign and use the following course access code: ltu 0695 1913
– Calculus 2: Log into WebAssign and use the following course access code: ltu 6973 5750
To submit feedback on the Workshop (or suggests 3D designs for prizes!), please complete the following survey: https://forms.gle/
This REU site, in collaboration with Michigan State University, provides hands-on active learning and research opportunities for undergraduate students to develop, test, analyze, and evaluate self-drive and V2X algorithms on street legal vehicles. The results will be published in posters and papers.
Applications with your personal statement, resumé, transcripts, and two letters of recommendation through NSF ETAP at: etap.nsf.gov
Accepted students will be notified on a rolling basis until all positions filled or by late April. Late applications may be considered if funding remains available.
For more information you can contact Dr. CJ Chung, Professor, Math & Computer Science Department, College of Arts & Sciences at cchung@ltu.edu.
Eight college students from around the country will spend eight weeks from May 22 – July 16, 2024 at Lawrence Technological University in Southfield to develop computer programs for self-driving cars.
The goal of the National Research Experience for Undergraduates Program (NREUP) at Lawrence Technological University is to introduce students from ethnic groups which are underrepresented in mathematics to the multifaceted techniques of mathematically modeling the spread of infectious diseases.
The primary focus of the project will be model building and rigorously showing how these models behave using dynamical systems theory. A secondary focus will be on simulating the systems numerically, performing parameter estimations, and validating with real-world data.
The Intelligent Ground Vehicle Competition (IGVC) is an annual robotics competition focused on the research and development of autonomous ground vehicles for college students. It challenges participants to design, build, and program intelligent robotic vehicles that can navigate real-world outdoor environments using computer vision, machine learning, sensor fusion, and autonomous control.
IGVC was established in 1993 by the U.S. Army’s Combat Capabilities Development Command Ground Vehicle Systems Center, formerly known as TARDEC, host school Oakland University, and the AUVSI. RoboNation began operation in 2009 with support from AUVSI to provide hands-on educational robotics experiences that offer students a way to solve global challenges.
Under Dr. CJ Chung’s leadership, Computer Science students have been participating in IGVC since 2003.
The Mathematics + Computer Science Seminar is a biweekly seminar highlighting research activities within the MCS Department at LTU.
Discover the College of Arts and Sciences’ impactful programs designed to inspire learning and innovation.