Novos avanços abrem as portas para se poder a máxima eficiência teórica na multiplicação de matrizes.
A multiplicação de matrizes é algo que grande parte das pessoas pode nunca ter ouvido falar, mas que está escondido em praticamente tudo o que temos à nossa volta, desde a geração de imagens 3D nos jogos de computador, ao processamento dos sinais de telemóvel, da internet por fibra ou cabo, ou na compressão das imagens que vemos na TV.
Durante muito tempo, o processo de multiplicar duas matrizes de 2x2 implicava fazer 8 multiplicações. Em 1969, o matemático Volker Strassen desenvolveu um método que necessitava apenas de 7 multiplicações e 18 somas. Com as multiplicações a serem uma operação bastante mais complexa que a soma ou subtração, trata-se de uma melhoria significativa em termos de poupança de recursos (um GPU pode realizar biliões destas operações por segundo, qualquer simplificação é multiplicada por esses mesmos biliões). E, desde então que não se tem parado para tentar melhorar ainda mais o processo.
O objectivo máximo é atingir um factor omega de 2, que significaria uma multiplicação de matrizes teoricamente perfeita. Nos últimos anos, investigadores conseguiram criar um processo que melhora o anterior, passando de 2.3728596 para 2.371866. É uma melhoria de apenas 0.001 que pode parecer imperceptível e inconsequente, mas que está ordens de magnitude à frente da anterior melhoria que apenas tinha conseguido reduzir esse valor em 0.00001. E agora, este novo avanço reduz esse valor para os 2.371552, mas com a diferença de que apresenta uma nova abordagem do problema que faz antever que em breve se possam conseguir novas melhorias.
E ainda há quem diga que a matemática é "chata". :)
2024/03/10
Subscrever:
Enviar feedback (Atom)
Sem comentários:
Enviar um comentário (problemas a comentar?)