O Q-learning (aprendizado Q em português) evoluiu consideravelmente desde os primeiros experimentos comportamentais como o condicionamento clássico de Pavlov, até se tornar uma das técnicas mais importantes no âmbito do Machine Learning (aprendizado de máquina). A seguir, exploraremos como foi seu desenvolvimento e sua aplicação na neurorreabilitação e estimulação cognitiva.
Os experimentos de Pavlov
Ivan Pavlov, um fisiologista russo do final do século XIX, é reconhecido por estabelecer as bases da psicologia comportamental através de seus experimentos sobre o condicionamento clássico. Nesses experimentos, Pavlov demonstrou que os cães podiam aprender a associar um estímulo neutro, como o som de um sino, a um estímulo incondicionado, como a comida, provocando assim uma resposta incondicionada: a salivação.

Esse experimento foi fundamental para demonstrar que o comportamento pode ser adquirido por associação, um conceito crucial que posteriormente influenciou o desenvolvimento das teorias de aprendizado por reforço.
As teorias de aprendizado por reforço
Essas teorias focam em como os seres humanos e os animais aprendem comportamentos a partir das consequências de suas ações, o que foi essencial para o desenho de algoritmos como o Q-learning.
Há alguns conceitos-chave com os quais devemos nos familiarizar antes de continuar:
- Agente: encarregado de realizar a ação.
- Ambiente: meio onde o agente se move e interage.
- Estado: situação atual do ambiente.
- Ação: possíveis decisões tomadas pelo agente.
- Recompensa: prêmios que são concedidos ao agente.
Nesse tipo de aprendizado, um agente toma ou realiza ações no ambiente, recebe informação em forma de recompensa/penalização e a utiliza para ajustar seu comportamento ao longo do tempo.

Um experimento clássico do aprendizado por reforço é o experimento da caixa de Skinner, realizado pelo psicólogo norte-americano Burrhus Frederic Skinner em 1938. Neste experimento, Skinner demonstrou que ratos podiam aprender a pressionar uma alavanca para obter comida, usando o reforço positivo como meio para modelar o comportamento.
O experimento consiste em colocar um rato em uma caixa com uma alavanca que ele pode pressionar, um distribuidor de comida, e às vezes, uma luz e um alto-falante.
Cada vez que o rato pressiona a alavanca, um grão de comida é liberado no distribuidor. A comida atua como reforço positivo, uma recompensa por pressionar a alavanca. Com o tempo, o rato começará a pressionar a alavanca com mais frequência, demonstrando que aprendeu o comportamento através do reforço.

Esse tipo de aprendizado serviu como base para algoritmos de aprendizado de máquina, como o Q-learning, que permite às máquinas aprender comportamentos ótimos de maneira autônoma mediante o método de tentativa e erro.
O que é o Q-learning?
O Q-learning foi introduzido por Christopher Watkins em 1989 como um algoritmo de aprendizado por reforço. Esse algoritmo permite a um agente aprender o valor das ações em um estado determinado, atualizando continuamente seu conhecimento através da experiência, assim como o rato da caixa de Skinner.
Diferentemente dos experimentos de Pavlov, nos quais o aprendizado se baseava em associações simples, o Q-learning utiliza um método mais complexo de tentativa e erro. O agente explora diversas ações e atualiza uma tabela Q que armazena os valores Q, os quais representam as recompensas futuras esperadas por tomar a melhor ação em um estado específico.
O Q-learning é aplicado em diversos âmbitos, por exemplo em sistemas de recomendação (como os utilizados pela Netflix ou Spotify), em veículos autônomos (como drones ou robôs) e na otimização de recursos. Agora exploraremos como essa tecnologia pode ser aplicada na neurorreabilitação.
Q-learning e NeuronUP
Uma das vantagens do NeuronUP, é a capacidade de personalizar as atividades conforme as necessidades específicas de cada usuário. No entanto, personalizar cada atividade pode ser tedioso devido ao elevado número de parâmetros a ajustar.
O Q-learning permite automatizar esse processo, ajustando os parâmetros com base no desempenho do usuário nas distintas atividades. Isso garante que os exercícios sejam exigentes mas alcançáveis, melhorando a eficácia e a motivação durante a reabilitação.
Como funciona?
Nesse contexto, o agente, que poderia ser comparado a um usuário interagindo com uma atividade, aprende a tomar decisões ótimas em diferentes situações para completar corretamente a atividade.
O Q-learning permite ao agente experimentar diversas ações interagindo com seu ambiente, recebendo recompensas ou penalizações, e atualizando uma tabela Q que armazena esses valores Q. Esses valores representam as recompensas futuras esperadas por tomar a melhor ação em um estado específico.
A regra de atualização do Q-learning é a seguinte:
[Q(s,a) leftarrow Q(s,a) + alphabigl(r + gamma cdot max_{a’}bigl(Q(s’,a’)bigr) – Q(s,a)bigr)]Onde:
𝛂 – é a taxa de aprendizado.
r – é a recompensa recebida após executar a ação a a partir do estado s.
𝛄 – é o fator de desconto, que representa a importância das recompensas futuras.
s’ – é o estado seguinte.
(max_{a’}bigl(Q(s’,a’)bigr)) – é o valor Q máximo para o estado seguinte s’.

