How to use geometry to optimise the Hartree-Fock wave function

Favoritar este trabalho
Como citar esse trabalho?
Detalhes
  • Tipo de apresentação: Apresentação de Pôster / Poster Communications
  • Eixo temático: Desenvolvimento e/ou Implementação de Método/Teoria
  • Palavras chaves: Hartree-Fock; Optimisation; Grassmannian;
  • 1 Universidade Federal do ABC

How to use geometry to optimise the Hartree-Fock wave function

Caio Oliveira da Silva

Universidade Federal do ABC

Resumo

In the present work we show how to use tools from a field called Differential Geometry to optimise the Hartree-Fock wave function. Essentially, we encode the Slater determinants as elements of a set called Grassmannian and we use a generalized version of the Newton Method to optimise the expected value of the energy. So far, we computed almost all of the mathematical objects needed to the algorithm, but we faced a problem concerning the non-orthogonality of the basis set. This point of view to the Hartree-Fock method is not well explored in the literature and we hope to achieve good convergence to the Hartree-Fock wave function using it.

Questões (9 tópicos)

Compartilhe suas ideias ou dúvidas com os autores!

Sabia que o maior estímulo no desenvolvimento científico e cultural é a curiosidade? Deixe seus questionamentos ou sugestões para o autor!

Faça login para interagir

Tem uma dúvida ou sugestão? Compartilhe seu feedback com os autores!

Autor

Caio Oliveira da Silva

Respondendo a primeira pergunta:

Então, a comparação que eu fiz até agora é um pouco injusta com o Método de Newton nesse aspecto porque eu implementei a versão para o caso não restrito e o SCF que meu orientador implementou é para o caso restrito. Mas, em termos de demanda computacional, o Método de Newton sempre irá perder porque é um método de segunda ordem enquanto que o SCF não é. O SCF é um método cúbico no tamanho da base (na linguagem de complexidade computacional, é O(n^3), sendo n o tamanho da base), enquanto que o nosso, por enquanto, tem complexidade (n^4) * (N^2) * L, sendo n o tamanho da base, N o número de orbitais ocupados e L é um parâmetro que vem do cálculo das integrais de dois elétrons que estamos usando. Mas eu estou trabalhando na otimização do código no momento e acredito que será possível reduzir a complexidade para (n^3) * (N^2) * L ou, com MUITA sorte, para (n^3) * N * L, o que obviamente é bem mais custoso que o SCF, mas que, com sorte, irá convergir em casos em que o SCF/DIIS não converge. Em termos de memória, eu acredito que o SCF não restrito gaste 2*(n^2) de memória, que é usado para armazenar a matriz de Fock, enquanto que o Método de Newton gasta (n*N)^2 de memória para guardar a hessiana.

Respondendo a segunda pergunta:

Nosso método apresenta algumas vantagens (já falo delas), mas, por enquanto, em termos de tempo, compensa bem mais rodar o SCF com DIIS até o final do que trocar para o Método de Newton no meio do caminho, que leva muito tempo para realizar cada iteração. Após a otimização do código, esperamos que essa troca acabe compensando e reduzindo o tempo total (pelo menos para moléculas maiores) mesmo que cada iteração do Método de Newton demore mais.

