Chaos Computing: O que é e por que devemos nos preocupar com isso?
A operação de qualquer máquina de computação é necessariamente um processo físico, e isso determina crucialmente as possibilidades e limitações do dispositivo de computação. Nos últimos 20 anos, a taxa de transferência de computadores digitais aumentou a uma taxa exponencial. Alimentado por melhorias na tecnologia de circuitos integrados, o crescimento exponencial previsto pela lei de Moore se manteve verdadeiro. Mas a Lei de Moore chegará ao fim quando os fabricantes de chips atingirem uma parede quando se trata de diminuir o tamanho dos transistores. Como a tecnologia convencional de fabricação de chips atinge limites físicos na densidade de circuitos e velocidade do sinal, que estabelece limites para o escalonamento de comutadores lógicos binários, estão surgindo alternativas aos computadores digitais binários baseados em semicondutores. Além do VLSI analógico, eles incluem bio-chips, que são baseados em materiais encontrados em seres vivos,
Teoria do caos
Existe também outro paradigma de computação emergente, que explora a riqueza e a complexidade inerentes à dinâmica não linear, chamada computação do caos. A computação em caos é a idéia de usar sistemas caóticos para computação. Em particular, sistemas caóticos podem ser criados para produzir todos os tipos de portas lógicas e permitir que eles se transformem um no outro. Este artigo analisa mais profundamente essa tecnologia e explora suas possíveis aplicações na tecnologia de computação convencional.
O que é um sistema caótico?
Dinâmica é o estudo de como as coisas mudam com o tempo. Em seus termos mais simples, a dinâmica pode ser caracterizada por dois comportamentos: regular e irregular. Comportamentos regulares incluem relógios, estações do ano, metrônomos e assim por diante. Comportamentos irregulares incluem clima, bolsas de valores, jogos de cassino e assim por diante. No entanto, enquanto o comportamento regular repete um único padrão ou vários padrões de maneira previsível e imutável, comportamentos irregulares (geralmente atribuíveis a efeitos não lineares, portanto, o nome dinâmica não linear) são muito mais variados e incluem dois extremos: dinâmica aleatória e dinâmica caótica.
Dinâmica regular (ou periódica) As mudanças no comportamento dependem do estado anterior, o movimento se repete de maneira rigidamente previsível. Exemplos: estações, relógios, eletrônica linear, órbita da Terra,…
Dinâmica Irregular (ou Aperiódica)
Aleatório: a próxima mudança no comportamento ou dinâmica não depende do estado atual da dinâmica. As mudanças são completamente imprevisíveis. Exemplos: sequência de sorteio, roleta,…
Caótico: a próxima mudança na dinâmica tem uma dependência determinística do estado atual da dinâmica. As alterações, embora irregulares, se movem regularmente e irregularmente entre muitos padrões. Exemplos: torneiras de água pingando, padrões climáticos, populações de predadores-presas, eletrônicos não lineares, órbita de Plutão,… Agora, concentrando-nos em sistemas caóticos, podemos essencialmente resumir-se a duas características essenciais:
Geração de padrões : Os sistemas caóticos geram um grande número de padrões de comportamento e são irregulares porque alternam entre esses padrões.
Sensibilidade às condições iniciais : Os sistemas caóticos exibem “sensibilidade às condições iniciais”, o que, na prática, significa que os sistemas caóticos podem alternar entre padrões extremamente rápido.
Portas lógicas
Todos os computadores digitais modernos realizam cálculos baseados em operações lógicas digitais implementadas no nível mais baixo como portas lógicas, o que significa essencialmente que todos os cálculos podem ser realizados por sequências de uns e zeros. Todos os cálculos em computadores digitais, tão simples quanto adicionar dois números e tão complicado quanto reformatar um documento de processamento de texto, são realizados em hardware com combinações desses portões que executam funções lógicas. Existem essencialmente sete funções lógicas básicas implementadas como portas lógicas: AND, OR, NOT, NAND, NOR, XOR e XNOR, conforme mostrado abaixo, com ícones de circuitos associados que representam o circuito que implementa a função lógica.
Princípio das portas lógicas caóticas que se transformam
As portas lógicas, baseadas no padrão elétrico de entrada de uns e zeros, produzem um padrão elétrico de saída de uns ou zeros que corresponde à sua respectiva operação lógica (ou tabela de verdade). Cada porta lógica convencional consiste em um circuito dedicado que produz a saída lógica adequada. Uma porta lógica de transformação caótica, a partir de agora ChaoGate, consiste principalmente em um circuito não-linear genérico que exibe dinâmica caótica. Essa dinâmica caótica é capaz de gerar muitos padrões diferentes. Exploramos esse recurso e selecionamos, através de um mecanismo de controle, padrões que correspondem a todos os portões lógicos. Exploramos ainda mais a sensibilidade às condições iniciais para alternar entre diferentes padrões de maneira extremamente rápida (bem abaixo de um ciclo de clock do computador). Na prática, para criar um candidato ChaoGate, construímos um ambiente otimizado (potência, tamanho, velocidade, estabilidade) circuito eletrônico caótico com circuitos de controle interno associados que podem selecionar qualquer porta lógica e alternar entre quaisquer portas lógicas exponencialmente rápidas. Assim, com um único ChaoGate, podemos reproduzir rapidamente qualquer porta lógica desejada no hardware a cada ciclo do relógio.
Chaotic Morphing
Como um exemplo de como a transformação caótica funciona, vamos usar um sistema caótico genérico conhecido como mapa Logístico. Este mapa não linear é muito bem estudado por seu comportamento caótico e sua representação funcional é dada por:
Representação funcional de um mapa logístico
Nesse caso, o valor de x é caótico quando r> ~ 3,57… e alterna rapidamente entre diferentes padrões no valor de x, conforme se itera o valor de n. Pode-se selecionar um dos muitos padrões implementando um controlador para o sistema caótico. Escolhemos (mas não estamos restritos a) um simples controlador de limite que pode controlar ou direcionar o mapa ou sistema caótico para produzir um dos muitos padrões. O controlador basicamente define um limite no mapa, de modo que, se a iteração (“atualização caótica”) do mapa assumir um valor de x que esteja acima de um determinado valor limite, x * , a saída corresponderá a 1, caso contrário corresponde a 0. Pode-se fazer engenharia reversa do mapa caótico para estabelecer uma tabela de pesquisa de limites que produzam robusta qualquer uma das operações do portão lógico. Como o sistema é caótico, podemos então alternar entre vários portões (“padrões”) exponencialmente rápido. Abaixo, para fins ilustrativos, mostramos quais valores de x0 e x * correspondem a quais portas para o mapa logístico com uma sequência de porta OR específica mapeada em detalhes.
Computador caótico
Computador caótico é uma rede de ChaoGates que se comunicam através do sistema de interconexão, rodando entre eles. Uma realização de um computador tão caótico foi demonstrada pela Chaologix Inc. em VLSI de 0,18 micrômetro e a comercialização está em andamento.
Incorporando recursos extras à computação em caos
Embora o nascimento da Chaos Computing remonte à idéia principal de trazer portas lógicas simples básicas da dinâmica caótica não linear, recentemente novos recursos e capacidades são introduzidos e excluídos para o sofisticado conceito de Chaos Computing. A dinâmica caótica é uma rica fonte de comportamentos e padrões, que nos oferece uma grande variedade de oportunidades para incorporar trabalhos relacionados à informática de nível superior e sofisticados no ChaoGate (ChaoGates).
Em computadores convencionais, o Hardware consiste apenas em portas lógicas estáticas e quase toda a parte das tarefas de processamento real e de nível superior é implementada como o Software. Como regra básica em Engenharia de Computação, os cálculos realizados no nível de Hardware são mais rápidos, mais confiáveis e até seguros do que os realizados no nível de Software. O software deve ser traduzido para as operações muito básicas, elementares e primitivas do hardware e, por essas traduções, o software geralmente perde sua eficiência e velocidade. Neste ponto, o novo conceito de ChaoGate apresenta sua propriedade nova e brilhante. Em nítido contraste com os computadores convencionais, nos quais o Hardware é constituído por circuitos estáticos de dinâmica regular, o ChaoGate (como o bloco básico de hardware de um Computador Caótico) consiste em um circuito dinâmico e caótico, quais diferentes trabalhos sofisticados e de nível superior podem ser destacados. Como exemplo, foi demonstrado como os computadores caóticos e o ChaoGates podem ser recrutados em aplicativos tolerantes a falhas, pela introdução de métodos dinâmicos de detecção de falhas. Além disso, foi demonstrado que estados dinâmicos multidimensionais disponíveis em um único ChaoGate podem ser explorados para implementar a computação em caos paralela e, por exemplo, essa arquitetura paralela pode levar à construção de um elemento de memória semelhante ao SR por meio de um ChaoGate. Como outro exemplo, ficou provado que qualquer função lógica pode ser construída diretamente a partir de apenas um ChaoGate. Uma das aplicações mais recentes e interessantes é o assunto da incorporação de inteligência no ChaoGate, por exemplo como um grupo de ChaoGates pode evoluir e se auto-organizar (através da transformação) para resolver um problema desconhecido, ou como um ChaoGate pode evoluir para responder a um ambiente não estruturado, desconhecido e dinâmico adequadamente, através da transformação. Na verdade, esses novos recursos que podem ser incorporados ao ChaoGate parecem intermináveis, graças à Chaotic Dynamics!
Hoje, um grande número de métodos e abordagens muito interessantes baseados no caos para manipulação de informações (processamento, transmissão, compactação etc.) foi introduzido. Esses métodos são implementados como um programa (Software) executado em computadores convencionais ou implementações específicas dedicadas foram introduzidas para eles. No primeiro caso, o Software baseado no Caos deve ser traduzido para as operações primitivas e elementares de hardware estático (na visão da reconfiguração de portas) e dinâmico dinâmico (na visão do comportamento físico do portão), onde nesta tradução eles perdem sua eficiência, velocidade, segurança e confiabilidade. Por outras palavras, o hardware dinâmico dinâmico não pode suportar software dinâmico irregular (caótico e até aleatório) com eficiência. Na segunda opção de implementação, um hardware dedicado não pode ser reprogramado e, portanto, não é um computador. A excelente capacidade de um Computador Caótico, construído por ChaoGates como Hardware, é que os diferentes métodos de manipulação de informações baseadas no caos podem ser realizados e incorporados no nível do Hardware, o que preserva sua velocidade, confiabilidade, segurança e eficiência. Por um lado, a dinâmica caótica do ChaoGate pode ser eficientemente aplicada para a implementação de diferentes algoritmos baseados no Chaos, e por outro lado, pela implementação desses algoritmos no ChaoGates, eles automaticamente situam e executam no nível de Hardware (Hardware / Firmware), o que resulta em eficiência, segurança, confiabilidade e velocidade deles. construído por ChaoGates como o Hardware é que os diferentes métodos de manipulação de informações baseados no caos podem ser realizados e incorporados no nível do Hardware, o que preserva sua velocidade, confiabilidade, segurança e eficiência. Por um lado, a dinâmica caótica do ChaoGate pode ser eficientemente aplicada para a implementação de diferentes algoritmos baseados no Chaos, e por outro lado, pela implementação desses algoritmos no ChaoGates, eles automaticamente situam e executam no nível de Hardware (Hardware / Firmware), o que resulta em eficiência, segurança, confiabilidade e velocidade deles. construído por ChaoGates como o Hardware é que os diferentes métodos de manipulação de informações baseados no caos podem ser realizados e incorporados no nível do Hardware, o que preserva sua velocidade, confiabilidade, segurança e eficiência. Por um lado, a dinâmica caótica do ChaoGate pode ser eficientemente aplicada para a implementação de diferentes algoritmos baseados no Chaos, e por outro lado, pela implementação desses algoritmos no ChaoGates, eles automaticamente situam e executam no nível de Hardware (Hardware / Firmware), o que resulta em eficiência, segurança, confiabilidade e velocidade deles.
Raízes biológicas e naturais da computação no caos
A computação em caos não é uma abordagem abstrata, imaginária ou artificial para a computação. Possui fortes raízes naturais e biológicas. O comportamento caótico é o comportamento ocupado e mais visitado na natureza e na biologia. Como exemplo, observou-se que os sinais cerebrais de rato, encontrados por um cheiro desconhecido, ficam caóticos para lembrá-lo e associá-lo a um dos cheiros anteriores. Tais observações e evidências motivaram e iniciaram um número enorme de diferentes métodos de manipulação de informações baseadas no caos. A maioria desses métodos foi introduzida como software, executando em um computador. Mas na natureza e na biologia, não se pode encontrar uma fronteira entre o corpo físico (Hardware) e os dados e algoritmos (Software), como definimos nos computadores convencionais. Na natureza e na biologia, algoritmos e data são emergências da dinâmica do corpo físico, e eles não possuem características independentes do corpo físico. Desse ponto de vista, os computadores caóticos e o ChaoGates são mais biológicos do que os métodos anteriores de manipulação de informações baseadas no caos, porque a maioria dos trabalhos de processamento pode ser incorporada ao hardware e, de fato, a computação no caos é uma abordagem dinâmica para a computação, onde a computação coincide. pela dinâmica intrínseca do ChaoGate. Assim, as raízes da computação caótica vão para a natureza e a biologia e, como resultado, existem fortes esperanças de que a computação em caos possa abrir novas direções na tecnologia de computação. porque a maioria dos trabalhos de processamento pode ser incorporada ao hardware e, de fato, a computação em caos é uma abordagem dinâmica para computação, onde a computação coincide com a dinâmica intrínseca do ChaoGate. Assim, as raízes da computação caótica vão para a natureza e a biologia e, como resultado, existem fortes esperanças de que a computação em caos possa abrir novas direções na tecnologia de computação. porque a maioria dos trabalhos de processamento pode ser incorporada ao hardware e, de fato, a computação em caos é uma abordagem dinâmica para computação, onde a computação coincide com a dinâmica intrínseca do ChaoGate. Assim, as raízes da computação caótica vão para a natureza e a biologia e, como resultado, existem fortes esperanças de que a computação em caos possa abrir novas direções na tecnologia de computação.
Em breve, podemos esperar uma maior aplicação dessa tecnologia, principalmente porque a ARM Ltd., licenciadora de IP do processador, adquiriu a ChaoLogix Inc. em outubro de 2017 por uma quantia não revelada de dinheiro e dobrou a empresa em suas operações de segurança. O ARM parece estar particularmente interessado no recurso do ChaoGates, onde eles possuem uma assinatura de energia independente das entradas, o que o torna valioso para impedir ataques de canal lateral da análise de potência diferencial (DPA). Um porta-voz da ARM disse: “O ChaoLogix criou uma tecnologia que reduz a eficácia dos ataques de segurança baseados em DPA e DEMA [análise eletromagnética diferencial] e, como a segurança é fundamental em muitos mercados, a ARM integrará essa tecnologia em produtos futuros. Isso permitirá que os clientes da ARM tragam produtos mais seguros ao mercado a um custo muito competitivo.
Autor: Sridhar G Kumar