PsicoTSI is a great tool that made sub-skills prediction available to everyone. With so many people using the tool, it is interesting to question how the tool works.

First of all, credit must go to Re4VeR of the spanish team LPC TeaM (teamid 121872) and the other managers who helped develop the tool back in 2005, qnd who made this tool a freeware.

This article aims at giving you a relatively precise idea of the algorithm and formula used within PSICOTSI.

And Part 2 reveals the formula.


PSICOTSI is a tool using Neural Networks (NN) to emulate the calculation of TSI for any field player. I am pretty sure I am not the only one user of PSICOTSI who has seen able to see its source code, as it was visible in the very early versions, however I have never seen anyone bragging about it. I believe the knowledge of how the tool works should be made public as there will be some bright and dedicated minds to use it to help everyone improve tools to play the game.

The rest of this article is relatively technical and aimed giving the explanation on the algorithm used in the tool. If you are not interested in those subjects, you might prefer not to read the rest :)

The heart of PSICOTSI:

The neural network used by PSICOTSI has as:
- Inputs: all skills (7, except set pieces) and form
- Output: TSI computed by the network

If you are not familiar with the implementation of neural networks, i would recommend to Google to find out more about it and for programmers i would recommend for example this interesting link.

When looking in details at the algorithm of PSICOTSI, it appears that it uses a neural network made of 8 hidden layers of 8 nodes. It uses a sigmoidal implementation with a hyperbolic tangent function to forward propagate values to the next layer of nodes, (link), which is quite usual for NN implementations. However, 8 layers of 8 nodes make it a relatively complex network.

On the contrary to what I would have guessed, the weights used by PSICOTSI are not the same depending on the main skill of the player. There is, however, certainly only one way of calculating TSI from the 8 input values (7 main skills and form). I would suppose that this situation (many different weight configurations) is due to the complexity (number of nodes and layers) of the network used, which permitted different ways of emulating the TSI formula.

The way forward:

- With that in mind, there is certainly a way to reduce the number of nodes used in PSICOTSI, however that would certainly not really help anything.
- I believe that releasing the full code and neural network weights of PSICOTSI could allow others to build up additional functionality and tools that I don’t even imagine, and extend the usage of this already very powerful tool.
- Finally, the code within PSICOTSI could be used to understand further how the real hattrick TSI formula is calculated , for example by changing, step by step, one input and seeing the impact on the resulting TSI.