Árvores de Decisão em Ciência da Computação usadas em inteligência artificial
Uma Árvore de Decisão é:
•um nó folha (ou nó resposta) que contém o nome de uma classe ou o símbolo nulo (nulo indica que não é possível atribuir nenhuma classe ao nó por não haver nenhum exemplo que corresponda a esse nó); ou
•um nó interno (ou nó de decisão) que contém o nome de um atributo; para cada possível valor do atributo, corresponde um ramo para uma outra árvore de decisão.
Uma árvore de decisão possui a seguinte estrutura típica:
•Nós internos são rotulados com atributos;
•Folhas são rotuladas com classes;
•Ramos são rotulados com valores (atributos categóricos) ou com intervalos (atributos numéricos).
Árvores de Decisão são algoritmos utilizados em machine learning, com uma estrutura de simples compreensão e que costumam apresentar bons resultados em suas previsões. Estão entre os primeiros algoritmos aprendidos por iniciantes no mundo do aprendizado de máquina. Eles também são a base do funcionamento de outros poderosos algoritmos, como o Random Forest.
Apesar do grande poder de previsão de uma árvore de decisão, conhecer o seu funcionamento básico é algo muito simples e fácil, quem está começando na área já será capaz de obter este entendimento.
Como o próprio nome sugere, neste algoritmo vários pontos de decisão serão criados. Estes pontos são os “nós” da árvore e em cada um deles o resultado da decisão será seguir por um caminho, ou por outro. Os caminhos existentes são os “ramos”.
Esta é a estrutura básica de uma árvore de decisão. Os nós são responsáveis pelas conferências que irão indicar um ramo ou outro para sequência do fluxo.

Detalhando ainda mais esta lógica, uma pergunta será feita e teremos duas opções de resposta: sim ou não. A opção “sim” levará a uma próxima pergunta, e a opção “não” a outra.
Estas novas perguntas também terão como opções de resposta o sim e não, e desta forma toda a árvore será construída, partindo de um ponto comum, podendo existir várias opções de caminhos diferentes a serem percorridos na árvore, cada um levando a um resultado.
Métodos Ensemble em Ciência da Computação usadas em inteligência artificial
Estes métodos são a combinação de diferentes modelos para se obter um único resultado. Eles são construídos de maneira similar aos algoritmos mais simples, como regressão linear ou árvore de decisão.
Tal combinação torna esses algoritmos mais robustos e complexos, levando a um maior custo computacional que costuma ser acompanhando de melhores resultados.
Normalmente na criação de um modelo, escolhemos o algoritmo que apresenta o melhor desempenho usando a notação Big O da analise assintótica para os dados em questão. Podemos testar diferentes configurações de algoritmos, gerando assim diferentes modelos, mas no fim do processo de machine learning, escolhemos apenas um.
Com um método ensemble serão criados vários modelos diferentes a partir de um algoritmo, mas não escolheremos apenas um para utilização final, e sim todos.

Assim, teremos um resultado para cada modelo criado. Se criarmos 100 modelos, teremos 100 resultados, que serão agregados em apenas um como em uma orquestra sinfônica.
Em problemas de regressão poderá ser utilizada a média dos valores para obtenção do resultado final, e em problemas de classificação o resultado que mais se repete será o escolhido.
Há casos onde o resultado de um modelo será utilizado na criação do próximo, criando uma dependência entre os modelos, e levando a um único resultado final, gerado a partir de vários resultados intermediários.
Muitos métodos ensemble dependem do conceito de árvore de decisão, sendo de grande valia o conhecimento deste conceito no aprendizado dos métodos. Inclusive, quem já conhece árvores de decisão aprenderá os métodos ensemble com muita facilidade e rapidez.
Árvores em Ciência da Computação usadas em inteligência artificial
Árvores de decisão ou árvores de classificação são definidas informalmente como modelos de aprendizado supervisionado que representam regras de decisão baseadas nos valores dos atributos. São muito usadas em inteligência artificial, por isso, vamos definir formalmente o que é uma árvore na área de ciência da computação.
Uma árvore é uma coleção de elementos chamados nós, dentre os quais um é distinguido como uma raiz, juntamente com uma relação de parentesco que impõe uma estrutura hierárquica sobre os nós.
Formalmente: uma árvore pode ser definida recursivamente da seguinte maneira:
1. Um único nó é uma árvore. Este nó é também a raíz da árvore.
2. Suponha que t seja um nó e T1, T2, …, Tk sejam árvores com raízes t1, t2, …, tk, respectivamente. Podemos construir uma nova árvore transformando t no pai dos nós t1, t2, …, tk. Nessa árvore, t será a raiz e T1, T2, …, Tk serão as subárvores ou ramos da raiz. Os nós t1, t2, …, tk são chamados filhos do nó t.

