양자 알고리즘은 새로운 종류의 문제를 해결합니다!
1994년에 한 수학자 한 사람이 일반 클래식 컴퓨터가 할 수 없는 일을 양자 컴퓨터로 수행하는 방법을 알아냈습니다. 이 작업은 원칙적으로 양자 역학의 규칙을 기반으로 하는 기계가 많은 수를 주요 요소로 효율적으로 분해할 수 있음을 보여줍니다. 이는 오늘날 인터넷 보안의 기본 요소 대부분을 구성하는 기존 컴퓨터에서는 매우 어려운 작업입니다.
그것과 함께 낙관주의의 물결이 옵니다. 아마도 연구자들은 우리가 수많은 다양한 문제를 해결할 수 있는 양자 알고리즘을 발명할 수 있을 것이라고 믿습니다.
하지만 진전이 멈췄습니다. Carnegie Mellon University의 Ryan O'Donnell은 "이것은 다소 실망스럽습니다"라고 말했습니다. "사람들은 '이건 훌륭합니다. 우리가 다른 모든 종류의 놀라운 알고리즘을 얻게 될 것이라고 확신합니다.'라고 말할 것입니다. 그렇지 않습니다." 과학자들은 NP라는 표준 세트에서 단일하고 좁은 문제 클래스에 대해서만 상당한 속도 향상을 발견했습니다. 이는 인수분해와 같은 효율적이고 검증 가능한 솔루션이 있음을 의미합니다.
지난 3년 동안 이런 일이 있었습니다. 그러다가 4월에 연구자들은 양자 컴퓨터가 기존 컴퓨터보다 더 빠르게 해결할 수 있는 완전히 새로운 종류의 문제를 발명했습니다. 여기에는 지저분한 출력만을 기반으로 복잡한 수학적 프로세스의 입력을 계산하는 작업이 포함됩니다. 이 문제가 단독으로 발생하는지 아니면 다른 많은 문제 중 첫 번째 문제인지는 아직 결정되지 않았습니다.
MIT의 컴퓨터 과학자인 Vinod Vaikuntanathan은 "많은 사람들이 세상에 또 무엇이 있을지 생각하고 있습니다."라고 말합니다. 양자 컴퓨터가 더 잘하는 것이 무엇인지 이해하기 위해 수학적 모델을 연구하여 이를 표현합니다. 일반적으로 그들은 오라클이라는 이상적인 컴퓨터와 쌍을 이루는 양자 또는 고전 컴퓨터 모델을 상상합니다. 오라클은 입력을 받아 미리 결정된 출력을 출력하는 간단한 수학 함수 또는 컴퓨터 프로그램과 같습니다.
입력이 임의의 범위(예: 12~67) 내에 있으면 "yes"를 출력하고 그렇지 않으면 "no"를 출력하는 임의의 동작이 있을 수 있습니다. 또는 주기적일 수 있으므로 1~10 사이의 입력은 "예"를 반환하고, 11~20은 "아니요"를 반환하고, 21~30은 다시 "예"를 반환하는 식으로 계속됩니다.
주기적인 예언 중 하나가 있지만 그 기간을 모른다고 가정해 보세요. 당신이 할 수 있는 일은 숫자를 입력하고 출력 내용을 확인하는 것뿐입니다. 이러한 제약 하에서 컴퓨터는 얼마나 빨리 주기를 찾을 수 있습니까? 1993년 당시 몬트리올 대학교의 다니엘 사이먼(Daniel Simon)은 양자 알고리즘이 어떤 기존 알고리즘보다 밀접하게 관련된 문제에 대한 답을 더 빠르게 계산할 수 있음을 발견했습니다.
이 결과를 통해 Simon은 양자 컴퓨터가 중요한 이점을 갖는 첫 번째 징후 중 하나를 식별할 수 있습니다. 그러나 그가 주요 학회에 논문을 제출했을 때 거절당했습니다. 그러나 그 논문은 당시 뉴저지의 벨 연구소에서 일하고 있던 컨퍼런스 프로그램 위원회의 하급 위원인 피터 쇼어(Peter Shor)의 관심을 불러일으켰습니다.
Shor는 계속해서 Simon의 알고리즘을 조정하여 오라클의 기간을 계산할 수 있다는 사실을 발견했습니다. 그런 다음 그는 주기적인 예언처럼 동작하는 방정식, 즉 주기적인 인수분해를 설명하는 방정식을 풀기 위해 알고리즘을 다시 조정할 수 있다는 것을 깨달았습니다.
Shor의 결과는 역사적이었습니다. 그가 발견한 양자 알고리즘은 거대한 숫자를 구성 소인수로 빠르게 줄일 수 있는데, 이는 알려진 기존 알고리즘으로는 할 수 없는 일입니다. 이후 몇 년 동안 연구자들은 다른 효율적인 양자 알고리즘을 발견했습니다. Shor의 알고리즘과 같은 일부는 지수적 이점을 제공하기까지 했지만 비주기적 NP 문제에 대해서는 어느 누구도 상당한 양자 이점을 증명할 수 없었습니다.
진행이 부족하여 오스틴에 있는 텍사스 대학의 Scott Aaronson과 라트비아 대학의 Andris Ambainis라는 두 명의 컴퓨터 과학자가 관찰을 했습니다. 양자 이점의 증명은 항상 주기성과 같은 일부 비무작위 구조를 사용한 예측에 의존하는 것 같습니다. 2009년에는 무작위 또는 구조화되지 않은 NP 문제에 대해 속도가 크게 향상되지 않을 것이라고 추측했으며 누구도 예외를 찾을 수 없었습니다.
그들의 추측은 양자 컴퓨터의 성능을 제한합니다. 그러나 특정 유형의 구조화되지 않은 NP 문제(예 또는 아니요 답변이 있는 문제)의 경우 속도가 크게 향상되지 않는다고 말할 뿐입니다. 문제가 소위 검색 문제라고 하는 보다 구체적이고 정량적인 답을 찾는 것과 관련된 경우에는 이 추측이 적용되지 않습니다.
이를 염두에 두고 NTT 사회 정보학 연구소의 Takashi Yamakawa 연구원과 NTT Research 및 Princeton University의 Mark Zhandry 연구원은 2005년 Oded Regev가 제기한 특정 검색 문제를 실험하기로 결정했습니다.
풍향계 세트가 모두 같은 방향을 향하고 있다고 상상해 보세요. 그들 각각에게 신중한 힘을 주고 돌풍이 그들의 방향에 영향을 미치게 하십시오. Regev는 최종 방향을 기반으로 원래 가리킨 위치를 확인하려고 합니다. 이와 같은 문제는 추력과 바람이 원래 방향에서 무작위 오류 소스로 작용하기 때문에 "오류 학습"으로 알려지게 되었습니다. 고전 알고리즘과 양자 알고리즘 모두 해결하기 어렵다는 증거가 있습니다.
Yamakawa와 Zhandry가 설정을 조정했습니다. 그들은 이러한 시작의 힘을 수정하여 더 예측 가능하게 만들었습니다. 그들은 또한 무작위 오라클에 의해 바람을 결정하도록 만들었기 때문에 어떤 경우에는 훨씬 더 무작위이지만 다른 경우에는 완전히 휴면 상태입니다.
이러한 수정을 통해 연구원들은 양자 알고리즘이 초기 방향을 효과적으로 찾을 수 있음을 발견했습니다. 그들은 또한 모든 기존 알고리즘이 지수 요인에 의해 속도가 느려져야 함을 증명했습니다. Shor와 마찬가지로 그들은 알고리즘을 적용하여 문제의 현실적인 버전을 해결하고 예측을 실제 수학 방정식으로 대체했습니다.
컴퓨터 과학자들은 여전히 이 문제를 이해하고 해결하려고 노력하고 있습니다. Vaikuntanathan은 이를 데이터 압축을 수행할 때 발생하는 다른 상황과 비교했습니다. 즉, 정보가 압축되면 두 비트가 실수로 같은 위치에 압착되어 덮어쓰게 될 수 있습니다. 이러한 충돌을 피하기 위해 사전에 이러한 충돌을 예측하는 문제에는 몇 가지 유사점이 있습니다. 그는 "이것은 기본적으로 이런 문제 종류입니다. 아마도 이러한 문제는 양자적으로 해결될 수 있을 것입니다."라고 말했습니다. "아마도 오늘날의 초기 버전의 양자 컴퓨터에서도 새로운 문제와 같은 구조화되지 않은 문제도 해결될 수 있기를 바랍니다." 해결하여 테스트할 수 있는 방법을 제공합니다. 구조화되지 않은 문제는 이미 무작위이기 때문에 프로그래밍하는 데 더 적은 리소스가 필요하거나 노이즈에 덜 민감할 수 있다는 아이디어였습니다. 그러나 지금까지 이 새로운 문제는 기존 양자 컴퓨터가 해결하기에는 너무 발전된 것으로 보입니다. Aaronson은 "이것은 이상한 문제입니다. 나는 그것을 정의할 생각은 하지 않았지만 돌이켜보면 NP 기반 문제에 대한 중요한 양자적 이점의 몇 가지 예를 가지고 있습니다"라고 말했습니다. 양자 세계의 다른 많은 문제들이 거의 해결 불가능한 문제에서 해결 가능한 문제로 바뀔까요? 이제 그렇게 생각하는 데에는 더 많은 이유가 있습니다. O'Donnell은 "이것은 양자 컴퓨터가 어떤 문제를 잘 해결하는지에 대한 우리의 견해를 어느 정도 변화시킵니다."라고 말했습니다.
위 내용은 양자 알고리즘은 새로운 종류의 문제를 해결합니다!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