Sobre as vantagens: por enquanto elas são todas teóricas porque o código realmente precisa ser otimizado para testarmos o que queremos testar na prática e ver se obtemos vantagens práticas ao invés de apenas teóricas. Mas a nossa abordagem teórica é mais produtiva e versátil que a abordagem teórica por trás do SCF, eu diria. Então isso abre muitos caminhos possíveis para futuros estudos. Exemplos: *parece* ser relativamente simples mudar a parametrização do conjunto dos determinantes de Slater e readaptar nossas contas/código para essas novas parametrizações. A vantagem é que existem pelo menos quatro parametrizações distintas e, pelo que eu e meu orientador encontramos na literatura, apenas duas delas foram exploradas até hoje. Então esse é um campo possível de exploração porque, dependendo da parametrização, a complexidade do método pode mudar drasticamente por necessitar de menos parâmetros. Outra vantagem teórica é que *parece* ser relativamente simples adaptar as nossas equações para abarcar DFT, por exemplo. Ou seja, fazer um Método de Newton para DFT. Outra vantagem teórica é que o formalismo usado por trás do nosso trabalho (geometria diferencial) na verdade pode ser adaptado pra, potencialmente, explorar muitas outras coisas interessantes de química (basta ver as apresentações do meu orientador (prof. Yuri Alexandre Aoto) e do seu aluno (Guilherme Barbosa)). Acredito que essas são algumas das vantagens teóricas por trás do nosso trabalho, e a palavra parece acima está entre asterisco pra enfatizar que, na prática, em termos de implementação computacional, essas coisas acabam sendo mais difíceis do que se imagina de início e essas extensões do nosso trabalho citadas talvez tomariam o tempo de um doutorado inteiro para serem feitas. Existem potenciais vantagens práticas também que ainda não testamos, mas que acreditamos serem válidas por conta do artigo que citei na outra resposta. Uma delas é que literalmente de graça nós ganhamos um outro método de otimização famoso chamado steepest descent ou gradient descent. Esse é um método de primeira ordem, ie, precisamos apenas do gradiente da energia, e é beeeem menos custoso do ponto de vista computacional (esse sim compete com o SCF com DIIS), mas por enquanto ele não apresentou uma boa convergência. No entanto, eu implementei apenas uma versão bem ingênua desse método e eu sei que existem diversas técnicas a princípio não muito difíceis de usar que teoricamente melhoram bastante a convergência dele. Eu vou tentar implementá-las ainda no meu mestrado pra ver o que acontece. Isso vai bastante na linha do que foi feito no artigo que citei na outra resposta e nesse artigo eles dizem que conseguem competir com o SCF e até obter convergência em casos em que o SCF/DIIS não obtém, então existe potencial.

Itamar Borges

Obrigado pela super resposta, muito boa. Belo trabalho, sucesso !

Autor

Caio Oliveira da Silva

