The programme is subject to final approval by the Hellenic Authority for Higher Education.
Ready to explore the world of computer science and immerse yourself in a programme that blends theory with practical experience? The BSc (Hons) in Computer Science offers a comprehensive foundation for students eager to pursue a career in the fast-evolving field of technology. This programme combines strong theoretical principles with hands-on projects and industry-focused modules, equipping students with the critical problem-solving, analytical, and technical skills needed to excel in today’s digital world. The curriculum is in compliance with the already established standards proposed by international Computer Societies, such as the British Computer Society (BCS), the Association of Computing Machinery (ACM) and the Institute of Electrical and Electronics Engineers (IEEE). Graduates are highly skilled IT professionals who pursue successful careers in the competitive global labour market, benefiting from the skills, knowledge and real-world insights acquired during their studies.
*BCS Accreditation is subject to confirmation due to change of legal status.
The BSc (Hons) in Computer Science undergraduate programme has the following tracks:
Industrial Project
Applying knowledge to real industry challenges
In their final year, students have the unique opportunity to work on a hands-on project for actual industry clients, solving real-world business challenges. Students apply their skills in a real-world context, while gaining invaluable industry experience and expanding their professional network.

Semester 1
Programming Principles and Algorithms
Mathematical Foundations
Introduction to Computer Science
Academic and Transferable Skills
Academic and Professional Communication
Semester 2
Programming Methodology and Design
Introduction to Web Technologies
Principles of Management
Artificial Intelligence Literacy
Digital Toolkit: IT Applications
Semester 3
Introduction to Object-Orientation
Database Systems I
Network Architectures I
Computer Systems Architecture
Systems Analysis and Design
Semester 4
Object-Oriented Programming
Logic and Automata
Database Systems II
Network Architectures ΙΙ
Information Systems and the Digital Enterprise
Semester 5
Logic Programming
Data Structures and Algorithms
Web Programming
Data Analysis: Statistics and Probabilities
Human-Computer Interaction
Information Systems Applications
Research Skills in the IT Profession
Green Computing
Semester 6
Professional Issues in IT
Operating Systems
Software Development in Practice
Functional Programming
Artificial Intelligence Techniques
Formal Methods and Software Reliability
Individual Project
Professional Development Seminar Series
Industrial Software Project
Software Engineering
Data Science
Network Computing
Cloud Computing
Semester 7
Social Media and Networks
Innovation and Entrepreneurship in IT
E-Commerce and Digital Markets
IT Strategy in Business
Knowledge Technologies for Innovation
Semester 8
Information Security
Mobile Application Development
Game Design and Development
Front-end Application Development
Back-end Application Development
Machine Learning
Deep Learning
Nature-Inspired Computing
Big Data
Agents and Robotics
Individual Project (continued)
Professional Development Seminar Series (continued)
Programme aims
The programme aims to:
Learning outcomes
Graduates will have developed knowledge and understanding of:
Ready to join? Explore the entry requirements and follow our application process to apply for this programme.
Join the programme and begin your study journey with us!
At the University of York Europe Campus, we believe that access to quality education should be within everyone΄s reach. That’s why we offer a range of scholarships and funding opportunities to help you pursue your academic goals.
Our scholarships are awarded based on academic merit, financial need, social factors, and other criteria, and are designed to empower talented individuals and make higher education more accessible.
Important: Please note that you must apply separately for a scholarship or funding opportunity. Submitting an application for admission does not automatically consider you for financial support.
Below you can find the tuition fees for your programme of interest (full-time study). A registration fee of €390 is submitted along with your application and is paid once at the beginning of your course.
Important Note: Tuition fees are typically payable in installments, as outlined in each student’s offer letter.
Find detailed information on how to apply, eligibility criteria, application deadlines, and other important guidelines for each scholarship and funding opportunity.
If you need further assistance, please contact our local offices abroad or reach out to our Admissions Team. We will be happy to support you.