GEMM(일반 행렬 곱셈)은 많은 응용 프로그램과 알고리즘의 중요한 부분이며 컴퓨터 하드웨어 성능을 평가하는 중요한 지표 중 하나이기도 합니다. GEMM 구현에 대한 심층적인 연구와 최적화는 고성능 컴퓨팅과 소프트웨어와 하드웨어 시스템 간의 관계를 더 잘 이해하는 데 도움이 될 수 있습니다. 컴퓨터 과학에서 GEMM의 효과적인 최적화는 컴퓨팅 속도를 높이고 리소스를 절약할 수 있으며, 이는 컴퓨터 시스템의 전반적인 성능을 향상시키는 데 중요합니다. GEMM의 작동 원리와 최적화 방법에 대한 심층적인 이해는 현대 컴퓨팅 하드웨어의 잠재력을 더 잘 활용하고 다양하고 복잡한 컴퓨팅 작업에 대한 보다 효율적인 솔루션을 제공하는 데 도움이 될 것입니다. GEMM의 성능을 최적화하여

WORD는 워드를 사용하여 다양한 텍스트를 편집할 수 있는 강력한 워드 프로세서입니다. Excel 표에서는 덧셈, 뺄셈, 승수 계산 방법을 익혔습니다. 따라서 Word 표에서 숫자의 덧셈을 계산해야 한다면, 승수를 빼는 방법은 계산기로만 계산할 수 있나요? 대답은 물론 '아니요'입니다. WORD도 그렇게 할 수 있습니다. 오늘은 Word 문서에서 수식을 사용하여 표의 덧셈, 뺄셈, 곱셈, 나눗셈 등의 기본 연산을 계산하는 방법을 함께 배워보겠습니다. 그럼 오늘은 WORD 문서에서 덧셈, 뺄셈, 곱셈, 나눗셈을 계산하는 방법을 자세히 보여드리겠습니다. 1단계: WORD를 열고 툴바의 [삽입] 아래 [표]를 클릭한 후 드롭다운 메뉴에 표를 삽입합니다.

