This course equips students with Python programming skills for computational science and introduces the fundamentals of Artificial Neural Networks (ANN).Â
It develops proficiency in scientific computing, numerical methods, data visualization, and neural network modeling, enabling students to solve complex computational problems and build intelligent systems for research and real-world applications
Upon successful completion of this course, students will be able to:
CO1 (Knowledge/Remember): Recall and describe the fundamental concepts of Python programming, scientific computing, numerical methods, data structures, and Artificial Neural Networks (ANN).
CO2 (Understanding): Explain and interpret the principles of Python programming, numerical computation, data visualization, optimization techniques, ANN architectures, learning algorithms, and activation functions.
CO3 (Application): Apply Python programming, scientific computing libraries, and ANN models to solve computational problems, analyze datasets, and develop intelligent applications for scientific and engineering domains.
CO4 (Analysis): Analyze computational problems, evaluate the performance of numerical algorithms and neural network models, and compare different optimization and learning techniques for efficient problem solving.
CO5 (Synthesis/Evaluation): Design, implement, and optimize computational science applications and Artificial Neural Network models using Python and appropriate scientific computing libraries to address real-world research and engineering challenges.
UNIT I: Python Programming for Scientific Computing [8 Classroom Contact Hours] Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Introduction to Python, Python programming environment, variables, data types, operators, input/output, control structures, functions, modules and packages, file handling, exception handling, object-oriented programming concepts, introduction to NumPy arrays, vectorized operations, and scientific computing environment.
UNIT II: Computational Science Using Python [10 Classroom Contact Hours]Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
Numerical computing fundamentals, mathematical functions using NumPy, matrix operations, linear algebra, solving linear systems, numerical differentiation and integration, interpolation, root-finding methods, optimization basics, random number generation, and introduction to SciPy for scientific computation.
UNIT III: Data Analysis and Visualization [9 Classroom Contact Hours]Â Â Â
Data manipulation using Pandas, importing and exporting datasets, data preprocessing and cleaning, descriptive statistics, data aggregation, visualization using Matplotlib and Seaborn, scientific plotting, histogram, scatter plots, line graphs, bar charts, heat maps, and exploratory data analysis.
UNIT IV: Fundamentals of Artificial Neural Networks [10 Classroom Contact Hours]
Introduction to Artificial Intelligence and Machine Learning, biological neuron and artificial neuron models, perceptron, multilayer perceptron (MLP), activation functions, forward and backward propagation, gradient descent optimization, loss functions, training and testing neural networks, overfitting and underfitting, performance evaluation metrics, and introduction to TensorFlow and Keras.
UNIT V: Advanced Neural Network Applications [8 Classroom Contact Hours]
Introduction to deep learning, Building ANN models: CNN, LeNet, AlexNet, VGG, ResNet, RNN using Keras, hyperparameter tuning, model evaluation, regularization techniques, dropout, batch normalization.
List of Experiments: [30 Lab Contact Hours]
Python programming fundamentals and problem-solving.Â
NumPy array creation, indexing, and matrix operations.Â
Scientific computations using SciPy.Â
Numerical methods for solving mathematical problems.Â
Data manipulation and analysis using Pandas.Â
Data visualization using Matplotlib and Seaborn.Â
Implementation of a single-layer perceptron.Â
Design and training of a multilayer neural network using TensorFlow/Keras.Â
Performance evaluation and hyperparameter tuning of ANN models.Â
Mini project involving computational science and ANN applications.