DNA Solution of the Hitting Set Problem 전기컴퓨터공학부 문승현, 김진.

Slides:



Advertisements
Similar presentations
CHAPTER 5 TOP-DOWN PARSING SUNG-DONG KIM, DEPT. OF COMPUTER ENGINEERING, HANSUNG UNIVERSITY.
Advertisements

Made by 주례 없는 결혼식♥ 대본 사회 : 홍길동.
6 장. printf 와 scanf 함수에 대한 고찰 printf 함수 이야기 printf 는 문자열을 출력하는 함수이다. – 예제 printf1.c 참조 printf 는 특수 문자 출력이 가능하다. 특수 문자의 미 \a 경고음 소리 발생 \b 백스페이스 (backspace)
1. 2 차원 배열  배열은 동일한 데이터 유형으로 여러 개의 변수를 사용할 경우 같은 이 름으로 지정하여 간편하게 사용할 수 있도록 하는 것으로서 앞에서 1 차원 배열을 공부하였습니다.  2 차원 배열은 바둑판을 생각하면 되며, 1 차원 배열에서 사용하는 첨자를 2.
.Net History. Visual Studio.Net 2002 /.Net Framework 1.0 제품의 버전 / 특징 2002 년 - Visual Studio.Net 2002 /.Net Framework 1.0 첫 통합 개발 환경 - C# 언어 등장 (C# 1.0)
지금 우리 지구는 HOT, HOT 에너지자원. 아이스에이지 2 시청 초 1-11 기후변화의 주된 원인인 지구 온난화 현상을 알고 온실가스의 영향을 실험을 통해 확인할 수 있다. 학습목표 초 1-11.
Molecular Computation Algorithm 과 그 Implementation 을 생각할 때에 고려해야 할 것 들에 대한 생각 잠깐 년, 2 월 22 일 이지연.
Format String Attack! 포맷 스트링 공격 경일대학교 사이버보안학과 학년 남주호.
재료수치해석 HW # 박재혁.
대학생 봉사단을 통한 경정사업 이미지 제고 ICARUS 조영호/염윤성.
Hamming Code 이근용. 2 Error Control Error Detection Parity Check CRC Check Error Correction Hamming Code.
Phosphorylation 전의 마지막 결과 2% agarose 10% PAA gel ( 첫번째 ) 대상 : HPP (0~6) lane 1: oligomer mixture lane 2: hybridization (70->37) lane 3: ligation (16 도,
Maximum Flow.
제 7 장 함수 사용을 통해 엑셀 정복하기.
2장. 프로그램의 기본 구성. 2장. 프로그램의 기본 구성 2-1"Hello, World!" 들여다 보기 /* Hello.c */ #include int main(void) { printf("Hello, World! \n"); return 0;
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
PCR (Polymerase Chain Reaction) Ⅰ
Learning Classifier using DNA Bagging
ANSYS17.2 Student 제품 무료 다운로드
분자생물학실험 Introduction.
나민영 서경대학교 컴퓨터공학과 CGVR Lab 같이만들어보자 5주차 OpenCV 설정 및 기초.
컴퓨터 계측 및 실습 D/A-converter
Ubiquitous Computing Practice - Part I (Installation) -
10장 함수.
실험 3 - 비선형 연산 증폭기 회로와 능동 필터 전자전기컴퓨터공학부 방 기 영.
Internet Computing KUT Youn-Hee Han
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
Error Detection and Correction
Javascript Basic Sample Programs
멀티미디어 시스템 (아날로그 이미지,신호를 디지털로 변환 방법) 이름 : 김대진 학번 :
Simulating Boolean Circuits on a DNA Computer
2007 1학기 11 프로젝트 기초 실습.
자료구조: CHAP 4 리스트 (3) 순천향대학교 컴퓨터공학과 하 상 호.
행렬 기본 개념 행렬의 연산 여러가지 행렬 행렬식 역행렬 연립 일차 방정식 부울행렬.
<소스코딩(Source Coding)> 제4장 가변길이 코드
프로그래밍 개요
Ⅲ-3. 생명의 연속성 5. 유전적 다양성과 현대의 진화
박성진 컴퓨터 프로그래밍 기초 [09] 배열 part 1 박성진
자료구조: CHAP 7 트리 –review 순천향대학교 컴퓨터공학과 하 상 호.
Chip-based Computing + UMDA
Quiz #7 다음 수들을 합병 정렬과 퀵 정렬 알고리즘을 이용하여 오름 차순으로 정렬하였을 때, 데이터 이동 회수를 각각 구하라. 여러분은 정렬 과정을 단계별로 보이면서 이동 회수를 추적해야 한다. 단, 퀵 정렬시에 피봇으로 배열의 왼쪽 첫 번째 원소를 선택한다. 5.
8장. 상호 배타적 집합의 처리.
‘Chess’를 읽고 컴퓨터공학부 배상수.
PCR (Polymerase Chain Reaction) Ⅱ
PADS Logic 회로도.
합집합과 교집합이란 무엇인가? 01 합집합 두 집합 A, B에 대하여 A에 속하거나 B에 속하는 모든 원소로 이루어진 집합을 A와 B의 합집합이라고 하며, 기호 A∪B로 나타낸다. A∪B ={x | x∈A 또는 x∈B}
돌연변이 생물교재론 양현주.
빌드 성공.
컴퓨터 계측 및 실습 디지털 출력 영남대학교 기계공학부.
끓는점을 이용한 물질의 분리 (1) 열 받으면 누가 먼저 나올까? 증류.
2nd day Indexing and Slicing
516-옳은 길 따르라 의의 길을 265.
알고리즘 알고리즘이란 무엇인가?.
장애인단체 간담회 마스터 제목 스타일 편집 마스터 제목 스타일 편집 장애인 단체 간담회 마스터 부제목 스타일 편집
이산수학(Discrete Mathematics)
DA :: 퀵 정렬 Quick Sort 퀵 정렬은 비교방식의 정렬 중 가장 빠른 정렬방법이다.
5장. 선택 알고리즘.
7주차: Functions and Arrays
Part 2 개념적 데이터 모델 Copyright © 2006 by Ehan Publishing Co. All rights reserved.
Homework #5 (1/3) 다음을 수행한 후, 결과 파일들을 출력하여 제출한다.
쉽게 배우는 알고리즘 2장. 점화식과 점근적 복잡도 분석
9 장 오류 검출 및 오류 정정 9.1 오류 종류 9.2 검출 9.3 오류 정정 9.4 요약.
Homework #3 (1/3) 다음을 수행한 후, 결과 파일들을 출력하여 제출한다.
제 29 강 스트링(string) 다루기 s a i s . s T i h t g r i n.
07. DB 설계 명지대학교 ICT 융합대학 김정호.
DNA Implementation of Version Space Learning
김선균 컴퓨터 프로그래밍 기초 - 12th : 문자열 - 김선균
개정판 누구나 즐기는 C언어 콘서트 제13장 동적 메모리 출처: pixabay.
(Permutations and Combinations)
C++ Espresso 제15장 STL 알고리즘.
Presentation transcript:

DNA Solution of the Hitting Set Problem 전기컴퓨터공학부 문승현, 김진

What is a Hitting Set Problem? A kind of NP-Complete problem INSTANCE: Collection C of subsets of a finite set S, positive integer K≤|S|. QUESTION: Is there a subset S’ ⊆ S with |S’|≤K such that S’ contains at least one element from each subset in C? EX) –Instance: {A, B, C}, {B, C}, {B, D}, {D, E}, K=2 –Answer: {B, D}, {B, E}