Python의 count() 함수를 사용하여 목록의 요소 수를 계산하려면 특정 코드 예제가 필요합니다. 강력하고 배우기 쉬운 프로그래밍 언어인 Python은 다양한 데이터 구조를 처리하기 위한 많은 내장 함수를 제공합니다. 그 중 하나는 목록의 요소 수를 계산하는 데 사용할 수 있는 count() 함수입니다. 이번 글에서는 count() 함수의 사용법을 자세히 설명하고 구체적인 코드 예시를 제공하겠습니다. count() 함수는 Python의 내장 함수로, 특정 값을 계산하는 데 사용됩니다.

소개 행렬식을 이용하여 삼각형의 면적을 계산하는 자바 프로그램은 세 꼭지점의 좌표를 주어 삼각형의 면적을 계산할 수 있는 간결하고 효율적인 프로그램이다. 이 프로그램은 Java에서 기본 산술 및 대수 계산을 사용하는 방법과 Scanner 클래스를 사용하여 사용자 입력을 읽는 방법을 보여주기 때문에 기하학을 배우거나 작업하는 모든 사람에게 유용합니다. 프로그램은 사용자에게 삼각형의 세 점 좌표를 묻는 메시지를 표시하고 이를 읽어 좌표 행렬의 행렬식을 계산하는 데 사용합니다. 행렬식의 절대값을 사용하여 면적이 항상 양수인지 확인한 다음 공식을 사용하여 삼각형의 면적을 계산하여 사용자에게 표시합니다. 이 프로그램은 다양한 형식의 입력을 받아들이거나 추가 계산을 수행하도록 쉽게 수정할 수 있으므로 기하학적 계산을 위한 다용도 도구가 됩니다. 행렬식의 순위