Se t1, t2, …, tk é uma sequência de nós em uma árvore tais que ti é o pai de ti+1 para 1 ≤ i < k, então esta sequência é denominada um caminho do nó t1 até o nó tk. Se existe um caminho do nó a ao nó b, então a é um ancestral de b e b é um descendente de a. Todo nó é ancestral e descendente de si mesmo. Dado um nó t ∈ T, a sub-árvore ou ramo Tt de T consistirá do nó t (que será a raiz de Tt) juntamente com todos os descendentes de t em T. Todos os nós que não possuem filhos são chamados nós terminais ou folhas. Os nós que contêm filhos são chamados nós não-terminais ou nós internos. O conjunto das folhas de T será denotado por T.
Epigramas interessantes do primeiro laureado com o prêmio Turing da ACM!

Oi caro(a) leitor(a), começo com a definição de epigrama. Depois com os comentários do Alan J. Perlis sobre os fenômenos que cercam os computadores e produzem uma base surpreendentemente rica para lançar metáforas em atividades individuais e em grupo. Uma das razões que ajudam a explicar o motivo de eu achar geniais vários dos epigramas do primeiro laureado com o prêmio ACM A.M. Turing, é que o meu mestrado em Engenharia de Computação / Engenharia de Software foi sobre programação em pares e o meu doutorado sobre programação em grupo. Portanto, como o Senhor(a) leitor(a) poderá perceber com uma maior riqueza de detalhes em meus textos de dissertação e tese de mestrado e doutorado, publicados na Universidade de São Paulo, as razões pelas quais eu me interesso por Pair Programming e Mob Programming. Em relação aos epigramas do Alan J. Perlis, eles também são sobre programação e eu acho incrível que mesmo com o passar dos anos, eles não perderam a sua contemporaneidade e como vários aspectos da programação de computadores estão correlacionados.
Epigrama (Grego: ἐπί-γραφὼ, literalmente, “sobre-escrever”) é uma composição poética breve que expressa um único pensamento principal, festivo ou satírico. Ainda em relação ao vocábulo epigrama que provém do grego e etimologicamente vem do prefixo epi (sobre) e graphein (gravação ou escrita). O Epigrama foi criado na Grécia Clássica e, como o significado do termo indica, era uma inscrição que se punha sobre um objeto, por exemplo: uma estátua ou uma tumba. Pequena composição poética que termina num pensamento engenhoso ou satírico. Sátira ou dito mordaz; referência crítica. Pode ser qualquer frase ou inscrição poética sobre qualquer tema ou assunto. Frase, dito poético ou em prosa que, gravado num monumento, moeda, estátua etc., exaltava um evento importante, a vida de alguém. A linguagem poética apresenta uma ampla variedade de composições, tais como a ode, o soneto, o romance, a égloga, entre outras. Cada uma destes poemas tem sua própria versificação e características. Epigrama é uma forma de poesia que se baseia por sua pequena dimensão e concisão, assim como por sua perspicácia. Epigrama é um poema conciso lidando incisivamente e muitas vezes satiricamente com um único pensamento ou evento e muitas vezes terminando com uma engenhosa mudança de pensamento; um ditado conciso, sábio ou espirituoso e muitas vezes paradoxal.
Segundo Alan J. Perlis, laureado com o primeiro prêmio Turing da ACM, enquanto estava na Universidade de Yale:
“Os fenômenos que cercam os computadores são diversos e produzem uma base surpreendentemente rica para lançar metáforas em atividades individuais e em grupo.
Por outro lado, os esforços humanos clássicos fornecem uma fonte inesgotável de metáforas para aqueles de nós que estão em trabalho de parto dentro do cálculo. Tal
as relações entre a sociedade e os dispositivos não são novas, mas o incrível crescimento da capacidade de influência do computador (real e implícita) confere a esta dependência simbiótica uma vitalidade como a de um jovem desengonçado crescendo fora de suas roupas dentro de um interminável puberdade.
Os epigramas que seguem tentam capturar alguns das dimensões deste tráfego de imagens que aguça, focaliza, esclarece, amplia e obscurece nossa visão do mais notável de todos os artefatos do homem, o computador.”