Inscreva-se
na nossa
Newsletter
Exemplo de aplicação em uma atividade do NeuronUP
Vamos tomar a atividade do NeuronUP chamada “Imagens misturadas”, que trabalha habilidades como planejamento, praxias visoconstructivas e percepção espacial. Nessa atividade, o objetivo é resolver um quebra-cabeça que foi embaralhado e cortado em peças.

As variables que definem a dificuldade desta atividade são o tamanho da matriz (o número de linhas e de colunas) assim como o grau de desordem das peças (baixo, médio, alto ou muito alto).
Para treinar o agente a resolver o quebra-cabeça, foi criada uma matriz de recompensas baseada no número mínimo de movimentos necessários para resolvê-lo, definido pela seguinte fórmula:
[mathrm{Min_Attempts} ;=;leftlceil frac{mathrm{factor} * mathrm{rows} * mathrm{columns}}{5}rightrceil,quad mathrm{factor}in{1,3,5,7}]A variável factor depende do grau de desordem. Uma vez criada a matriz, foi aplicado um algoritmo de Q-learning para treinar o agente a resolver o quebra-cabeça automaticamente.
Esta integração inclui:
- Recuperação do valor Q: A função recupera o valor Q para um par estado-ação da tabela Q. Se o par estado-ação não foi treinado antes, retorna 0. Esta função busca a recompensa esperada ao tomar uma ação específica em um estado específico.
- Atualização do valor Q: A função atualiza o valor Q para um par estado-ação com base na recompensa recebida e no valor Q máximo do próximo estado. Esta função implementa a regra de atualização do Q-learning mencionada anteriormente.
- Decisão sobre a ação a tomar: A função decide que ação tomar em um estado dado, usando uma estratégia epsilon-greedy. Esta estratégia equilibra a exploração e a exploração:
- Exploração: Consiste em selecionar a melhor ação conhecida até o momento. Com uma probabilidade ε (taxa de exploração, um valor entre 0 e 1 que determina a probabilidade de explorar novas ações em vez de explorar as ações conhecidas), escolhe-se uma ação aleatória, permitindo ao agente descobrir ações potencialmente melhores.
- Exploração: Consiste em testar ações diferentes das melhores conhecidas para descobrir se podem oferecer recompensas melhores no futuro. Com uma probabilidade 1−ε, o agente seleciona a ação com o maior valor Q para o estado atual, utilizando seu conhecimento aprendido: a’ = argmaxaQ(s,a). Onde a’ é a ação que maximiza a função Q em um estado s dado. Isso significa que, dado um estado s, selecione a ação a que tem o maior valor Q.
Essas funções trabalham em conjunto para permitir que o algoritmo de Q-learning desenvolva uma estratégia ótima para resolver o quebra-cabeça.
Análise preliminar da execução do algoritmo
Aplicou-se o algoritmo a um quebra-cabeça de matriz 2×3 com um fator de dificuldade de 1 (baixo), correspondente a um número mínimo de tentativas igual a 2. O algoritmo foi executado no mesmo quebra-cabeça 20 vezes, aplicando a mesma configuração de embaralhamento em cada ocasião e atualizando a tabela Q após cada passo. Após 20 execuções, o quebra-cabeça foi embaralhado em uma configuração diferente e o processo se repetiu, resultando em um total de 2000 iterações. Os valores iniciais dos parâmetros foram:
- Recompensa por resolver o quebra-cabeça: 100 pontos
- Penalização por cada movimento: -1 ponto
Em cada passo, era aplicada uma recompensa ou penalização adicional baseada no número de peças corretas, permitindo ao agente compreender seu progresso em direção à solução do quebra-cabeça. Isso era calculado utilizando a fórmula:
[W times bigl(N_{mathrm{correct}}^i ;-; N_{mathrm{correct}}^{,i-1}bigr)]Onde:
- W é o fator de peso.
- (N_{mathrm{correct}}^{,i}) é o número de peças corretas após o movimento.
- (N_{mathrm{correct}}^{,i-1}) é o número de peças corretas antes do movimento.
O gráfico abaixo ilustra o número de movimentos necessários por iteração para que o modelo resolva um quebra-cabeça de tamanho 2×3. No início, o modelo requer um grande número de movimentos, o que reflete sua falta de conhecimento sobre como resolver o quebra-cabeça de maneira eficiente. No entanto, à medida que o algoritmo de Q-learning é treinado, observa-se uma tendência de queda no número de movimentos, o que sugere que o modelo está aprendendo a otimizar seu processo de resolução.