두 개의 문자열 str_1과 str_2가 주어졌습니다. 목표는 재귀 프로시저를 사용하여 문자열 str1에서 하위 문자열 str2의 발생 횟수를 계산하는 것입니다. 재귀 함수는 정의 내에서 자신을 호출하는 함수입니다. str1이 "Iknowthatyouknowthatiknow"이고 str2가 "know"인 경우 발생 횟수는 -3입니다. 예를 들어 str1="TPisTPareTPamTP", str2="TP"를 입력하면 Countofoccurrencesofasubstringrecursi가 출력됩니다.

C#에는 많은 수학 함수가 포함된 Math 클래스 라이브러리가 있습니다. 여기에는 지정된 숫자의 거듭제곱을 계산하는 데 도움이 되는 거듭제곱을 계산하는 Math.Pow 함수가 포함됩니다. Math.Pow 함수의 사용법은 매우 간단합니다. 밑수와 지수만 지정하면 됩니다. 구문은 다음과 같습니다. Math.Pow(base,expont); 여기서 base는 밑수를 나타내고 지수는 지수를 나타냅니다. 이 함수는 double형 결과, 즉 거듭제곱 계산 결과를 반환합니다. 하자

널리 사용되는 범용 프로그래밍 언어는 Python입니다. 데스크톱 애플리케이션, 웹 개발, 기계 학습 등 다양한 산업에서 사용됩니다. 다행스럽게도 Python에는 초보자에게 적합한 간단하고 이해하기 쉬운 구문이 있습니다. 이 기사에서는 Python을 사용하여 행렬의 오른쪽 대각선의 합을 계산합니다. 매트릭스란 무엇입니까? 수학에서는 직사각형 배열이나 행렬을 사용하여 수학적 대상이나 그 속성을 설명합니다. 이는 행과 열로 배열된 숫자, 기호 또는 표현식을 포함하는 직사각형 배열 또는 테이블입니다. 예를 들어 -234512367574 따라서 3행 4열의 행렬이며 3*4 행렬로 표현됩니다. 이제 행렬에는 두 개의 대각선, 즉 주 대각선과 보조 대각선이 있습니다.

Java 프로그램을 사용하여 총점과 백분율을 계산하는 방법을 보여 드리겠습니다. 총점은 사용 가능한 모든 점수의 합을 의미하며, 백분율은 계산된 점수를 총점으로 나누고 결과 숫자 100을 곱한 것을 의미합니다. Percent_of_marks=(obtained_marks/total_marks)×100 예제 1 총점과 백분율을 계산하는 방법을 보여주는 Java 프로그램입니다. //Totalmarks 및 Percentages가 어떻게 계산되는지 시연하는 JavaProgramimportjava.io.*;publicclassTotalMarks_