Da publicação SIGPLAN da ACM, (setembro de 1982), artigo “Epigrams in Programming“, de Alan J. Perlis da Yale University. Traduzi abaixo os seus epigramas:
- A constante de um homem é a variável de outro homem.
- Funções atrasam a vinculação: as estruturas de dados induzem a vinculação.
Moral: Estruture os dados no final do processo de programação. - O açúcar sintático causa câncer do ponto e vírgula.
- Todo programa faz parte de algum outro programa e raramente se encaixa.
- Se um programa manipula um grande quantidade de dados, ele o faz em um pequeno
número de maneiras. - A simetria é uma redução de complexidade conceito (co-rotinas incluem sub-rotinas); procurá-lo em todos os lugares.
- É mais fácil escrever um programa incorreto do que entender um correto.
- Uma linguagem de programação é de baixo nível quando seus programas exigem atenção para o irrelevante.
- É melhor ter ‘100’ funções a operar em ‘uma’ estrutura de dados do que ’10’ funcionando em ’10’ estruturas de dados.
- Entre na rotina precocemente: faça o mesmos processos da mesma forma. Acumule expressões idiomáticas. Padronize-as. A única diferença (i) entre Shakespeare e você era do tamanho da lista de idiomas dele e não o tamanho do seu vocabulário.
- Se você tem um procedimento com 10 parâmetros, você provavelmente perdeu alguns.
- A recursão é a raiz da computação já que troca descrição por tempo.
- Se duas pessoas escrevem exatamente o mesmo programa, cada uma deve ser colocada em microcódigo e então certamente não serão as mesmas.
- A longo prazo, todo programa acaba se tornando rococó e depois vira escombros.
- Tudo deve ser construído de cima para baixo, exceto a primeira vez.
- Todo programa tem (pelo menos) dois propósitos: aquele para o qual foi escrito e outro para o qual não foi.
- Se um ouvinte balançar a cabeça enquanto você explica seu programa, acorde-o.
- Não vale a pena escrever um programa sem loop e sem variável estruturada.
- Não vale a pena conhecer uma linguagem que não afete a maneira como você pensa sobre programação.
- Onde quer que haja modularidade, há potencial para mal-entendidos: ocultar informações implica a necessidade de verificar a comunicação.
- A otimização atrapalha a evolução.
- Um bom sistema não pode ter uma linguagem de comando fraca.
- Para compreender um programa você deve se tornar tanto a máquina quanto o programa.
- Talvez se escrevêssemos programas desde a infância, quando adultos seríamos capazes de lê-los.
- Só podemos exibir informações complexas na mente. Assim como ver, o movimento, o fluxo ou a alteração da visão são mais importantes do que a imagem estática, por mais bela que seja.
- Haverá sempre coisas que desejamos dizer nos nossos programas que em todas as línguas conhecidas só podem ser ditas superficialmente.
- Depois de entender como escrever um programa, peça a outra pessoa para escrevê-lo.
- Perto dos computadores é difícil encontrar a unidade de tempo correta para medir o progresso. Algumas catedrais levaram um século para serem concluídas. Você consegue imaginar a grandeza e o alcance de um programa que levaria tanto tempo?
- Para sistemas, o análogo de um face-lift é adicionar ao grafo de controle uma aresta que cria um ciclo, e não apenas um nó adicional.
- Na programação, tudo o que fazemos é um caso especial de algo mais geral – e muitas vezes sabemos disso muito rapidamente.
- A simplicidade não precede a complexidade, mas a sucede.
- Os programadores não devem ser medidos pela sua engenhosidade e lógica, mas pela integralidade da sua análise de caso.
- O décimo primeiro mandamento era “Computarás” ou “Não Computarás”, esqueci qual era.
- A string é uma estrutura de dados rígida e em todos os lugares onde ela é passada há muita duplicação de processos. É um veículo perfeito para esconder informações.
- Todos podem ser ensinados a esculpir: Michelangelo teria que ser ensinado a não fazê-lo. O mesmo acontece com grandes programadores.
- O uso de um programa para provar o teorema das 4 cores não mudará a matemática – apenas demonstra que o teorema, um desafio por um século, provavelmente não é importante para a matemática.
- O computador mais importante é aquele que assola nossos crânios e sempre busca aquele emulador externo satisfatório. A padronização de computadores reais seria um desastre – e provavelmente não acontecerá.
- A Programação Estruturada apoia a lei do terceiro excluído, para qualquer proposição, ou esta proposição é verdadeira, ou sua negação é verdadeira.
- Re gráficos: uma imagem vale mais que 10 mil palavras – mas apenas aquelas para descrever a imagem. Quase nenhum conjunto de 10 mil palavras pode ser descrito adequadamente com imagens.
- Existem duas maneiras de escrever programas sem erros; apenas o terceiro funciona.
- Algumas linguagens de programação conseguem absorver as mudanças, mas resistem ao progresso.
- Você pode predizer a reação de um programador observando sua atitude em relação à vitalidade contínua do FORTRAN.
- Em sistemas de software, muitas vezes é o madrugador que cria o worm.
- Às vezes acho que o único universal no campo da computação é o ciclo buscar-executar.
- O objetivo da computação é a emulação de nossas habilidades sintéticas, não a compreensão de nossas habilidades analíticas.
- Assim como os trocadilhos, a programação é um jogo de palavras.
- Como diria Will Rogers: “Não existe variável livre.”
- O melhor livro sobre programação para leigos é “Alice no País das Maravilhas”; mas isso porque é o melhor livro sobre qualquer coisa para o leigo.
- Desistir da linguagem assembly foi a maçã em nosso Jardim do Éden: linguagens cujo uso desperdiça ciclos de máquinas são pecaminosas. A máquina LISP agora permite que os programadores LISP abandonem o sutiã e a folha de figueira.
- Quando entendermos os sistemas baseados no conhecimento, será como antes, exceto que as pontas dos nossos dedos terão sido chamuscadas.
- Trazer computadores para casa não vai mudar nada, mas pode revitalizar o canto da sala se ela for grande.
- Os sistemas têm subsistemas e os subsistemas têm subsistemas e assim por diante ad infinitum – e é por isso que estamos sempre começando de novo.
- Tantas boas ideias nunca mais são ouvidas depois que embarcam em uma viagem no abismo semântico.
- Cuidado com o poço de piche de Turing, no qual tudo é possível, mas nada de interessante é fácil.
- Um programador LISP sabe o valor de tudo, mas o custo de nada.
- O software está sob constante tensão. Sendo simbólico, é arbitrariamente aperfeiçoável; mas também é arbitrariamente mutável.
- É mais fácil alterar a especificação para se adequar ao programa do que vice-versa.
- Os tolos ignoram a complexidade. Os pragmáticos sofrem com ela. Alguns conseguem evitá-la. Os gênios a removem.
- Em inglês, cada palavra pode ser verbalizada. Gostaria que fosse assim em nossas linguagens de programação.
- Na busca do inatingível, a simplicidade só atrapalha.
- Na programação, como em tudo o mais, errar é renascer.
- Na computação, as invariantes são efêmeras.
- Quando escrevemos programas que “aprendem”, acontece que nós aprendemos e eles não.
- Muitas vezes são os meios que justificam os fins: os objectivos promovem a técnica e a técnica sobrevive mesmo quando as estruturas dos objectivos desmoronam.
- Não se engane: os computadores processam números – não símbolos. Medimos a nossa compreensão (e controle) pela medida em que conseguimos aritmetizar uma atividade.
- Tornar algo variável é fácil. Controlar a duração da constância é o truque.
- Pense em toda a energia psíquica despendida na busca de uma distinção fundamental entre “algoritmo” e “programa”.
- Se acreditamos em estruturas de dados, devemos acreditar em processamento independente (portanto, simultâneo). Pois por que mais coletaríamos itens dentro de uma estrutura? Por que toleramos linguagens que nos dão uma sem a outra?
- Em um período de 5 anos, obtivemos uma excelente linguagem de programação. Só que não podemos controlar quando será o período de 5 anos.
- Ao longo dos séculos, os índios desenvolveram a linguagem de sinais para comunicar fenômenos de interesse. Programadores de diferentes tribos (FORTRAN, LISP, ALGOL, SNOBOL, etc.) poderiam usar um que não exija que carreguem um quadro negro em seus pôneis.
- A documentação é como um seguro de prazo: satisfaz porque quase ninguém que o assina depende de seus benefícios.
- Um bootstrap adequado é uma contradição em termos.
- Não é a fraqueza de uma língua, mas suas forças que controlam o gradiente de sua mudança: Infelizmente, uma língua nunca escapa de seu saco embrionário.
- Será possível que o software não seja como qualquer outra coisa, que deva ser descartado: que a questão toda seja vê-lo como uma bolha de sabão?
- Por causa de sua vitalidade, o campo da computação está sempre precisando desesperadamente de novos clichês: A banalidade acalma nossos nervos.
- É o usuário quem deve parametrizar os procedimentos, e não seus criadores.
- A troca cibernética entre homem, computador e algoritmo é como um jogo de cadeiras musicais: a busca frenética pelo equilíbrio sempre deixa um dos três pouco à vontade.
- Se o seu computador fala inglês, provavelmente foi fabricado no Japão.
- Um ano trabalhando no desenvolvimento de inteligência artificial é suficiente para fazer alguém acreditar em Deus.
- O contato prolongado com o computador transforma matemáticos em escriturários e vice-versa.
- Na computação, transformar o óbvio em útil é uma definição viva da palavra “frustração”.
- Estamos no limite: hoje nosso programa provou o penúltimo teorema de Fermat.
- Qual é a diferença entre uma máquina de Turing e o computador moderno? É o mesmo que ocorreu entre a ascensão de Hillary ao Everest e o estabelecimento de um hotel Hilton em seu pico.
- Lema para um laboratório de pesquisa: No que trabalhamos hoje, outros pensarão primeiro amanhã.
- Embora os chineses devam adorar o APL, é no FORTRAN que eles apostam seu dinheiro.
- Nós nos enganamos se pensarmos que a proporção entre procedimento e dados em um sistema de banco de dados ativo pode ser arbitrariamente pequena ou mesmo mantida pequena.
- Temos o mini e o micro computador. Em que nicho semântico cairia o pico computador?
- Não é culpa do computador que as equações de Maxwell não sejam adequadas para projetar o motor elétrico.
- Não se aprende computação usando uma calculadora de mão, mas pode-se esquecer a aritmética.
- A computação fez a árvore florescer.
- O computador lembra Lon Chaney – é a máquina de mil rostos.
- O computador é o poluidor final: suas fezes são indistinguíveis da comida que ele produz.
- Quando alguém disser “Quero uma linguagem de programação na qual só preciso dizer o que gostaria que fosse feito”, dê a ele um pirulito.
- As interfaces mantêm as coisas organizadas, mas não aceleram o crescimento: as funções sim.
- Não tenha boas ideias se não estiver disposto a ser responsável por elas.
- Os computadores não introduzem ordem em nenhum lugar tanto quanto expõem oportunidades.
- Quando um professor insiste que a ciência da computação é X, mas não Y, tenha compaixão por seus alunos de pós-graduação.
- Na computação, o tempo médio de falha continua diminuindo.
- Na simbiose homem-máquina, é o homem que deve se ajustar: as máquinas não.
- Nunca ficaremos sem coisas para programar enquanto houver um único programa disponível.
- Lidar com o fracasso é fácil: trabalhe duro para melhorar. O sucesso também é fácil de lidar: você resolveu o problema errado. Trabalhe duro para melhorar.
- Não se pode passar do informal ao formal por meios formais.
- Linguagens puramente aplicativas são pouco aplicáveis.
- A prova do valor de um sistema é a sua existência.
- Não se consegue expressar facilmente a complexidade, apenas ter consciência dela.
- É difícil extrair sentido dos barbantes, mas eles são a única moeda de comunicação com a qual podemos contar.
- O debate continua: PL/I é Bachtriano ou Dromedário?
- Sempre que dois programadores se reúnem para criticar os seus programas, ambos ficam calados.
- Pense nisso! Com VLSI podemos embalar 100 ENIACS em 1 cm2.
- A edição é uma atividade de reformulação.
- Por que o Império Romano entrou em colapso? O que é latim para automação de escritório?
- A Ciência da Computação tem vergonha do computador.
- A única teoria construtiva que liga a neurociência e a psicologia surgirá do estudo do software.
- Dentro de um computador, a linguagem natural não é natural.
- A maioria das pessoas acha o conceito de programação óbvio, mas impossível de fazer.
- Você acha que sabe quando pode aprender, tem mais certeza quando pode escrever, ainda mais quando pode ensinar, mas tem certeza quando pode programar.
- Vai contra a tendência da educação moderna ensinar as crianças a programar. Que graça há em fazer planos, adquirir disciplina na organização de pensamentos, dedicar atenção aos detalhes e aprender a ser autocrítico?
- Se você consegue imaginar uma sociedade em que o computador-robô seja o único servo, você pode imaginar qualquer coisa.
- A programação é um ato antinatural.
- Adaptar programas antigos para se adequarem a novas máquinas geralmente significa adaptar novas máquinas para que se comportem como as antigas.

