Você está na página 1de 10

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMTICA

PPGC PROGRAMA DE PS-GRADUAO EM COMPUTAO

CMP 135 Arquiteturas Especiais de Computadores


Prof. Philipe Navaux

Computao Quntica
Francisco Jos Prates Alegretti MC083/2004

Computao Quntica
Francisco Jos Prates Alegretti 1. INTRODUO Este texto contm reflexes sobre Computao Clssica e Computao Quntica. feita uma anlise sobre os computadores que possumos atualmente, as suas limitaes e as possibilidades para o futuro. So apresentados alguns conceitos bsicos sobre a Arquitetura de Von Neumann e a Computao Quntica. O enfoque do texto sobre a significncia desses conceitos e as conseqncias que eles implicam na Cincia da Computao.

2. COMPUTAO CLSSICA O computador tal qual o conhecemos atualmente baseado na arquitetura de Von Neumann. Um computador de Von Neumann faz uma distino clara entre elementos de processamento e armazenamento de informaes, isto , possui processador e memria separados por um barramento de comunicao. Mais especificamente, destaca-se duas caractersticas em particular sobre um computador de Von Neumann: a organizao da memria e o mtodo de processamento. As palavras de memria podem conter tanto instrues como dados. O processamento, por sua vez, seqencial, podendo conter desvios condicionais ou incondicionais. O reflexo dessas caractersticas nos computadores que temos na prtica a existncia do program counter (que incrementado a cada instruo) e da memria principal (que contm os programas executveis e seus arquivos de dados). Essas so as duas caractersticas mais importantes da arquitetura de Von Neumann; elas definem no apenas o computador em si, mas tudo o que est associado com ele, ou seja, desde os algoritmos que so elaborados at a eficincia com que conseguimos resolver determinados problemas. Para ilustrar melhor a importncia dessas caractersticas da arquitetura de Von Neumann, considere o exemplo a seguir. Quando um programador implementa um software, computacionalmente, ele est escrevendo um algoritmo para solucionar determinado problema. A forma como a maioria dos programadores pensa e imagina essa soluo de forma seqencial, no apenas porque pensamos de forma seqencial, mas porque os computadores que construmos e utilizamos h cinqenta anos tambm trabalham de forma seqencial. A programao (estruturada, lgica ou funcional) e o processamento seqencial so conseqncias diretas da arquitetura de Von Neumann. Mesmo novos paradigmas de programao, como a Orientao a Objetos, ainda esto restritos a Von Neumann. Essa forma de organizar o computador, apesar de impor algumas restries, extremamente eficiente para a maioria das aplicaes de um computador moderno. Provavelmente no existe forma melhor de realizar clculos matemticos, editar textos, armazenar bancos de dados ou acessar a Internet; um computador de Von Neumann a melhor mquina para executar essas tarefas. Entretanto, para algumas reas especficas, como a Inteligncia Artificial por exemplo, talvez seja necessrio um novo instrumento

