IB9SZ-15 Algorithims and Optimisation in Software Applications
Introductory description
Algorithms and optimisation are critical in most modern software applications, from artificial intelligence to personalisation. This module will give students a thorough grounding in key topics such as optimisation techniques, analysis of algorithms/computation complexity and data structures, all within the context of the software industry. The module will include coverage of the key technologies in this area, the mathematical foundations of algorithms and optimisation, and the application of these techniques in a range of business settings.
Module aims
The module aims to develop the learner’s interest in, and knowledge and understanding of, various algorithmic techniques and optimisation approaches and their application in the software industry. Students will learn about the theoretical underpinnings of these models as well as how they are used in practice. The module will combine both hands-on exposure to designing and implementing methods, with a focus on the business decisions that need to be made.
Outline syllabus
This is an indicative module outline only to give an indication of the sort of topics that may be covered. Actual sessions held may differ.
Introduction to algorithms and optimisation
The software development lifecycle
Analysis of algorithms and computational complexity
Linear programming
Dynamic programming
Implementing algorithms in software
Learning outcomes
By the end of the module, students should be able to:
- Identify and evaluate opportunities to implement a variety of algorithms in the context of the software industry.
- Critically evaluate algorithms for computational complexity and implement changes to improve performance.
- Demonstrate an analytical mindset with applications to business problems.
- Demonstrate a critical understanding of an algorithmic approach to software problems.
Indicative reading list
Albright C and Winston W (2011). Management Science Modeling, Thomson/South-Western.
Bhargava A (2016). Grokking Algorithms: An Illustrated Guide for Programmers and Other Curious People. Manning Publications.
Bradford Tuckfield (2021). Dive Into Algorithms: A Pythonic Adventure for the Intrepid Beginner.
Skienna SS (2020). The Algorithm Design Manual (3rd ed.). Cham: Springer.
VanderPlas J (2016). Python Data Science Handbook: Tools and Techniques for Developers: Essential Tools for Working with Data, Sebastapol: O’Reily.
Winston WL (any edition) Operations Research. Applications and algorithms, International Thompson Publishing
Research element
Elements of research methodology typical for quantitative analysis (mathematical, analytical, computational approaches) are represented in examples discussed in the class
Interdisciplinary
The module includes a use of computer science and algorithms as a part of teaching material; that illustrate an interdisciplinary nature of approaches taught.
Subject specific skills
Formulate an optimisation model
Apply big O notation to understand computational complexity
Analyse and implement a variety of optimisation models
Transferable skills
Demonstrate numeracy skills
Demonstrate written and verbal communication skills
Study time
Type | Required |
---|---|
Online learning (scheduled sessions) | 5 sessions of 2 hours (7%) |
Other activity | 18 hours (12%) |
Private study | 48 hours (32%) |
Assessment | 74 hours (49%) |
Total | 150 hours |
Private study description
Private study to include preparation for lectures and own reading
Other activity description
9 x 2 hr F2F workshops
Costs
No further costs have been identified for this module.
You do not need to pass all assessment components to pass the module.
Assessment group D
Weighting | Study time | Eligible for self-certification | |
---|---|---|---|
Assessment component |
|||
Group project. Written report (2,000 words) Video presentation (8 mins) | 30% | 22 hours | No |
Reassessment component |
|||
Individual Assignment | Yes (extension) | ||
Assessment component |
|||
2 Hr Written exam | 70% | 52 hours | No |
|
|||
Reassessment component is the same |
Feedback on assessment
For the assignment, correct solutions for all models will be provided. In case of wrong solutions, the typical mistakes will be commented on. For the exam, overall cohort feedback will analyse typical mistakes and will provide the model solutions.
Courses
This module is Optional for:
- Year 1 of TIBS-N1N3 Postgraduate Taught Business Analytics