Course image BIG 805: Python Programming and optimization
Computer Science

Introduces the fundamental principles of object oriented programming using the python language: variables, expressions and statements; functions, conditionals and recursion; fruitful functions and iterations; strings and lists; tuples and dictionaries; files and exceptions; classes and objects.

Includes 10 hours of laboratory practicals for students to gain expertise.

Teaches how to design and implement bioinformatics algorithms of moderate complexity in python. To develop computational solutions to problems in bioinformatics for example, using algorithms for sorting and searching, for analyzing trees and graphs using dynamic programming and using regular expressions.

Optimization techniques from serval fields including linear programming, mixed integer programming, dynamic programming, constrain programming, greedy algorithms, local search and evolutionary computation