computacional. De fato, os programas de Inteligncia Artificial mais avanados do mundo esto muito longe de alcanar algo semelhante inteligncia humana. Entretanto, a culpa por no se conseguir uma inteligncia artificial de alto nvel no pode ser atribuda somente ao hardware. O problema da IA pode ser tanto de software como de hardware. No se pode afirmar que no existem programas ou mquinas inteligentes porque os computadores atuais no tm potncia ou velocidade de processamento suficientes para suportar uma IA avanada. O problema pode ser a nossa falta de conhecimento (ou criatividade) para elaborar os algoritmos necessrios. Assim, os processadores atuais podem ser at mais que suficientes para executar uma inteligncia artificial ao nvel da inteligncia humana; ns que no sabemos ainda como implementar os algoritmos. Por outro lado, a ausncia desses algoritmos pode ser uma conseqncia da falta de computadores suficientemente poderosos. O fato que no sabemos onde est o problema: no hardware, no software ou em ambos. 2.1. A Lei de Moore Uma das caractersticas mais famosas da informtica a chamada Lei de Moore. Essa lei afirma que a velocidade do computador dobrada a cada 18 meses. Isso quer dizer que os computadores ficam duas vezes mais rpidos a cada 1,5 ano. Essa lei mantida desde o surgimento do primeiro PC1, em 1981. O primeiro microprocessador da Intel foi o 4004, lanado em 1971. Era um processador de 4 bits, com apenas 2300 transistores. Sua velocidade de operao era de 400 KHz (kilohertz, no megahertz). A tecnologia de fabricao atingia uma densidade de 10 mcron. Atualmente, o processador mais avanado da Intel o Pentium 4 de 3.6 GHz. Esse processador possui 42 milhes de transistores; o chip fabricado com tecnologia CMOS (Complementary Metal Oxide Silicon) a uma escalada de 0,09 mcron. Assim como toda a tecnologia, a CMOS possui um limite; especula-se que o limite da CMOS seja de 0,05 mcron (NIEMEIER 2001). Apesar de estarmos prximos de atingir esse limite, eventualmente, outra tecnologia suceder a CMOS. A candidata mais provvel a SiGe (Silcio Germnio). Projees calculam que em 2012 um microprocessador possuir aproximadamente 1010 transistores e atingir velocidades da ordem de 10 a 15 GHz. Mesmo que essa nova tecnologia, por sua vez, tambm chegue ao seu limite e outra a suceda, eventualmente, chegar-se- ao limite atmico. Nesse nvel no ser mais fisicamente possvel fabricar nada menor. Este um ponto que vale a pena salientar, pois ele nos leva a uma das mais importantes concluses sobre a Computao Digital. Desde o surgimento do primeiro computador digital, at os dias de hoje, nunca houve uma revoluo significativa na computao. O que aconteceu nos ltimos 50 anos foi, na verdade, a simples evoluo da tecnologia. Surgiram computadores menores e mais rpidos. A tecnologia evoluiu das vlvulas, para os transistores e, finalmente, para os microchips. De fato, foi uma evoluo
PC o nome do computador pessoal da IBM, do qual surgiram vrios clones e, tambm, do qual a maioria dos computadores de hoje em dia evoluram (ou seja, um Pentium consegue executar um programa escrito para o PC original). O primeiro clone do IBM PC foi feito pela Compaq. Entretanto, j existam outros microcomputadores antes do PC. O mais famoso o Apple II, lanado em 1978. Atualmente, a Apple fabrica os computadores Macintosh. O primeiro microcomputador do mundo foi o Altair 8800, da empresa MITS, lanado em 1975. Esse computador utilizava o processador 8080 da Intel, de 8 bits.
1

impressionante e a uma velocidade surpreendente. Entretanto, nunca surgiu um computador mais poderoso. Computacionalmente, tudo o que um Pentium faz, um XT j fazia (XT era o nome de um dos primeiros computadores pessoais da IBM, equipado com o chip 8086; o IBM PC original vinha com o 8088, uma verso mais barata do 8086). A informtica evoluiu em termos de velocidade, mas no em termos de poder computacional. Em outras palavras, um Pentium faz clculos mais rpidos, mas no faz nenhum clculo que um 8086 no faa. Mais cedo ou mais tarde, a tecnologia digital atingir seu limite. Chegar-se- ao ponto em que no ser possvel aumentar a velocidade dos processadores. Ser necessria uma alterao no computador em si, ou a descoberta de uma tecnologia totalmente nova. Para modificar o computador deve-se, no mnimo, mudar a Arquitetura de Von Neumann. Uma mudana de arquitetura implica na reorganizao dos elementos de um computador de tal forma a melhorar a funcionalidade do computador; em outras palavras, removendo certas restries que so implicitamente impostas pela arquitetura de Von Neumann. Existem vrias propostas no convencionais de computao sendo pesquisadas atualmente. Algumas envolvem at a utilizao de molculas de DNA (cido desoxirribonuclico). Entre as diversas alternativas ao computador digital, uma das mais interessantes e promissoras o computador quntico. A prxima seo deste texto explica conceitos bsicos sobre a computao quntica, descrevendo os mais importantes marcos dessa rea do conhecimento.

