Syllabus of CSCE206 Scientific Application Programming

Course Summary

Intelligence is basically about Scientific Application Programming.

Course Objective At the end of the class, students are expected to be able to

  1. To gain understanding of principles of scientific programming
  2. To solve real-world problems using python and scientific libraries
  3. To Benchmark and evaluating scientific programs

Prerequisite You are not expected to have some basic programming skills. Experience with C, or C++ or java is helpful.


A Primer on Scientific Programming with Python by Hans Petter Langtangen (2016)
ISBN-10: 3662498863 Springer;
(you can find cheap books at

Instructor: Dr. Jianjun Hu
Machine Learning and Evolution Laboratory (MLEG)
Email: jianjunh AT
Office: 2223 Storey Innovation Center
Office Hours: TTH 3:00PM-4:30PM or by Appointment.

Lecture Notes/Assignments/Readings

Lecture notes, homework assignments will be available at the class website. You will be responsible for downloading them to prepare for class and homework.

Supplementary Readings Extensive reading materials will be provided each week to develop a broad understanding of algorithms


Your course grade will be based on homework assignments, 1 mid-term exam, 1 final project, and attendance. The weights given to these components is:

  1. Homework assignments (30%)
  2. In-class midterm exams (1) (30 %)
  3. Final project(20%)
  4. Final Exam (15%)
  5. Attendance and participation(5%)

Grade: A (90-100%), B+ (85-90%), B (80-85%), C+ (75-80%), C (70-75%), D+ (65-70%), D (60-65%), and F (0-60%)

Covered Topics: (These are tentative topics. Changes may be made based on the available time.)

Many interesting topics will be covered: Loops and lists
Functions and branching
Input data
Files, strings, dictionaries
Graphs, ploting, visualization
Random numbers
Object-oriented programming
Sequences and difference equation
Discrte calculus
Sovling Differential equations
parallel computing with python

A due time will accompany each homework assignment. Late homework is not accepted without prior approval from the instructor. Homework may have different weight when it is counted into your final grade. The due time of the homework will be at the beginning of the class. Some homework questions need programming. You need to turn in your code to the departmental electronic dropbox. Code should be written in C or C++ and should be tested in the departmental Linux computers. Class attendance is required as claimed in University policy and a student is responsible for all the material covered in the class. Not knowing changes to class policy/homework/etc. is NOT an acceptable reason for non-compliance. Both midterm and final exams are closed to books and notes, except for a single-side letter-size cheat sheet for each midterm and a double-side one for the final exam. Grades of homework and exams will be uploaded into Blackboard when they are available.

Academic Integrity: Homework and examinations are expected to be the sole effort of the student submitting the work. Students are expected to follow the Code of Student Academic Responsibility. Every instance of a suspected violation will be reported. Students found guilty of violations of the Code will receive the grade of F for the course in addition to whatever disciplinary sanctions are applied.