Referências:
https://www.teses.usp.br/teses/disponiveis/45/45134/tde-27032023-161552/pt-br.php
https://amturing.acm.org/award_winners/perlis_0132439.cfm
http://www.cs.yale.edu/homes/perlis-alan/quotes.html
https://pt.wikipedia.org/wiki/Alan_Perlis
Cinco enxadristas famosos que aparecem em várias listas de melhores de todos os tempos!
A lista dos cinco enxadristas está ordenada pela data de nascimento, seguida por uma curta biografia do gênio enxadrista
Começo com um desafio! No menu jogos deste site, tem um jogo de xadrez com inteligência artificial e se você ganhar da Inteligência Artificial (IA) na busca em profundidade nível 5, você ganha 1 café com 1 direito a 1 partida de xadrez contra mim e 1 curso básico de programação se não for um(a) programador(a), no caso de você ser programador(a) profissional você ganha um curso de agilidade. Quando eu tinha de 3 para 4 anos o meu pai me ensinou a jogar xadrez, o que fez eu gostar de jogar por amor. Eu nunca li nenhum livro de xadrez. Talvez por isso, Capablanca é um dos enxadristas que eu mais admiro entre os melhores enxadristas de todos os tempos. Reza a lenda que o Capabanca aprendeu xadrez com apenas 4 anos enquanto observava o pai jogando.
José Raul Capablanca (1888-1942) foi um dos maiores talentos naturais da história do xadrez. Muitos analistas acreditam, inclusive, que essa sua facilidade o fez deixar de lado a estratégia, o que pode ter colaborado para que ele não chegasse a mais conquistas em sua carreira. E muitos afirmam que ele só perdeu para Alekhine porque tinha certeza absoluta que iria vencer e não se preparou adequadamente. O fato é que ele é muito provavelmente o maior talento natural da história do jogo. Mas esse talento incrível tornou as coisas, digamos, fáceis demais pra ele. Por esse motivo ele nunca precisou se esforçar muito. Se tivesse aliado ao talento a disciplina de um Kasparov ou de um Alekhine, poderia ter sido o maior da história.
Alexander Alekhine (1892-1946) era o grande ídolo de Kasparov, e é incrível a semelhança de jogos entre ambos, que espelha bem a rivalidade Capablanca/Alekhine e Karpov/Kasparov. Um grande enxadrista é formado por várias qualidades. E capacidade de trabalho é uma delas. A contribuição de Alekhine para o xadrez é maior do que a de Capablanca. Talvez por não ter o mesmo talento, ele teve que trabalhar duro. E acabou construindo os pilares do que seria a preparação moderna. Seu estilo de jogo estava muito à frente do seu tempo. Ele foi capaz de subverter regras de xadrez posicional graças ao seu poder de cálculo concreto – para ele tudo precisava ser avaliado conforme as características únicas de cada posição.
Robert James “Bobby” Fischer (1943-2008) foi um grande mestre de xadrez estadunidense, naturalizado islandês, e décimo primeiro campeão mundial de xadrez, sendo o primeiro e único campeão nascido nos Estados Unidos. Em 1972, venceu o Campeonato Mundial de Xadrez ao derrotar o soviético Boris Spassky em um match disputado em Reykjavík, Islândia, considerado um confronto símbolo da Guerra Fria, o “Match do Século” atraiu um interesse midiático maior que qualquer outra partida de xadrez já disputada. Em 1975, Fischer recusou-se a defender seu título ao não chegar a um acordo com a Federação Internacional de Xadrez (FIDE) em relação ao modelo de disputa da partida. A desistência tornou Anatoly Karpov campeão do Torneio de Candidatos de 1974, o novo campeão mundial. Fischer demonstrava uma habilidade natural para o xadrez desde cedo. Aos 13 anos, venceu a chamada “Partida do Século” contra Donald Byrne. Começando em 1957, aos 14 anos, participou de oito Campeonatos de Xadrez dos Estados Unidos, vencendo todos com pelo menos 1 ponto de vantagem sobre seus oponentes. Aos 15, Fischer tornou-se o grande mestre de xadrez mais novo da história até então e o candidato mais novo ao campeonato mundial. Aos 20 anos de idade, Fischer venceu o Campeonato dos Estados Unidos de 1963–64 com uma pontuação de 11/11, a única pontuação perfeita da história do torneio. Seu livro My 60 Memorable Games, publicado em 1969, tornou-se um ícone da literatura de xadrez. Venceu o Torneio Interzonal de 1970 com uma distância recorde de 3½ pontos sobre o segundo colocado, vencendo 20 partidas consecutivas, incluindo duas com o placar perfeito de 6–0 no Torneio de Candidatos de 1971, algo inédito na história da competição. Em julho de 1971, tornou-se o primeiro número 1 oficial do ranking FIDE. Após perder o título mundial, Fischer tornou-se recluso e, de certa forma, excêntrico, desaparecendo tanto dos campeonatos de xadrez quanto da mídia. Em 1992, reapareceu em uma revanche contra Spassky, na Iugoslávia, país que, à época, estava sob embargo da ONU. Sua participação na partida gerou um conflito com o governo norte-americano, que requereu imposto de renda sobre o prêmio pela sua vitória, chegando a emitir um mandado de prisão a Fischer. Após esses acontecimentos, passou a viver no exílio. Em 2004, foi preso no Japão por utilizar-se de um passaporte que havia sido revogado pelo governo dos Estados Unidos. O parlamento islandês o ofereceu passaporte e cidadania islandeses, permitindo-o viver no país até sua morte em 2008. Fischer fez inúmeras contribuições adicionais para o xadrez. Na década de 1990, patenteou um sistema modificado de relógio de xadrez, que adiciona um incremento no tempo após cada movimento, sendo hoje a prática padrão em torneios de alto nível. Também é de sua invenção uma variante do jogo chamada “xadrez aleatório de Fischer” (também conhecida como “Chess960”).
Garry Kasparov (1963) é um talento extraordinário do xadrez, quase um visionário do esporte, com um estilo de jogo que produziu algumas das partidas mais espetaculares do xadrez. Exímio estrategista, sendo um dos poucos enxadristas clássicos que soube fazer a transição para a era do computador com perfeição. O jogador com a melhor preparação de aberturas da história do jogo e também o que soube fazer a transição para a era do computador à perfeição. Sua contribuição para o desenvolvimento do jogo é inigualável. Ele mostrou um entendimento superior das posições com desequilíbrio material e com a iniciativa. Tal qual Alekhine, buscava a jogada mais enérgica desde o primeiro lance. Suas partidas na Najdorf, Índia do Rei, Inglesa e Peão Rei em geral até hoje são modelos para essas aberturas. Nenhum outro jogador empregou tantas novidades teóricas.
Magnus Carlsen (1990) é o atual campeão mundial de xadrez. Para muitas pessoas, ele é o melhor jogador da história, embora ainda se fale muito de Garry Kasparov e Bobby Fischer. De qualquer forma, é notável que, antes de completar 30 anos, Carlsen já conquistou seu lugar no topo. É fácil ver o porquê. O prodígio norueguês de 13 anos empatou com Kasparov e derrotou Anatoly Karpov no mesmo evento em 2004, um mês antes de se tornar o segundo GM mais jovem da história. Em 2009, ele se tornou o jogador mais jovem a ultrapassar a barreira dos 2800 de rating. Depois, Carlsen passou de jovem jogador de classe mundial para um dos melhores de todos os tempos. Ele alcançou o primeiro lugar no ranking mundial em 2011 e ainda não o deixou. Ele conquistou o título mundial e o defendeu com sucesso três vezes. Além disso, ele ganhou vários títulos mundiais de rápidas (duas vezes) e blitz (quatro vezes), alcançou o rating mais alto de todos os tempos e conquistou várias vitórias em torneios de elite, incluindo duas vitórias no Norway Chess e sete em Wijk aan Zee. A parte surpreendente é que parece que há muito mais pela frente para Carlsen. Se ele continuar se apresentando da maneira que tem se apresentado, Carlsen poderá criar algo verdadeiramente lendário. Em uma era do xadrez mais competitiva do que nunca, ele está muito à frente da oposição. É bem verdade que os dois últimos matches dele pela coroa mundial foram muito difíceis e, especialmente contra Karjakin, ele quase foi derrotado. Tirando os matches contra Anand, falta ainda uma vitória convincente contra o seu rival mais direto.
Referências:
https://rafaelleitao.com/10-melhores-enxadristas-de-todos-os-tempos/
https://clubepaineiras.org.br/10-principais-enxadristas-do-mundo/
https://casadoxadrezportoalegre.com.br/10-melhores-enxadristas-de-todos-os-tempos/
Authorized Digital Sellers (ads.txt)
O ads.txt é uma iniciativa do IAB onde um arquivo do tipo texto (TXT) que significa Authorized Digital Sellers é criado e hospedado em seu domínio. Ele deve ficar hospedado na raíz (Ex: https://www.meudominio.com.br/ads.txt) e ajuda a garantir que todo o seu inventário de anúncios digital apenas seja comercializado por vendedores previamente identificados como autorizados.
O que isto significa?
Ao criar o arquivo ads.txt você possui maior controle sobre quem tem permissão para comercializar anúncios no seu site de modo a combater o “mercado clandestino” do inventário de anúncios digital.
É obrigatório usar o ads.txt?
O uso do arquivo ads.txt é recomendável mas não obrigatório. Ao criá-lo na verdade ajudará a marca a se proteger contra inventários que fingem de alguma forma ser originários de um determinado website, aplicativo ou mídia digital (por exemplo vídeo).
Porque é importante utilizá-lo?
Atualmente quando um anunciante compra mídia programática, ele não possui a garantia de que os espaços publicitários que comprou foram cedidos de forma legítima pelos veículos. Com a utilização do Ads.txt, isso muda.
O primeiro passo para começar a utilizar é simples e pode ser feito com o bloco de notas do seu computador.
Um simples arquivo de texto chamado de Ads.txt é criado e com as informações inseridas nele pode esclarecer quais são os parceiros autorizados a comercializar os espaços publicitários de cada veículo e evitar a compra de algum inventário “fake” ou ilegítimo.
Quais são as informações que devem ser incluídas no ads.txt?
No arquivo ads.txt é necessário que tenha uma linha para cada vendedor autorizado e cada linha possui 4 conjuntos de dados, separados por vírgula, sendo que os 3 primeiros são obrigatórios e o último é opcional.
<Dado #1>, <Dado #2>, <Dado #3>, <Dado #4>
<Dado #1>
: Obrigatório. Nome do domínio do sistema de publicidade. Por exemplo, para as contas do Google o domínio é sempre google.com;<Dado #2>
: Obrigatório. ID da conta do editor, ou seja o identificador associado à conta do vendedor/revendedor. Geralmente este campo é o Publisher ID. Para contas do Google, neste link você pode encontrar maiores informações de como entrar este ID:<Dado #3>
: Obrigatório. Tipo de Conta. DIRECT (proprietário do conteúdo) ou RESELLER (o editor autorizou outra entidade a controlar a conta exibida).<Dado #4>
: Opcional. ID de autoridade de certificação. ID que identifica de forma exclusiva o sistema de publicidade dentro de uma autoridade de certificação. Por exemplo, para contas de editor do Google o ID do TAG éf08c47fec0942fa0
.
Exemplo do conteúdo do arquivo ads.txt para editores que trabalham com produtos do Google:
google.com, pub-0000000000000000, DIRECT, f08c47fec0942fa0
google.com, pub-0000000000000000, RESELLER, f08c47fec0942fa0
Significados dos diretórios do Linux
/bin | Binários de usuários, essenciais no boot |
/sbin | Binários do superusuário, essenciais no boot |
/boot | Arquivo do gerenciador de partida e kernel, símbolos |
/dev | Dispositivos do sistema |
/etc | Arquivos de configuração globais |
/etc/opt | Arquivos de configuração para aplicativos em /opt |
/etc/X11 | Arquivos de configuração para o X Window System 11 |
/home | Armazenamento de dados de contas de usuários normais |
/root | Armazenamento de dados de contas do superusuário |
/lib | Bibliotecas essenciais do sistema, de binários localizados em /bin e /sbin |
/mnt | Sistema de arquivos montado temporariamente |
/media | Ponto de montagem de mídias removíveis (como pen-drives, cd-rom) |
/opt | Pacotes estático de aplicações |
/proc | systema de arquivos virtual, onde pode fazer a interação com o kernel e processos do sistema |
/tmp | Arquivos temporários. Conteúdo geralmente apagado no reboot nas distribuições |
/usr | (unix system resources) – Hierarquia secundária (não essenciais no boot) para dados compartilhados de usuários |
/usr/bin | O mesmo que a hierarquia /bin, mas contém binários não essenciais ao funcionamento da máquina ou para o recovery |
/usr/include | Diretório padrãod para headers |
/usr/lib | O mesmo que a hierarquia /lib, mas não essenciais ao boot |
/usr/sbin | Similar ao /sbin, mas não essenciais ao boot da máquina |
/usr/share | Dados compartilhados independentes de arquitetura |
/usr/src | Armazenamento de código fonte da máquina |
/usr/X11R6 | X Window Sysem, versão 11R6 |
/usr/local | Armazenamento de binários não distribuídos na instalação principal da máquina, ou seja, fora do sistema de empacotamento. Também é o local de armazenamento terciário de dados |
/var | Arquivos que são gravados comf requencia (logs, páginas web, email, imagens, etc) |
/var/lock | Arquivos de lock, usados para controlar corretamente os recursos em uso |
/var/log | Arquivos de log, usado para logs em geral |
/var/mail | Caixas de e-mail dos usuários do sistema em formato mailbox |
/var/run | Contém dados sobre a execução do sistema desde seu primeiro boot (daemons e usuários) |
/var/spool | Spooling de tarefas (fila de impressão, cache de pacotes, proxy, etc) |
/var/spool/mail | Antigo local da caixa de correio de usuários (deve ser usado /var/mail) |
/var/tmp | Arquivos temporários. Quando usado em modo multi-usuário |
… | Lembrou de algum diretório importante do Linux? Deixe um comentário para atualizarmos a tabela. Esperamos que seja útil para alguém! |