3. COMPUTAO QUNTICA Em um computador quntico a unidade bsica de informao o qubit (quantum bit). Um qubit pode assumir os valores de 0 ou 1, assim como um bit (binary digit) convencional. A diferena que o qubit pode assumir ambos os valores de 0 ou 1 ao mesmo tempo! nessa propriedade particular que est todo o poder computacional de um computador quntico. Apesar de ser pouco intuitivo (especialmente em uma cultura digital, onde tudo exatamente 0 ou 1) e at mesmo contraditrio com a fsica clssica, esse fenmeno quntico pode ser observado em laboratrio, atravs de uma experincia conhecida como "diviso de raio". 3.1. Dividindo o Fton Nessa experincia, uma fonte de luz colocada em direo a uma lente. Adicionalmente, dois sensores ticos (A e B) so posicionados de tal forma de detectem as duas possveis trajetrias do raio emitido pela fonte, conforme a figura abaixo. A fonte de luz emite um nico fton por vez, vrias vezes. Sabe-se que um fton indivisvel, ou seja, ele no pode ser particionado em duas unidades menores. Finalmente, a lente utilizada no experimento tal que pode direcionar o fton verticalmente, em direo ao sensor A, ou horizontalmente, em direo ao sensor B.

Dada a configurao do experimento, intuitivamente, espera-se que o fton de luz emitido pela fonte seja refletido randomicamente pela lente e atinja um dos sensores ticos com a mesma probabilidade. De fato, esta experincia constata que o fton detectado em cada um dos sensores com a mesma probabilidade. Ou seja, em metade dos casos atinge o sensor A e, na outra metade, o sensor B. At agora, a fsica clssica concorda com a fsica quntica. Entretanto, a fsica quntica afirma que o fton passa por ambas as trajetrias simultaneamente, todas as vezes! aqui que a fsica quntica comea a diferenciar-se da fsica clssica e os conceitos ficam cada vez menos intuitivos. Para verificar essa afirmao realizada uma nova experincia, onde dois espelhos e mais uma lente so acrescentados, conforme ilustrado na figura a seguir. A segunda lente utilizada idntica primeira e os espelhos sempre refletem a luz na mesma direo.

Nesta experincia, como na anterior, emite-se apenas 1 nico fton por vez, vrias vezes. Entretanto, desta vez, verifica-se que apenas um dos sensores registra o fton, todas as vezes. Ou seja, a probabilidade de que o fton atinja um dos sensores (A ou B) de 100% enquanto a do outro nula. A explicao para esse fenmeno que o fton passa pelos dois caminhos possveis simultaneamente, criando uma interferncia no ponto de

interseco (a segunda lente), anulando a probabilidade do fton alcanar o outro sensor. Esse efeito chamado de single-particle interference. Em outras palavras, isso quer dizer que tudo o que pode acontecer, de fato, acontece. Mas como isso pode acontecer se na primeira experincia o fton era detectado em ambos os sensores com a mesma probabilidade? Eles no deveriam atingir os dois sensores em todos os casos? A resposta da fsica quntica que quando observamos o sistema todas as possibilidades colapsam em uma nica ocorrncia em particular, que a realidade tal qual a conhecemos (talvez seja dessa parte da fsica quntica que autores de fico cientfica inspirem-se e imaginem universos paralelos!). Isso quer dizer que o simples ato de observar o sistema pode influenci-lo, alterando o seu desfecho. Conforme ser explanado adiante, essa uma das principais dificuldades em construir um computador quntico. A nica forma de observar que o fton percorre as duas trajetrias ao mesmo tempo atravs da interferncia causada pela interseco dos dois estados possveis do sistema. Se for colocado um obstculo sobre uma das trajetrias, conforme ilustrado pela figura a seguir, os sensores passam a registrar ftons como na primeira experincia, ou seja, com probabilidade de 0,5.

Essa experincia demonstra o princpio bsico da computao quntica e o enorme potencial para processamento paralelo de um computador quntico. Os exemplos apresentados a seguir quantificam melhor esse potencial. 3.2. O Algoritmo de Shor Desde a proposio da computao quntica por Richard Feymann no houveram muitos avanos significativos na rea at 1994. Nesse ano, o pesquisador Peter Shor, dos laboratrios da AT&T Bell escreveu um algoritmo que utiliza propriedades do computador quntico para realizar a fatorao de nmeros inteiros grandes (na ordem de 10200 dgitos) em tempo polinomial. Esse algoritmo quntico, que ficou conhecido como algoritmo de Shor, foi publicado no artigo Algorithms for Quantum Computation: Discrete Logarithms

