Advanced Programming and Algorithms

You are here

Credits
6
Types
Compulsory
Requirements
This subject has not requirements, but it has got previous capacities
Department
CS
The foundations of computing and techniques for the efficient design of algorithms are studied. Basic algorithmic techniques and their analysis are reviewed, and additional algorithm design techniques are explained. Next, the limits of computation are studied, as a result of the study of formal calculation models,
and an introduction to computational complexity is given.

Teachers

Person in charge

  • Jose Luis Balcázar Navarro ( )

Others

  • Jordi Delgado Pin ( )

Weekly hours

Theory
2
Problems
0
Laboratory
2
Guided learning
0
Autonomous learning
6

Competences

Transversal Competences

Transversals

  • CT4 [Avaluable] - Teamwork. Be able to work as a member of an interdisciplinary team, either as a member or conducting management tasks, with the aim of contributing to develop projects with pragmatism and a sense of responsibility, taking commitments taking into account available resources.
  • CT6 [Avaluable] - Autonomous Learning. Detect deficiencies in one's own knowledge and overcome them through critical reflection and the choice of the best action to extend this knowledge.

Basic

  • CB1 - That students have demonstrated to possess and understand knowledge in an area of ??study that starts from the base of general secondary education, and is usually found at a level that, although supported by advanced textbooks, also includes some aspects that imply Knowledge from the vanguard of their field of study.
  • CB2 - That the students know how to apply their knowledge to their work or vocation in a professional way and possess the skills that are usually demonstrated through the elaboration and defense of arguments and problem solving within their area of ??study.

Technical Competences

Especifics

  • CE02 - To master the basic concepts of discrete mathematics, logic, algorithmic and computational complexity, and its application to the automatic processing of information through computer systems . To be able to apply all these for solving problems.
  • CE03 - To identify and apply the basic algorithmic procedures of computer technologies to design solutions to problems by analyzing the suitability and complexity of the proposed algorithms.
  • CE04 - To design and use efficiently the most appropriate data types and structures to solve a problem.
  • CE10 - To analyze, design, build and maintain applications in a robust, secure and efficient way, choosing the most appropriate paradigm and programming languages.
  • CE12 - To master the fundamental principles and models of computing and to know how to apply them in order to interpret, select, assess, model, and create new concepts, theories, uses and technological developments related to artificial intelligence.
  • CE13 - To evaluate the computational complexity of a problem, identify algorithmic strategies that can lead to its resolution and recommend, develop and implement the one that guarantees the best performance in accordance with the established requirements.

Generic Technical Competences

Generic

  • CG2 - To use the fundamental knowledge and solid work methodologies acquired during the studies to adapt to the new technological scenarios of the future.
  • CG4 - Reasoning, analyzing reality and designing algorithms and formulations that model it. To identify problems and construct valid algorithmic or mathematical solutions, eventually new, integrating the necessary multidisciplinary knowledge, evaluating different alternatives with a critical spirit, justifying the decisions taken, interpreting and synthesizing the results in the context of the application domain and establishing methodological generalizations based on specific applications.
  • CG8 - Perform an ethical exercise of the profession in all its facets, applying ethical criteria in the design of systems, algorithms, experiments, use of data, in accordance with the ethical systems recommended by national and international organizations, with special emphasis on security, robustness , privacy, transparency, traceability, prevention of bias (race, gender, religion, territory, etc.) and respect for human rights.

Objectives

  1. Learning to analyze algorithms and learning about asymptotic notations.
    Related competences: CG2, CG4, CE02, CE03, CE12,
  2. -
    Related competences: CG4, CG8, CT4, CT6, CB2, CE02, CE03, CE12, CE13,
  3. -
    Related competences: CG4, CT6, CB2, CE02, CE03, CE04, CE10, CE13,
  4. -
    Related competences: CG4, CT4, CB1, CB2, CE02, CE13,

Contents

  1. -
    -
  2. -
    -
  3. -
    -
  4. -
    -

Activities

Activity Evaluation act


-

-
Objectives: 1 3
Contents:
Theory
2h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
4h

-

-
Objectives: 3
Contents:
Theory
2h
Problems
0h
Laboratory
2h
Guided learning
0h
Autonomous learning
8h

-

-
Objectives: 3
Contents:
Theory
2h
Problems
0h
Laboratory
4h
Guided learning
0h
Autonomous learning
8h

-

-
Objectives: 4
Contents:
Theory
2h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
6h

-

-
Objectives: 4
Contents:
Theory
2h
Problems
0h
Laboratory
4h
Guided learning
0h
Autonomous learning
8h

-

-
Objectives: 1 3 4
Week: 8
Type: theory exam
Theory
2h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
12h

-

-
Objectives: 4
Contents:
Theory
2h
Problems
0h
Laboratory
4h
Guided learning
0h
Autonomous learning
12h

-

-
Objectives: 4
Contents:
Theory
5h
Problems
0h
Laboratory
4h
Guided learning
0h
Autonomous learning
10h

-

-
Objectives: 2 4
Contents:
Theory
5h
Problems
0h
Laboratory
8h
Guided learning
0h
Autonomous learning
10h

-

-
Objectives: 2 4
Contents:
Theory
6h
Problems
0h
Laboratory
4h
Guided learning
0h
Autonomous learning
12h

Teaching methodology

-

Evaluation methodology

The assessment of part of the Algorithmic section of the course (beginning of the course) will require the development of a practical work of a modest size that will be presented at the beginning of the Dynamic Programming part and will be evaluated on its completion and delivery (grade P).

In addition, there will be the grade for the partial (E) and the final exam (grade F). The course grade will be obtained using the following criterion:

max(F*0.8, (E*0.3 + F*0.5)) + P*0.2

Reassessment
Only those who have previously taken the final exam and failed it can take the reassessment exam.

Bibliography

Basic:

Complementary:

Web links

Previous capacities

-