Crédito CC0:domínio público
Uma nova melhoria em uma técnica de programação chamada 'aterramento preguiçoso' poderia resolver questões difíceis e complexas na logística de frete, roteamento e redes de energia reduzindo drasticamente os tempos de computação.
Uma nova abordagem para 'aterramento preguiçoso' é definida para tornar uma solução viável e atraente para muitos campos da indústria e grandes multinacionais que lidam com sistemas complexos. Antonius Weinzierl da Aalto University e Bart Bogaerts da KU Leuven acabaram de apresentar seu artigo em uma das mais renomadas conferências científicas sobre inteligência artificial, JCAI-ECAI-18 em Estocolmo.
Para tarefas com centenas de parâmetros e milhares de combinações possíveis, as soluções há muito exigem tempo e esforço. Por exemplo, quando o motor de um trem de carga quebra, o operador do trem fica com o desafio de encontrar um motor de substituição que possa puxar o peso do trem e seja compatível com todos os tipos de requisitos, como o sistema de sinalização da pista, malha energética, e bitola. Talvez o operador tenha um motor adequado disponível, mas a solução só pode ficar clara depois de embaralhar vários motores. Em mãos humanas, esse processo pode levar horas.
"Encontrar rapidamente um substituto economiza recursos em toda a linha, porque atrasos maiores incorrem em penalidades e podem até mesmo interromper os negócios, "diz o pesquisador de pós-doutorado Weinzierl.
No entanto, mesmo os métodos computacionais de última geração para resolver esses tipos de problemas encontraram seus limites na indústria. Os métodos atuais de busca de soluções que são absolutamente corretas e viáveis requerem mais memória do que está disponível nos computadores de hoje. Um método recente para 'aterrar' a computação de uma forma que apenas as tarefas mais urgentes e relevantes sejam atendidas - daí a preguiça - libera memória, mas pode ficar preso na busca por uma solução e de repente exigir uma quantidade de tempo irracional.
Para evitar esses congestionamentos e resolver o problema raiz do consumo de memória, os pesquisadores sugeriram uma nova maneira de apontar o pequeno subconjunto de decisões que realmente contribuem para uma curva errada em algum ponto da linha - e ignorar o resto.
"É semelhante a encontrar o caminho para sair de um labirinto, com ou sem um mapa. Sem um, você tem que explorar cada caminho e canto para encontrar a saída. Os programas atuais resolvem tarefas complexas como esta, primeiro desenhando um mapa completo do labirinto e só então começando a trabalhar para sair, "explica Weinzierl.
Mas desenhar o mapa inteiro ocupa muita memória. O aterramento preguiçoso permitiria que você navegasse sem um mapa, mas quando você eventualmente acaba perdido, ter a parte certa do mapa seria útil para não ficar preso.
"Nossa abordagem essencialmente desenha uma parte local do mapa sob demanda e permite que você localize exatamente onde estava a curva errada inicial e como voltar ao caminho certo, "Weinzierl diz.