Factoring. O algoritmo utiliza justamente a propriedade da superposio quntica para conseguir reduzir, atravs de funes qunticas especficas, a complexidade do tempo de soluo do problema de fatorao de exponencial para polinomial. O entendimento das funes qunticas que so utilizadas no algoritmo de Shor requer uma explicao matemtica bastante extensa, que fogem do escopo desde texto. A aplicao imediata do algoritmo de Shor na rea de criptografia. A segurana dos sistemas de criptografia de chave pblica baseia-se justamente na dificuldade de fatorao de nmeros muito grandes; com a implementao prtica de um computador que consiga realizar esses clculos de forma rpida a segurana desses sistemas de criptografia estar comprometida. No entanto, conforme explicado a seguir, a tecnologia atual consegue construir computadores qunticos de apenas 7 qubits. 3.3. O Computador Quntico da IBM O algoritmo de Shor um marco da computao quntica porque ele foi o primeiro algoritmo a utilizar as funcionalidades particulares de um computador quntico para otimizar a soluo de um problema. A publicao do algoritmo de Shor desencadeou uma avalanche de novas pesquisas e experincias na computao quntica. Em dezembro de 2001, cientistas do Centro de Pesquisas da IBM em Almaden conseguiram construir um computador quntico de 7 qubits. Nesse computador foi implementado o algoritmo Shor, que conseguiu realizar corretamente a fatorao do nmero 15. Obviamente, esse computador no consegue quebrar nenhum sistema de criptografia. A importncia desse experimento que ele comprova a viabilidade da computao quntica. As principais dificuldades enfrentadas nesse primeiro momento so mais tecnolgicas do que tericas, como a alta incidncia de erros nos computadores qunticos construdos at agora. O computador quntico da IBM foi implementado atravs de uma molcula com 7 spins: o ncleo da molcula era constitudo por 5 tomos de fluorina e 2 tomos de carbono. A programao do computador feita atravs de pulsos de rdio-freqncia. A leitura dos resultados feita por ressonncia magntica nuclear (RMN), a mesma tecnologia dos aparelhos de tomografia computadorizada de hospitais. A operao do computador exige temperaturas baixas, a fim de reduzir a incidncia de erros. 3.4. Tecnologias Alm da tecnologia de Quantum Spins, tambm existem propostas de um Autmato Celular Quntico. A unidade bsica desse tipo de computador a clula quntica. Cada clula quntica constituda por 4 pontos qunticos (quantum dots), conforme ilustrado pela figura a seguir. Uma clula quntica possui dois eltrons. Atravs da Repulso de Coulumb, os eltrons procuram manter-se em um estado de repouso, ou seja, naquele estado em que gastem menos energia. A frmula de Coulumb afirma que a fora de repulso inversamente proporcional distncia dos corpos; assim, quanto menor a distncia entre os eltrons, maior ser a fora de repulso entre eles. Por isso, os eltrons em uma clula quntica tendem sempre a ocupar os pontos qunticos de extremos opostos da clula. O tunelamento de eltrons torna possvel a sua locomoo de um ponto quntico para outro. Em termos de computao, a disposio dos eltrons dentro da clula quntica

equivalente ao spin dos eltrons no computador com quantum spins. So utilizadas chapas de capacitncia para erguer barreiras de potencial para a construo das clulas qunticas. Entretanto, essa tecnologia requer a utilizao de temperaturas baixssimas: 70 milikelvins.

A partir das clulas qunticas construda uma estrutura chamada de three-input gate (vide figura a seguir). Essa estrutura formada por 5 clulas qunticas: 3 clulas de entrada, 1 clula de processamento e 1 clula de sada. Basicamente, o funcionamento dessa estrutura da seguinte forma: a repulso de eltrons mantm a polarizao no mnimo; assim, a clula de processamento induzida a assumir o estado da maioria das demais clulas de entrada. Finalmente, a clula de sada copia o resultado, de tal forma que a polarizao dessa clula no influencie a computao da clula de processamento. Com as three-input gate possvel construir estruturas de alto nvel, como portas lgicas, por exemplo (o detalhamento do funcionamento dessas estruturas bastante complexo e extenso, e foge do escopo deste trabalho).