Essa tendência é um indício positivo do potencial do algoritmo para melhorar com o tempo. No entanto, devem ser consideradas várias limitações importantes:
- Tamanho específico do quebra-cabeça: O algoritmo demonstra eficácia principalmente em quebra-cabeças com um tamanho específico, como o de matriz 2×3. Ao alterar o tamanho ou a complexidade do quebra-cabeça, o desempenho do algoritmo pode diminuir significativamente.
- Tempo de cálculo: Quando o algoritmo é aplicado a configurações diferentes ou mais complexas, o tempo necessário para realizar os cálculos e resolver o quebra-cabeça aumenta consideravelmente. Isso limita sua aplicabilidade em situações que exigem respostas rápidas ou em quebra-cabeças com maior complexidade.
- Número de movimentos ainda alto: Apesar da melhoria observada, o número de movimentos necessários para resolver o quebra-cabeça continua relativamente alto, mesmo após múltiplas iterações. Nas últimas execuções, o modelo requer uma média de 8 a 10 movimentos, o que indica que ainda há margem para melhorar a eficiência do aprendizado.
Estas limitações destacam a necessidade de um refinamento adicional do algoritmo, seja ajustando os parâmetros de aprendizado, melhorando a estrutura do modelo ou incorporando técnicas complementares que permitam um aprendizado mais eficiente e adaptável a diferentes configurações de quebra-cabeça. Apesar dessas limitações, não devemos esquecer as vantagens que o Q-learning oferece na neurorreabilitação, entre elas:
- A personalização dinâmica das atividades: O Q-learning é capaz de ajustar automaticamente os parâmetros das atividades terapêuticas com base no desempenho individual do usuário. Isso significa que as atividades podem ser personalizadas em tempo real, garantindo que cada usuário trabalhe em um nível que seja desafiador, mas alcançável. Isso é especialmente útil na neurorreabilitação, onde as capacidades dos usuários podem variar consideravelmente e mudar ao longo do tempo.
- Um aumento da motivação e do comprometimento: À medida que as atividades se adaptam constantemente ao nível de habilidade do usuário, evita-se a frustração por tarefas demasiado difíceis ou o tédio por tarefas demasiado simples. Isso pode aumentar significativamente a motivação do usuário e seu comprometimento com o programa de reabilitação, o que é crucial para alcançar resultados bem-sucedidos.
- A otimização do processo de aprendizagem: Ao utilizar o Q-learning, o sistema pode aprender com as interações anteriores do usuário com as atividades, otimizando o processo de aprendizagem e reabilitação. Isso permite que os exercícios sejam mais eficazes, focando em áreas onde o usuário precisa de mais atenção e reduzindo o tempo necessário para alcançar os objetivos terapêuticos.
- Eficiência na tomada de decisões clínicas: Os profissionais podem se beneficiar do Q-learning ao obter recomendações baseadas em dados sobre como ajustar as terapias. Isso facilita a tomada de decisões clínicas mais informadas e precisas, o que por sua vez melhora a qualidade do atendimento fornecido ao usuário.
- Melhoria contínua: Ao longo do tempo, o sistema baseado em Q-learning pode melhorar seu desempenho mediante a acumulação de dados e a experiência do usuário. Isso significa que, quanto mais o sistema for usado, mais eficaz ele se torna na personalização e otimização dos exercícios, oferecendo assim uma vantagem a longo prazo no processo de neurorreabilitação.
Concluindo, o Q-learning evoluiu desde suas raízes na psicologia comportamental até se tornar uma ferramenta poderosa na inteligência artificial e na neurorreabilitação. Sua capacidade de adaptar atividades de forma autônoma o torna um recurso valioso para melhorar a eficácia das terapias de reabilitação, embora ainda existam desafios a superar para otimizar completamente sua aplicação.
Bibliografia
- Bermejo Fernández, E. (2017). Aplicación de algoritmos de aprendizaje por reforço em jogos.
- Giró Gràcia, X., & Sancho Gil, J. M. (2022). A Inteligência Artificial na educación: Big data, caixas-pretas y solucionismo tecnológico.
- Meyn, S. (2023). Stability of Q-learning through design and optimism. arXiv preprint arXiv:2307.02632.
- Morinigo, C., & Fenner, I. (2021). Teorias da aprendizagem. Minerva Magazine of Science, 9(2), 1-36.
- M.-V. Aponte, G. Levieux e S. Natkin. (2009). Measuring the level of difficulty in single player video games. Entertainment Computing.
- P. Jan L., H. Bruce D., P. Shashank, B. Corinne J., & M. Andrew P. (2019). The Effect of Adaptive Difficulty Adjustment on the Effectiveness of a Game to Develop Executive Function Skills for Learners of Different Ages. Cognitive Development, pp. 49, 56–67.
- R. Anna N., Z. Matei & G. Thomas L. Optimally Designing Games for Cognitive Science Research. Computer Science Division and Department of Psychology, University of California, Berkeley.
- Toledo Sánchez, M. (2024). Aplicações do aprendizado por reforço em videojogos.







Desconstruindo a Síndrome de Myhre
Deixe um comentário