The Computer Science Department is proud that all our Bachelor’s and Master’s programmes delivered in Thessaloniki are accredited by the BCS (British Computer Society), The Chartered Institute for IT.
The accreditation is a confirmation of the department’s continuous efforts to provide high quality education to its students. It also provides a competitive advantage to our graduates as a demonstration of their competence in the profession.
Full CITP Accreditation
Accredited by BCS, The Chartered Institute for IT for the purposes of partially meeting the academic requirement for registration as a Chartered IT Professional.
Visit BSC’s official website.
Accreditation and Recognition
The University of York Europe Campus is strongly committed to quality education and academic excellence. It is officially accredited and recognised by top international accreditation bodies. Read more
*Accreditation is subject to confirmation due to change of legal status.
The BSc (Hons) in Computer Science programme prepares students for rewarding and challenging careers in different specialties such as software engineering, system administration and management, computer architecture, software systems, high-performance computing and research.
The Career, Employability, and Enterprise Centre is dedicated to helping students define and achieve their career aspirations. Offering expert guidance on CVs, cover letters, and job interviews, the Centre ensures students are well-prepared for the job market. Through initiatives like Career Days and various internship programmes, we connect students with potential employers, providing valuable opportunities to build professional networks and gain hands-on experience.
This module instructs students in all aspects of academic and professional communication, including academic writing, reading, speaking and listening through the examination of contemporary social issues, as well as those pertinent to the student’s own field of study. It also provides space for students to consider how technology is used in the academic communication process. Using a variety of different teaching and learning methods, students will be given the opportunity to practice and improve their overall use of academic language so that by the end of the module they are proficient in the specifics of academic and professional discourse.
This interdisciplinary, university-wide module equips Year 1 undergraduate students with essential academic, personal, and professional skills to support their successful transition into Higher Education and prepare them for lifelong learning and employability. Students will develop capabilities in academic literacy, critical thinking, digital fluency, collaborative learning, time and self-management, communication, and intercultural awareness. Through reflective practice and experiential learning, students will gain confidence in their abilities to learn independently, participate actively in the academic community, and contribute effectively to group and workplace settings. The module emphasises adaptability, inclusivity, and resilience as core components of academic and professional success.
This module provides students with the fundamental knowledge necessary for their integration into the broader cognitive field of Computer Science. It establishes the theoretical foundations for understanding the basic principles on which various areas of the field are based. Specifically, it initially presents the historical evolution of the field that ultimately led to modern technological applications of Computer Science. Subsequently, the course deals with introductory concepts of the most basic subfields, such as Computer Software, Databases, Computer Networks, etc.
This introductory module provides an understanding of the basic mathematical methods required for the study of problems related to Computer Science. The module has been designed to satisfy the mathematical competency required for a first-year student in Computer Science. It covers Set Theory, Linear Algebra and Calculus.
This module is an introduction to computer programming covering the fundamental constructs and practices required for the procedural development of software, using the Java programming language as a vehicle. Emphasis is placed on problem analysis and developing algorithmic thinking skills.
This module provides first-year undergraduate students with foundational knowledge of Generative AI technologies, their ethical implications, and practical applications. Through a combination of theoretical discussions and hands-on workshops, students will develop critical thinking skills to evaluate generative AI systems, understand their societal impact, and apply these tools ethically within their respective disciplines. Students will gain practical experience with prompt engineering, learn to identify AI-generated content, and explore discipline-specific applications. The module begins with core concepts common to all students, followed by discipline-specific applications tailored to Business Studies, Psychology, Computer Science, English Language Linguistics and Literature, and Communication and Digital Media.
This hands-on module equips first-year undergraduate students with essential digital skills through practical experience with cloud-based productivity tools and discipline-specific applications. Students will develop competencies in collaborative document creation, data analysis, presentation design, and digital organization. The module emphasizes cloud computing concepts, collaboration techniques, and effective digital workflows. Following a common foundation in such tools, students will explore specialized applications relevant to their academic disciplines (Business Studies, Psychology, Computer Science, English Language Linguistics and Literature, and Communication and Digital Media), preparing them for academic success and future professional environments.
The aim of this module is to introduce to students contemporary technologies used for website development, and to help them gain the skills needed in developing websites and programming software.
In the twenty-first century, individuals working in organizations must develop effective management skills to navigate increasing global competition. These skills are essential for organizations to differentiate themselves, maintain a competitive advantage, and achieve long-term success. This course provides students with a comprehensive introduction to foundational concepts, theories, and practices central to effective business management. It explores core functions such as planning, organising, leading, and controlling, with a focus on applying these functions to real-world business challenges. The module emphasises the importance of organizational structure and design, illustrating how different structures can affect managerial decision-making and overall performance. Additionally, it highlights the human side of management, examining key motivational theories and the complexities of various leadership styles. In a business landscape increasingly shaped by ethical concerns and the rise of AI, students will also be equipped with the tools to address ethical dilemmas and comprehend the social responsibilities inherent in management roles.
This module is a continuation of the module Programming Principles and Algorithms, introducing students to further fundamental constructs and practices required for the procedural development of software in the Java programming language. Emphasis is placed on problem analysis, developing algorithmic thinking skills, and testing one’s code.
This module provides the student with basic knowledge on fundamental concepts in the areas of computer Architecture and Computer Systems organization, including structure and components of modern computer systems, CPU architecture, memory hierarchy, I/O peripherals and storage systems, digital logic and basic logic design, computer arithmetic, data processing concepts from an architectural perspective and a general introduction to advanced computer architectures and systems.
This module presents the concepts and principles of database systems and examines key issues of the database approach to information storage and manipulation. It focuses on relational databases, explaining the modeling concepts of the Entity Relationship Diagram as a high-level conceptual data model, discusses in detail the relational data model and presents the structured query language. The module also covers more contemporary and advanced issues in data management and the digital transformation age, such as how databases fit in software development overall, as well as NoSQL DBs, Big Data concepts, transaction processing and cloud databases and computing.
This module is an introduction to the fundamental concepts of object-oriented programming, and techniques for the analysis, design and implementation of object-oriented solutions. Emphasis is placed in determining and implementing the necessary user-defined classes, identifying the relations among them and making use of the principle of inheritance.
The emergence of networked computers as the computing platform for many applications affects every aspect of the study and use of computing. This module introduces modern communication systems. It offers a comprehensive overview of the fundamental principles, theories, and practices employed in computer networks and aims to develop a foundation that can be used as the basis for further study or research in the field.
Systems Analysis and Design is an active field where new methods and techniques appear to support the software development process. This module is addressed to the first level students and provides an overview of the different development approaches. Furthermore, the module focuses on the analysis and design of software systems and the application of the Unified Modelling Language (UML) in a software development process.
This module is the continuation of Database Systems I and presents the concepts and principles of database systems and examines key issues of the database approach to information storage and manipulation. It focuses on relational databases, explaining the modeling concepts of the Entity Relationship Diagram as a high-level conceptual data model, discusses in detail the relational data model and presents the structured query language. The module also covers more contemporary and advanced issues in data management and the digital transformation age, such as how databases fit in software development overall, as well as NoSQL DBs, Big Data concepts, transaction processing and cloud databases and computing.
Information Systems are highly integrated into our daily business activities. They are vital components of successful businesses and organizations and therefore they constitute an essential field of study in the modern Digital Enterprise. Information Technology can help all kinds of businesses improve the efficiency and effectiveness of their processes. As a consequence, effective managers need to remain current in terms of the IT available and to acquire the concepts and skills involved in analysing, designing and implementing Management Information Systems (MIS). This module introduces the students to the concepts which are necessary for the effective cooperation between managers, system analysts, and other IT professionals. It intends to provide the theoretical background as well as the practical skills for using and analysing digital information.
This introductory module provides an understanding of fundamental mathematical models, formalisms and methods required for the study of problems related to Computer Science. The module has been designed to satisfy the mathematical competency required for a first-year student in Computer Science, and deepen the student’s understanding of the use of abstract mathematical models in Computer Science. It covers Logic, Automata Theory and Graph Theory.
The emergence of networked computers as the computing platform for many applications affects every aspect of the study and use of computing. This module introduces modern communication systems. It offers a comprehensive overview of the fundamental principles, theories, and practices employed in computer networks and aims to develop a foundation that can be used as the basis for further study or research in the field.
This module is a continuation of the module Introduction to Object-Orientation, introducing more advanced concepts of object-oriented programming, such as polymorphism, design with interfaces, and error handling. Graphical User Interfaces are also introduced for the creation of user friendly applications.
Data science is nowadays one of the highest-paying graduate jobs. This module aims at introducing students to the fundamental mathematical concepts pertaining to data science. It is conceptually divided in two parts. The first part is devoted to probability – a cornerstone of Data Science – and includes such topics as discrete and continuous random variables, and probability distributions. The second part is devoted to sample statistics and includes such topics as regression, estimation, confidence and hypotheses, and random processes
This module provides an introduction to the solid foundations in basic concepts of programming: data structures and algorithms. It introduces the idea of classifying data according to its abstract behavior, explains the use, internal workings and the importance of basic data structures (lists, stacks, queues, trees) and demonstrates a variety of algorithmic techniques in the fields of searching and sorting. The module also introduces computational complexity and basic analysis of the performance of algorithms. Overall, the module offers a mixture of theoretical knowledge, as well as, practical experience in Java, and aims to strengthen students’ abilities to produce efficient programming solutions by utilizing data structures and algorithmic analysis.
This module intends to introduce students to Human Computer Interaction (HCI) principles and how they can be applied in the software development process, with a target to create effective and user-friendly interfaces and interactions. Specifically, students see what usability is and how it can be measured, how HCI can be used in all phases of the software development process, how HCI can be used to evaluate the usability of a software system, how to systematically design usable user interfaces (UI).
Logic programming (LP) is an exciting programming paradigm, significantly different from the imperative and object-oriented paradigms which are dominant nowadays. The difference lies in the fact that it introduces a declarative style of programming according to which the programmer is to state what the problem is and not how to solve it. The main aim of this module is to introduce LP through an in depth study of the Prolog language, which has highly contributed to the field of Artificial Intelligence, emphasising more to practical aspects of the declarative paradigm than its strong theoretical foundations. Through a series of formal lectures and laboratory sessions the students acquire the necessary knowledge for designing and implementing logic programs, which also forms a basis for future courses such as Artificial Intelligence Techniques, Intelligent Systems, Agents and Robotics and 3rd year Projects.
This module covers issues related to the architecture, design and development of contemporary dynamic web applications. Topics include technologies associated with web applications including HTML5/CSS, dynamic server-side pages, dynamic client-side scripts, personalisation (cookies and sessions) and client-side techniques for interactive Web applications.
Although the global adoption of ICT has resulted in a significant negative environmental impact, ICT forms part of the solution to many environmental issues. Green Computing is the study and practice of developing and using computer systems and telecommunications with minimal impact on the environment and at the same time maximizing the positive environmental impacts. This module discusses the environmental impact of ICT, investigates available green technologies and tools and how they are utilised for developing Green ICT strategies towards sustainable computing, presents ways on revising business processes and ICT operations and all these within the available European and international legislation.
Usage of Information Systems has become pervasive in today’s world, not only in the business environment but also at societal and personal level. This module investigates applications of Information Systems in both the public and private sector. We examine a wide number of key Information Systems applications, discuss their organisational and societal advantages and implications, and address contemporary issues that emerge in various and diverse fields that incorporate IS solutions.
This module intends to introduce students to research-related issues and techniques that are commonly employed in Computer Science. Students will be exposed to methods for searching, identifying and evaluating scientific sources, report writing techniques, and principles and approaches to writing a literature review. The module will additionally cover research approaches for designing data collection strategies, and selecting appropriate analysis methods, as well as methods for the representation and interpretation of the results. Finally, the module acts as a preparation for the 3rd year project, providing practical guidelines on how to write a successful dissertation.
Artificial Intelligence (AI) is the area of Computer Science with the ultimate goal to build machines that exhibit human-like behaviour when solving complex problems. AI is a broad term that covers everything from knowledge, reasoning, neural networks, natural language, robotics etc. This module provides an introduction to explainable classic Artificial Intelligence problem solving techniques based on “AI = search + knowledge representation”. It presents uniformed and informed heuristic state space search algorithms, knowledge representation techniques, such as logic, structured representations and rules as well as basic natural language syntax and semantics processing and finally principles of machine learning. For each technique discussed, special emphasis will be given on the practical issues that arise during implementation. The module provides the necessary background knowledge for the advanced modules that follow in the curriculum.
This module introduces the use of Formal Methods for the development of robust and trustworthy software. It provides an understanding of the benefits stemming from formally specifying the behaviour of a software system and the properties thereof, as well as of the theories underpinning the formal verification of such a system. More specifically, the module provides knowledge of how to use temporal logics for formally capturing system properties, and how to use a process metalanguage, namely Promela, for modelling system behaviour; it also provides knowledge on the use of the SPIN model checker for the automatic verification of system properties.
Functional programming (FP) is a declarative programming paradigm where programs are built by composing functions. Programs generally consist of mapping values to different values and not by modifying state and executing statements sequentially. The purpose of this module is to introduce the functional paradigm; a rather old concept which has attracted much interest and core functional concepts have found uses in most popular programming languages.
This course offers an introduction to the fundamental principles and techniques employed in the design of operating systems; the concepts of an operating system is based upon are covered in detail. Emphasis is drawn on the OS processes and their scheduling, as well as the memory, the file system and their management. The above concepts are applied in the case of a UNIX system.
This module aims to promote an awareness of the wider social, legal and ethical issues of computing. It describes the relationship between technological change, society, and the law, emphasising the powerful role that computers and computer professionals play in a technological society. It also introduces the legal areas which are relevant to the discipline of computer science (e.g., intellectual property, liability for defective software, computer misuse, etc.). It exposes students to the ethical concepts that are important to computer professionals and prepares the students in acting professionally in a rapidly changing and challenging society.
This module introduces the students to the complete process of producing proper software, from requirements to the deployment of the final product. Students will capture the requirements and specifications of a project, will incrementally implement a software solution following contemporary coding and collaboration practices.
This module is an introduction to Cloud Computing. It explores a range of seminal principles, techniques, and technologies underpinning Cloud Computing. It also provides the theoretical foundations, as well as hands-on training, on developing and deploying cloud-native applications.
Data science is nowadays one of the highest-paying graduate jobs. This module aims at introducing students to the fundamental mathematical concepts pertaining to data science. Students will learn how to further use their previously acquired knowledge of database systems, probabilities, and statistics concepts. They will a gain experience in cleaning, transformation, data analysis as well as data visualization. The module has a practical dimension through the use of an appropriate programming language. It will mainly work as an introductory module to Machine Learning.
The undergraduate individual project is an extended piece of individual work, occupying your time throughout Stage 3 of your undergraduate studies. Students work on a topic that interests them and have regular meetings with their supervisor to discuss their work.
It involves two aspects:
The purpose of this module is to provide students with the opportunity to integrate and apply the skills and the knowledge they have acquired so far in their studies to a realistic problem. Students are exposed to the processes involved in the team-based development of software through real projects that are provided by companies from the software industry.
This module presents advanced as well as contemporary issues of data communications and computer networking. It provides students with the ability to utilise previous knowledge of computer networks in order to gain a thorough insight of data exchange. Important and crucial subjects related to networking are examined and new technologies and infrastructures are explored. It covers a broad range of network-related issues, focusing on the higher layers of the protocol stack. Moreover, it elaborates on the socket programming paradigm.
The Professional Development Seminar Series is a 0-credit module that aims at enhancing students’ skills on contemporary ICT topics, which can contribute to advancing their employability. The seminars are open and mainly target near-to-graduation undergraduate students. They address practical/hands-on skills and are delivered by industry experts based on real-world cases. The diversity of the considered topics aims at providing high coverage on a wide area of ICT-oriented subjects. Along with skills enhancement, the series also includes seminars that improve students’ professional attributes by addressing various issues related with the acquisition of a professional position. It is highlighted that the seminars are in full agreement and contribute to the implementation of CITY’s and the Department’s strategic goals on enhancing students’ experience and industry links, which enable the development of an outstanding employability profile.
The module aims to develop an understanding of the problems involved in the development of high quality software products and appreciation of the methodologies, techniques, and tools necessary to develop such systems efficiently. The emphasis of the course is placed on project management, metrics and project estimation, risk management, quality issues, testing, and contemporary software engineering topics, such as extreme programming and refactoring.
Continued from semester 7.
Continued from semester 7.
This module introduces the students to the notion of agents and agent-based software development. The students will learn about single and multi-agent environments, and the issues and problems associated. In addition the students will be introduced to robotics as a field of science from a computer science perspective, with a focus on mobile robots. This focus will help to tie up the two subjects. The students will have to apply what they learn to a realistic scenario that will be solved with mobile robots (in a real environment, using the Lego Mindstorms platform).
Any modern web application requires data to be stored and retrieved, business logic and rules need to be followed, and results need to be calculated. Often called the ‘back-end’, this behind-the-scenes functionality is crucial for any reliable and scalable web application. The module aims to provide students with the necessary skills and knowledge in order build reliable, scalable, fast and robust back-ends for web applications.
Big data refers to large and complex collections of data sets that cannot be dealt with common data management approaches and techniques. The module will address fundamental aspects, challenges, and possible solutions for Big Data analytics.
Deep learning is a hot topic that has found multiple areas of application in the industry and business. Deep learning is the extension of Neural Networks (NN) that includes some new developments in training algorithms and uses the versatility of the computing power and data storage of the cloud. The module briefly introduces neural networks, explains how they work, how they are trained, and how they are deployed. Furthermore, it discusses the recent developments in training algorithms, NN structures, and cloud deployment, to conclude with the practical application of Artificial Intelligence solutions that we now call Deep Learning.
E-commerce is nowadays a fact. Its sharp usage increase, along with the systematic progress of Information and Communication Technology (ICT) has greatly influenced every aspect of our daily lives. This module provides balanced coverage of both technology and business aspects of e-commerce and digital markets. The current e-business and revenue models, as well as the ICT technologies required for e-commerce activity are discussed. In addition, marketing and advertising concepts that play a vital role in contemporary e-commerce and how these impact on online consumer behavior is deeply analyzed. The module, also, presents the importance of customer relationship management and supply chain management systems in online purchasing and emphasizes the importance of B2B e-commerce in current enterprising world. Last but not least, topics such as m-commerce, social commerce and e-commerce payment systems are discussed.
This module will enable the student to acquire the knowledge and develop the skills they need in order to be able to make front-end websites from scratch. They will learn to use contemporary frameworks (such as HTML5, CSS3, JavaScript, React and Angular) in building modern, high-quality, aesthetically pleasing, and fully functional websites.
This module provides an introduction to the underlying concepts underpinning the theory and practice of game development, design and production. Specifically, this module will provide an overview of the design of videogames, how games are produced, languages and architectures involved in game design, important theoretical issues in game development like graphics, physics and 3D modelling and animation. It will also tie up with issues discussed in Artificial Intelligence modules.
This module introduces the field of information security as an important area of advanced computer science and provides a broad overview of information security. The course will provide a solid theoretical foundation, as well as real-world examples, for understanding computer security. Fundamental theoretical results, foundational models, and salient examples will be covered. Security in computer data, operating systems, and networks will be covered, with emphasis on applied cryptography and program security. Students can expect to leave the class with an understanding of the theoretical underpinnings for information and computer security, an appreciation of the strengths, weaknesses, and limitations of the major theories, and an understanding of the application of computer security theory to real-world systems. Students will also gain experience and insight into the application of theory to practical systems.
Innovation is both a survival and a growth imperative. It depends on a complex set of variables reflecting individual, group, organizational, and contextual factors. Although Innovation plays a very important role to both established organizations as well as to start-up organizations, even established organizations often lose their edge, finding their very existence to be threatened by their inability to generate and sustain innovation.
Creativity, innovation and entrepreneurial skills are considered extremely important in the modern business environment since they can lead to new products/services which are the lifeblood of successful organizations. The IT sector offers a fertile environment for entrepreneurial endeavours capitalizing on the innovative features and the rapid technological developments in the global economy. The focus of this module is to build management, creativity, innovation and entrepreneurial skills among the computer science students, and offer them their first experience in the new product development process. It will draw on various theoretical foundations and business cases to develop an understanding of the factors that lead to successful innovation. It is through this knowledge, entrepreneurs can recognize opportunities, acquiring and mobilising the physical resources, building financially sustainable and scalable business models that create value for the market and society.
In the emerging Digital Economy, information is a vital organisational resource that needs to be managed like other important business assets. Powerful technologies allow vast amounts of data to be stored, organised and analysed in order to provide accurate, consistent and complete information which can be used to develop new businesses, achieve operational excellence and guide decision making. This module examines the managerial and organisational requirements, as well as, the technologies and applications for managing data and information. It addresses the opportunities and the competitive advantage of information technology utilisation to support the organisational processes and provides insight in the decision making process.
In a rapidly changing world where the trend is that almost every aspect of our lives becomes infused with smart/intelligent products and services, innovation is a goal in itself. This module offers an overview of various scientific fields and knowledge technologies (a lot of them belonging to or intersecting with the wider artificial intelligence area), together with a series of examples and case studies, to clearly demonstrate their applicability and potential for innovation.
Machine Learning (ML) is the part of Artificial Intelligence (AI) that studies how computers build experience and autonomously learn from data. The module will follow the standard machine learning taxonomy for organising problems and applying solution techniques, and will provide a thorough grounding in the theory and application of machine learning.
The principles of designing and implementing applications for mobile devices will be provided, taking into consideration resources constraints and special human-computer-interaction issues, while taking a special focus on how they interact with the various mobile networks. Students are introduced to the programming environment for application development using the Android operating system and have a hands-on approach to programming using appropriate programming languages.
Many of the successful algorithms we use today for AI and optimisation are inspired by nature. This module explores the algorithms that were inspired by nature and provides a solid foundation for the broader field of AI-inspired computing, by investigating intelligent agents, evolutionary computing, and artificial life. All these concepts are not only discussed in theory but are also implemented as software solutions.
The advancements of social media and social networking websites are revolutionising and facilitating the way people communicate, interact, generate and share information. Drawing upon technological, social, cultural, psychological and organisational perspectives, this module presents underlying concepts and critical issues of social media and social networks and examines contemporary and emerging platforms, applications and technologies that enable and facilitate social communication.