Olá, Itamar. Então, eu e meu orientador acabamos descobrindo no meio do mestrado que existe, sim, alguém que já tinha feito algo parecido (esse artigo aqui: https://www.tandfonline.com/doi/abs/10.1080/00268970110103642). No artigo eles usam uma outra parametrização pro conjunto dos determinantes de Slater, mas a ideia global, do ponto de vista matemático, digamos, é essencialmente a mesma. Inclusive, pelo que entendi, eles até usam o método em um programa chamado Q-Chem (https://manual.q-chem.com/5.2/Ch4.S5.SS4.html), o que, eu diria, mostra que o método de fato apresenta bons resultados práticos. No artigo eles comentam que conseguiram obter convergência em casos em que o SCF não obtém, por exemplo, que é algo que eu também quero verificar em breve se acontece para a nossa parametrização.

Autor

Caio Oliveira da Silva

I am note sure I made a joke about DIIS. Maybe it was unintentional or the translation was not 100%. In which part it was? Now I'm curious. About the non-orthogonality, I think it's simpler than that, it's just the fact that the orbitals that compose basis sets like STO-3G, cc-pVDZ are not orthonormal, which, in my case, means they overlap (ie, <psi|phi> is not 0). But I'd like to investigate the relation of HF with DFT in the future, so, if I find something along those lines, I send you an email. Thanks.

Andrii Shyichuk

I thought you've called DIIS a shaman technique at some point :)

Autor

Caio Oliveira da Silva

  • Respondendo a primeira pergunta: Sim, calculo o gradiente e a hessiana exatamente a partir desses coeficientes. No entanto, uma vantagem do nosso trabalho é que essa "parametrização", digamos, dos determinantes de Slater, pode ser trocada por outras parametrizações e tudo funciona do mesmo jeito (desde que calculemos a hessiana e o gradiente nessa nova parametrização, claro). Uma parametrização bastante utilizada envolve exponencial de matrizes e, até onde eu entendo (não estudei muito essa parametrização, infelizmente), ela possui menos variáveis, o que ainda é incerto para nós (eu e meu orientador) se esse fato mais ajuda do que atrapalha na convergência final. (Do ponto de vista computacional é melhor porque envolve matrizes menores, digamos, mas do ponto de vista de convergência ainda não sabemos)
  • Respondendo a segunda pergunta: Então, essa é uma confusão um pouco técnica e que era inviável de explicar no vídeo por falta de tempo, mas a questão chave está na sua palavra "procura". Nós também procuramos um determinante de Slater que anula o gradiente, igual no HF tradicional, usando SCF. No entanto, a diferença de um método pro outro é que no SCF eles traduzem essa procura por diagonalizar a matriz de Fock enquanto que no nosso caso essa procura é feita usando geodésicas. O objetivo final é o mesmo, ie, encontrar o determinante de Slater que zera a derivada da energia. Como esse objetivo final é atingido que muda de um método para o outro. A vantagem, pelo menos na teoria, porque na prática isso acaba não acontecendo, é que seguir pro próximo ponto usando uma geodésica é "sempre" garantido que a energia será cada vez menor, enquanto que no SCF, até onde eu sei, essa garantia não existe. Na verdade existem demonstrações matemáticas que dizem quando que essa convergência usando as geodésicas ocorrem, mas as que eu encontrei na literatura infelizmente não abarcam o caso que estamos trabalhando, ie, a energia.
Autor

Caio Oliveira da Silva

Pra ter 100% de certeza, pode ser feito o teste da segunda derivada (https://en.wikipedia.org/wiki/Second_partial_derivative_test), por exemplo, que seria verificar se o determinante da hessiana e uma das derivadas parciais de segunda ordem são maiores do que 0, o que é um teste até simples de fazer dado que no nosso algoritmo por enquanto estamos calculando a hessiana completa.

Autor

Caio Oliveira da Silva

Agradeço os elogios e fico feliz que tenha gostado, Carlos. A resposta sincera é que eu não tenho certeza, mas acredito que poderia. Não sei se pro Método de Davidson em si funcionaria (pelo menos eu não vejo tão claramente como adaptar), mas talvez para algumas sub-etapas usadas ao longo do método (obter o par de autovalor/autovetor, encontrar uma direção "melhor" para realizar a iteração, coisas do tipo) seja viável. Na verdade um dos principais e primeiros artigos que trata do Método de Newton no conjunto dos determinantes de Slater (que na matemática chamamos de grassmannian) envolvia justamente problemas de autovalor e encontrar subespaços com certas restrições, como é mais ou menos o caso do Método de Davidson, então essa pode de fato ser uma relação frutífera a ser investigada. Se eu encontrar algo, te aviso por email. Agradeço novamente os elogios. :D

Autor

Caio Oliveira da Silva

Olá, Marco, muito obrigado por ter achado interessante o trabalho. Sobre a não convergência: então, o SCF que usamos é uma implementação bem ingênua, digamos. É praticamente o que está no capítulo 3 do livro Modern Quantum Chemistry, do Szabo e Ostlund. Então talvez o SCF convirja em outros programas (Gaussian, Orca, Molpro etc.) por eles estarem considerando alguma simetria e mais provavelmente porque eles começam com um chute inicial mais próximo da função de onda HF do que o que começamos no nosso programa (nosso chute inicial vem direto da diagonalização do operador de um elétron, que também é um chute inicial bem ingênuo e bem distante, pra ser sincero). Sobre métodos de otimização global, eu não tenho muita certeza do que seriam tais métodos, então gostaria de alguma referência pra eu tentar relacionar melhor com meu trabalho. E sobre métodos de geometria diferencial para funções de onda simétricas, acredito que seja possível, sim, mas 100% de certeza eu não tenho. Eu diria que é possível porque eu sei que existe um Método Hartree-Fock para bósons, ie, levando em consideração funções de onda simétricas, e a parte teórica que eu usei a princípio admite a troca de funções de onda antissimétricas por simétricas. Em termos matemáticos, seria trabalhar com permanentes (https://en.wikipedia.org/wiki/Permanent_(mathematics)) ao invés de determinantes. Mas isso é na teoria, não cheguei a explorar essa parte simétrica no meu mestrado.

Marco Antonio Chaer Nascimento

Caio,

 

Obrigado pela resposta. Eu estaria interessado em otimizar funções de onda antissimétricas e que são bases para o grupo simétrico. Se você me der seu e-mail eu posso lhe enviar o trabalho sobre otimização global e um outro que talvez lhe desperte interesse nas funções antissimétricas que são bases para o Sn

Autor

Caio Oliveira da Silva

Meu email é: [email protected]. Pode mandar, ficarei feliz em dar uma olhada melhor no assunto.

Autor

Caio Oliveira da Silva

Olá, Breno, muito obrigado pelos elogios. A princípio poderia, sim. Recentemente eu encontrei uma expressão mais explícita para a hessiana nas contas que eu fiz e, pelo que me parece, certamente ela poderia ser trocada por uma hessiana aproximada como é feito no L-BFGS e outros métodos quasi-Newton. Eu só não digo com 100% de certeza que poderia, pois preciso investigar ainda se tal aproximação violaria de alguma forma a geometria do conjunto dos determinantes de Slater e se ela deveria ser adaptada ou se eu simplesmente posso apenas trocar as matrizes e pronto. Muitas dessas expressões aproximadas acabam usando, até mesmo sem perceber, o fato de que o espaço geométrico ambiente é linear, digamos, mas no caso dos determinantes de Slater isso não acontece, infelizmente. Mas eu acredito que é possível, sim, até porque o artigo que eu citei na outra resposta diz justamente que eles usaram a aproximação BFGS (embora eles também digam que, mesmo assim, não tornou o método competitivo em termos de demanda computacional com o SCF com DIIS). E isso com certeza ajudaria muito em termos de demanda, visto que a hessiana é, disparada, a etapa mais custosa do Método de Newton.

Autor

Caio Oliveira da Silva

Muito obrigado pelos elogios, Lucas. Pois é, eu não sou especialista, mas infelizmente no mundo dos métodos aproximados nada é perfeito, e isso definitivamente não acontece apenas na química. Mas aos poucos vamos melhorando o que temos e tentando dar embasamento teórico mais robusto e assim o mundo segue. Então, essa é uma boa pergunta, mas infelizmente não vou conseguir te fornecer uma resposta 100% nesse momento, pois é uma análise que eu ainda não fiz e que eu precisaria investigar melhor com meu orientador, que entende beeem mais do que eu da "química" por trás do método (eu sou só um matemático aplicado interessado no mundo quântico, rs). Mas, com a parametrização que estamos usando (ie, otimizando os coeficientes que aparecem na combinação linear quando expandimos os orbitais em alguma base), me parece que nenhum bloco permanece imutável. No entanto, vejo duas ramificações possíveis para explorar tais propriedades: trocar a parametrização do conjunto dos determinantes de Slater e levar em consideração a simetria da base. No primeiro caso, isso certamente pode ser explorado bem mais profundamente (no capítulo 10 do livro Molecular Electronic-Structure Theory, do Helgaker et al., eles exploram uma outra parametrização e o algoritmo que eles desenvolvem de fato tem menos parâmetros a serem otimizados e eles explicam direitinho quais blocos são ignorados (essencialmente os blocos que relacionam orbitais virtuais-ocupados)). Eu conheço mais duas parametrizações do conjunto dos determinantes de Slater, e talvez uma análise parecida com a feita no Helgaker possa ser feita também nesses casos. Certamente é algo interessante a ser investigado. No segundo caso, ie, levar em consideração as simetrias, nós ainda não fizemos essencialmente porque o código que eu escrevi faz parte de um código maior que vem sido desenvolvido pelo meu orientador praticamente sozinho há alguns anos, e ainda não exploramos as simetrias mais comuns que aparecem. Mas, pelas discussões que já tive com meu orientador, isso provavelmente diminuiria bastante o custo computacional do Método de Newton, ainda mais se conseguíssemos "acoplar" tais simetrias diretamente nas contas que fizemos para o Método em si. Outra coisa que pretendo explorar ainda no meu mestrado, por exemplo, é a versão restrita do Método de Newton. O caso que implementei é o caso não restrito, e certamente já seria um alívio computacional enorme adaptar e implementar as contas para o caso restrito. Abraços, Lucas.