Dos critérios que você especificou, acho que o projeto mais próximo que conheço seria a coleção de matrizes esparsas da Universidade da Flórida . As pessoas usam rotineiramente esse conjunto de dados para comparar os solucionadores de álgebra linear esparsos e é possível filtrar por aplicativo, número de não-zeros, dimensões da matriz e assim por diante com uma interface da web muito boa, interface do MATLAB ou GUI do Java. Eu já vi tabelas desses problemas listados em documentos, juntamente com comparações de tempo de execução do solucionador com 4 a 8 solucionadores de álgebra linear.
Concordo que seria útil compilar esses bancos de dados e, além disso, acho que a abordagem de coleta de matriz esparsa do UF para compilar os dados é excelente, e seria um ótimo começo para quem pensar em realizar essa idéia. A execução de todos os problemas, na prática, não parece ser uma grande dificuldade, desde que você possa ter acesso a todos os solucionadores; se você tiver acesso aos solucionadores e uma máquina de referência padrão confiável com todo o software necessário instalado, será uma questão de executar um script e coletar os dados. A dificuldade, em minha opinião, seria levar as pessoas a fornecerem seu software, se não for de código aberto. Se for comercial, você pode comprá-lo ou até levar as pessoas a doar o software,Projeto COIN-OR . Mas se o software de pesquisa não é comercial nem de código aberto, você precisa convencer as pessoas a aceitarem o empreendimento, e elas podem não confiar em terceiros para avaliar seu software de maneira justa.
Sei também que na otimização existem bancos de dados para download de problemas ( CUTEr
vem à mente) e livros de problemas de teste para otimização. Vi pessoas (por exemplo, estou pensando especificamente em uma palestra de Ruth Misener na AIChE 2011) comparando seu solucionador de otimização com outros solucionadores em bancos de dados de problemas em apresentações; Não tenho certeza do que é lançado publicamente. Eu sei que há uma tradição em otimização para comparação em larga escala (muitos solucionadores, muitos problemas); Só acho que não há um banco de dados online disponível.
Outra coisa que eu acho importante é que distingamos aqui entre métodos e implementações de software. Na computação científica, todos falamos sobre quais métodos são mais rápidos ou mais lentos, com base em métricas de complexidade computacional ou em nossas experiências com vários problemas. No entanto, quando se trata de medir quantitativamente o tempo computacional, a menos que se conte o número de FLOPs em um algoritmo específico, é preciso implementar o algoritmo no software e depois medir o desempenho de alguma forma (uso da memória, tempo de execução do relógio de parede, etc. .). Faz sentido avaliar o desempenho de um método ao analisar a complexidade computacional ou a contagem de FLOP, porque não precisamos de uma implementação para medir essas coisas, mas no momento em que estamos interessados nos tempos de execução reais do relógio de parede, falar sobre métodos é útil apenas como um dispositivo abstrato e coloquial. (Por exemplo,
Faço essa distinção entre métodos e software, porque nesse banco de dados também pude ver a possibilidade de rastrear a melhoria no software ao longo do tempo. Assim, por exemplo, com algo como, digamos, PETSc ou PyCLAW, ou qualquer outro software que esteja sendo testado, seria interessante ver quais problemas são afetados positivamente (ou negativamente!) Pelas atualizações do software. Isso pode ser útil para os pesquisadores que tentam decidir se vale algum custo potencial em dinheiro e mão-de-obra para atualizar seus códigos. Outra razão pela qual essa distinção é importante é porque um bom método pode ser mal implementado; Eu acho que essa possibilidade contribui para a reticência que as pessoas às vezes têm em compartilhar seus códigos de pesquisa.
Eu acho que o que quer que venha dessa idéia (e espero que algo aconteça e que esteja disposto a contribuir após o meu doutorado), é importante enfatizar essa distinção entre software e métodos, porque se estamos executando problemas de teste, estamos publicará resultados para o software.
Houve uma tentativa de criar uma lista de integrais "difíceis" para computar numericamente (ver artigos de Walter Gautschi, Robert Piessens e outros), mas nenhum banco de dados formal.
No campo de EDOs, existe o conjunto de testes IVP , um conjunto de testes para problemas de valor inicial.
fonte
Não estou familiarizado com esse banco de dados, mas acho que seria muito difícil definir de uma maneira útil. Um sistema melhor, na minha opinião, é liberar o código de forma executável, para que o usuário possa estender os testes da maneira mais abrangente possível. Em termos de repositórios da comunidade, o conjunto de testes do IVP mencionado pelo GertVdE também contém código de driver para executar vários solucionadores de ODE / DAE publicados sobre os problemas de teste. Nas minhas publicações, tento liberar o código e todos os scripts usados para criar a análise dos dados de saída e criar os gráficos e tabelas que aparecem no artigo.
fonte
O Workshop de Aeroacústica Computacional sobre Problemas de Referência tem um objetivo semelhante em mente para problemas aeroacústicos. Eles primeiro apresentam um conjunto de problemas de benchmark com antecedência, e as pessoas os resolvem usando seus próprios métodos e comparam os resultados. Por exemplo, eis os procedimentos da quarta reunião: http://www.archive.org/details/nasa_techdoc_20040182258
Embora, pelo que posso dizer, eles não comparem a eficiência dos códigos entre si, eles procuram principalmente a precisão.
fonte
Na modelagem de terremotos, houve vários desses tipos de esforços. Os que vêm à mente são o projeto de simulação de ruptura dinâmica e o projeto de inversão de fonte (http://eqsource.webfactional.com/wiki/). Ambos fornecem problemas físicos para resolver e são agnósticos (em algum nível) em relação aos métodos empregados. Realmente, esses projetos têm como objetivo comparar os modeladores específicos do domínio, não um conjunto geral de problemas de teste para todos os métodos numéricos do pdes. Mas você pode comparar com outros resultados, e isso revelou muitos problemas com muitos códigos.
Uma possibilidade de olhar seria o projeto de madagascar , desenvolvido no mundo das imagens sísmicas, mas que afirma ser de uso geral.
fonte