Campeonato de Otimização de Algoritmos. - página 117
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Yuri Evseenkov:
1. Первое обращение к фф должно состоять иэ массива сформированного штатным ГСЧ МТ с равномерным распределением? Свой ГСЧ с нормальным распределением использовать нельзя?
2. Sobre os critérios de avaliação. Você se propõe a contar o tempo de execução do código da máquina.
1. Sobre a primeira inicialização não insisto, apenas recomendo - para o FF desconhecido (e é o FF desconhecido que estará no campeonato) quaisquer parâmetros iniciais são igualmente bons, porque o FF é desconhecido. É por isso que é melhor usar qualquer RNG (seja o que for, mas de preferência com o maior número possível de variações). Ainda mais, para resultados estatisticamente confiáveis serão feitas pelo menos 20 execuções do algoritmo, e é simplesmente impraticável inicializar o algoritmo com os mesmos números.
2. Já decidido, existem 2 critérios de avaliação, precisão e número de execuções de FF. Mas o elo que dei como exemplo de cálculo, foi há muito tempo atrás, lá ao invés do número de corridas é o tempo. É por isso que deixei claro em meu posto: precisão e número de lançamentos de FF são dois critérios de avaliação, sendo a precisão 3 vezes preferível.
De acordo com este cálculo de lugares na tabela, meu algoritmo ocuparia o primeiro lugar de acordo com os resultados de sua tarefa. Vamos calcular: a precisão é maior, então o critério de precisão é 3, e o número de execuções FF é maior, então 0. O total é 3+0=3, e seu algoritmo receberá 0+1=1, ou seja, menos pontos. Mas isto não significa que eu ganhe seu problema, pois várias condições não são cumpridas. E se o FF máximo for conhecido antecipadamente, a tabela é calculada de forma um pouco diferente, o primeiro lugar "virtual" é colocado o valor máximo, e nossos lugares já são calculados com base nisso (o número de pontos obtidos será diferente).
A regra é que o número de acessos é fixo e o mesmo para todos?
Não, nunca existiu tal regra. Há apenas um máximo admissível. Quanto menos acertos, melhor, que é o segundo critério mais importante após a precisão.
Pessoalmente, não vou me preocupar com isso, vou usar todo o limite de acessos, em outras palavras - aposto na precisão.
Em resumo, é um absurdo, não um campeonato.
Os critérios para a determinação do vencedor são inventados à medida que eles vão avançando.
Em 15 páginas, teremos que introduzir um parâmetro para estimar o vencedor.
É uma pressa, não é bem pensada.
Mas a realidade é mais complicada do que os sonhos. :)
É este o seu Pensamento de hoje? Ou Pensamento do Ano?
Os critérios foram aprovados há uma dúzia de páginas, mas os princípios e fórmulas de cálculo ainda antes. Há muitos floodbusters, o que complica a compreensão do material pelo público - agora você tem o crédito por isso, parabéns a você mesmo.
Fui perguntado e respondi. Se me perguntarem amanhã, eu lhes responderei novamente. Mas amanhã, amanhã, amanhã Vasya Vyazaperelezayko virá e mais uma vez comentará profundamente: "O Campeonato é uma merda, as regras estão sendo inventadas na mosca" ..........
Então responda à pergunta: Por que a precisão é 3 vezes mais valiosa do que o número de chamadas FF!
Eu decidi assim, o organizador porque. Há outras razões, também.
Você já escreveu seu próprio algoritmo de otimização? Você consegue imaginar como é encontrar o 1 certo entre 2E16 e usar apenas 50 tentativas? É mais difícil do que encontrar uma agulha entre bilhões de palheiros. E isto só se houver apenas um parâmetro, e se houver 500? 1000? 1000000?
São as "outras" razões que são de interesse, ou seja, argumentos a favor do número 3 em vez do número 10, por exemplo.
E você o considera como um argumento digno de se determinar um vencedor?
E você acha que eu não? - Você não deveria pensar assim.
Responda minha pergunta:
Você já escreveu seu próprio algoritmo de otimização? Você pode imaginar, por exemplo, o que significa encontrar o correto entre 2E16 valores e usar apenas 50 tentativas? É mais difícil do que encontrar uma agulha entre bilhões de palheiros. E isto só se houver apenas um parâmetro, e se houver 500? 1000? 1000000?
Eu não estou contando nada, estou perguntando e esperando por uma resposta. Por que devo especular quando posso perguntar e obter uma resposta da fonte?
Essa é a resposta. Uma relação empírica. Você não encontrará uma resposta cientificamente fundamentada em nenhum lugar.
Tentei encontrar a dependência da precisão da solução no número de acertos com uma determinada probabilidade de acerto junto com Matemat, não tivemos sucesso. Talvez tenha algo a ver com a regra dos 3 sigma, mas não necessariamente.
...uma pergunta simples: um algoritmo que não consegue encontrar um extremo com um determinado erro, embora não exatamente, deveria ser permitido participar do Campeonato?
Então eu me sento e reflito... Responder diretamente ou não. Eu decidi - eu tenho que responder!)
Por que você perguntou sobre o significado do critério "precisão" excedendo "manuseio" por um fator de 3? Se houver um critério de "exatidão", é preciso assumir que os participantes não terão 100% de exatidão... É para isso que serve o critério de "exatidão", para classificar por exatidão. Portanto, concluímos - pode!, mas não deve (não deve), porque por que alguém iria competir se seu algoritmo sempre dá uma resposta 100% precisa, e isso significa simultaneamente que para um número aceitável de chamadas FF, desde que a resposta do algoritmo uma vez recebida. Portanto, sem ambigüidade, não deve ser assim! - Além disso, tal algoritmo deve ser escondido e não mostrado a ninguém.
E sim... Há um ponto muito importante. Se o algoritmo não "sabe" onde está o máximo absoluto - e não o sabe, caso contrário, por que o procuraria? Somos nós "de fora" que só podemos julgar o grau de precisão do algoritmo realizando experimentos sobre ele, mas não podemos definir o parâmetro "pesquisar com esta precisão", por razões que espero que já estejam claras.
A resposta é simples:
1. Se um algoritmo CANNOT encontra um extremo com uma determinada precisão, ele não tem lugar no Campeonato;
2. Considerando o ponto 1, somente algoritmos que PESQUISAM um extremo com uma determinada precisão participarão na determinação do vencedor;
3. Nenhuma classificação em termos de precisão. A exatidão é dada por uma gama;
4. Determinar um vencedor de acordo com o número de vezes que o FF é invocado.
Partirei neste momento, são 2h da manhã.
Entendido.
Mas não se pode fazer isso dessa maneira.
Primeiro de tudo: não há razão objetiva para definir a precisão. para alguém, um desvio de 1% não vai gostar, e para alguém, 20% ficará feliz. depende em grande parte do tipo de tarefa e do tipo de algoritmo. Estabelecer uma "precisão de passe" em um campeonato significaria selecionar diferentes soluções algorítmicas interessantes.
Segundo: a precisão depende dos acessos FF e não-linearmente. Para diferentes tipos de algoritmos, esta dependência será diferente e você não pode simplesmente dizer "este algoritmo é bom, e este é ruim" - é por isso que usamos dois critérios para avaliar os algoritmos da maneira mais objetiva possível. Havia um terceiro critério - tempo de execução do algoritmo (não FF) - mas ele é muito subjetivo, porque os algoritmos OCL que o utilizam voam em alguns computadores e diminuem a velocidade em outros. Portanto, restam apenas dois critérios: precisão e referências ao FF.