DNA Representation 집합을 binary 로 표현 – 전체집합 S 의 원소 각각을 S1, S2, …, Sn 이라 하 면 있는 것을 1, 없는 것을 0 으로 나타냄 – 예 ) S={A, B, C, D, E} 인 경우 {B, D} = Use modified Lipton encoding exhaustive search 로 해를 찾아내기 위해서 전체집합의 모든 부분집합을 생성 –Use a kind of mix-and-split combinatorial synthesis technique

Algorithm 1. 전체집합 S 의 모든 부분집합을 만든다 2.1. 에서 만든 부분집합 중 입력의 각 원소를 하나 이상 포함하고 있는 것을 남기고, 나머지를 제거 한다. 입력이 {B, E} 라면 B, E 두 원소 중 적어도 하나는 갖는 집합만을 남기고, 나머지는 버림 3. 입력의 모든 집합에 대해서 2. 를 반복한다. 4. 마지막 단계에 이르면 hitting set 만 남는다. 이 중 에서 가장 짧은 것을 찾는다 에서 찾은 것의 길이가 K 보다 작은지 확인한다.

The computer

Computation process 1. 앞에서 보인 장치의 hot chamber 에 라이브러리 모듈을, cold chamber 에는 첫 번째 집합 모듈을 삽입하고 전기영 동을 시작한다. – 첫 번째 집합의 원소 중 하나라도 가지고 있는 library strand 는 capture layer 에서 잡힐 것이고 그렇지 않은 것들은 buffer reservoir 로 흘러나갈 것이다 2. 각 모듈을 제거하고 box 를 씻은 다음 새로운 버퍼로 채운 다. –hot chamber 에는 이전 단계의 cold chamber 에 있던 모듈을, cold chamber 에는 두 번째 집합 모듈을 삽입 3. 모든 집합에 대해서 Step 2 를 반복한다. – 마지막 단계의 종료시점까지 남아 있는 library strands 가 hitting set 이다. 다음 단계에서 이 중 짧은 것을 골라내야 한다.

Determination of the answer 가장 원소 수가 적은 library strand 를 해로 선택해야 한다. 1. 전기영동 (electrophoresis) 을 통해 마지막 단계까지 남은 것들을 길이 순으로 정렬 2. 가장 짧은 것을 골라내 PCR-amplify 를 한 다. 3. 이것의 sequence 를 분석하여 그 길이를 K 와 비교한다.

Simulation Result 옳은 해가 살아남을 확률과, 잘못된 해가 살 아남을 확률을 각각 살펴본다. 전체집합의 원소 개수가 20 개인 hitting set 에 대하여 –2250 개 중복된 입력에서 평균 70 개 정도가 살아 남는다. 이것은 PCR amplification 을 통해 쉽게 늘릴 수 있다. – 한 단계에서 잘못된 해가 남을 확률은 0.003% 정도인데 같은 과정을 20 회 반복하므로 최종단 계까지 남을 확률은 매우 적다.

Conclusion Adleman(2002) 의 방법을 Hitting Set Problem 에도 어렵지 않게 응용할 수 있다. 중간과정에서 에러가 나올 수 있으나 전체 과정으로 보면 충분히 해결 가능함 전체 집합 크기가 30 개인 경우까지 해결 가 능