3.5. Problemas A principal dificuldade enfrentada na construo de um computador quntico a alta incidncia de erros. Entre as causas dos erros est o prprio ambiente: a influncia do meio sobre o computador quntico pode causar a alterao de qubits. Esses erros podem causar incoerncia no sistema, invalidando toda a computao. Uma dificuldade adicional , ironicamente, a implicao de um dos princpios da Mecnica Quntica que tornam a Computao Quntica interessante em primeiro lugar. A Fsica Quntica afirma que o ato de medir ou observar um sistema quntico destri a

superposio de estados. Isso quer dizer que, se for feita uma leitura dos dados durante a execuo de programa em um computador quntico, todo o processamento ser perdido. Assim, a maior dificuldade conseguir corrigir um erro sem de fato medir o sistema. Isso conseguido atravs da coerncia de fase. Essa tcnica permite a correo de erros sem comprometer o sistema. Para tanto, utilizada a ressonncia magntica nuclear para copiar um nico bit de informao quntica de trs spins nucleares de molculas de tricloroetileno. Basicamente, a tcnica utiliza a observao indireta para efetuar a correo de erros e manter a coerncia do sistema. Tendo em vista todas essas dificuldades que fica evidente a importncia da experincia realizada pela IBM: os cientistas conseguir superar todos esses contratempos e implementar, na prtica, o algoritmo de Shor em um computador quntico.

4. CONCLUSO Para realizar a maioria dos clculos matemticos, editar textos ou navegar na Internet, os computadores atuais (baseados na arquitetura de Von Neumann) so a melhor soluo. De fatos, os processadores atuais so extremamente eficientes para realizar essas tarefas. Entretanto, em reas como a Inteligncia Artificial, torna-se interessante a utilizao de outros tipos de computadores e arquiteturas. Em algoritmos de reconhecimento de imagens ou processamento da fala, por exemplo, a execuo seqencial e o armazenamento de dados da arquitetura de Von Neumann (que so to eficientes para outras aplicaes) tornam-se uma restrio que acaba limitando o desempenho desses sistemas. Para esse tipo de aplicao, torna-se mais interessante um tipo de computador que possua bastante poder de processamento paralelo para facilitar o reconhecimento de padres (o princpio comum de soluo desses problemas). Entre as diversas propostas alternativas, o computador quntico apresenta-se como a opo mais promissora, justamente porque a computao quntica a que mais se diferencia da arquitetura de Von Neumann, com um poder de processamento paralelo macio. Portanto, o computador quntico no ser utilizado para resolver os problemas que um computador clssico j resolve eficientemente. A computao quntica ser aplicada em problemas que ainda no possuem soluo eficiente, como a Inteligncia Artificial e a Criptografia.

5. BIBLIOGRAFIA Becket, P., Jenning, A. Towards Nanocomputer Architecture. 7th Asia Pacific Computer Systems Architecture Conference, Melbourne, Australia 2002. Conferences in Research and Practice in Information Technology, Vol. 6. Freivalds, R. How to Simulate a Free Will in a Computational Device? AMC, 1999. Gershenfeld, N., West, J. The Quantum Computer. Scientific America, 2000.

Knill, E. Quantum Randomness and Nondeterminism. Los Alamos National Laboratory, 1996. Niemier, M. T., Kogge, P. M. Exploring and Exploiting Wire-Level Pipelining in Emerging Technologies. IEEE, 2001. Rieffel, E., Wolfgang, P. An Introduction to Quantum Computing for Non-Physicists. ACM Computing Surveys, Vol. 32, No. 3, September 2000, pp. 300-335. Sarkar, P. A Brief History of Cellular Automata. ACM Computing Surveys, Vol. 32, No. 1, March 2000. Skadron, K. The Role of Processor Architecture in Computer Science. Fundamentals of Computer Science Committee, National Academy of Science, 2001. Wikipedia Encyclopedia. Quantum Computer. http://en.wikipedia.org/ Wikipedia Encyclopedia. Shors Algorithm. http://en.wikipedia.org/

Você também pode gostar