규칙 조건부의 지식을 표현하는 IF-THEN형태의 문장이다. ex) ▷IF 연료통이 빈다 THEN 차가 멈춘다. // 인과관계 ▷IF 여름철이다 AND 날이 흐리다 THEN 우산을 가지고 가라 // 추천 ▷IF 차가 멈췄다 AND 연료통이 비었다 THEN 주유를 한다 // 지시 ▷IF 차가 멈췄다 THEN 연료통을 확인한다 AND 단계1을 끝낸다 // 전략 IF 단계1이 끝났다 AND 연료통은 충분히 찼다 THEN 배터리를 확인한다 AND 단계2를 끝낸다 ▷IF 시료가 액체이다 AND 시료의 PH가 6미만이다 AND 냄새가 시큼하다 // 휴리스틱 THEN 시료는 아세트산이다 Logic(로직) Logic은 결론이 도출될 수 있도록 정보를 표현할 수 있는 형식적 언어이다. Syntax는 문장의 문법이다. S..
추상화 추상화란 문제를 단순화시켜 불필요한 부분을 제거하고 핵심 요소와 개념 또는 기능을 간추려 일반화된 모델을 만드는 과정이다. 실제 세계의 문제는 매우 복잡하기 때문에 인공지능에서 문제를 풀기 위해 단순화 과정이 필요한 것이다. 탐색 전략 선택의 4가지 기준 - 완전성 : 해가 있다면 반드시 찾을 수 있는가? - 시간 복잡도 : 얼마만큼 노드를 확장해야 목표상태에 도달할 수 있는가? - 공간 복잡도 : 메모리 공간에 저장할 수 있는 최대 노드의 개수는 몇 개인가? - 최적성 : 가장 적은 비용이 드는 최적의 해를 찾을 수 있는가? BFS vs DFS BFS DFS 완전성 Yes No 시간 복잡도 O(b^(d+1)) O(b^m) 공간 복잡도 O(b^(d+1)) O(bm) 최적성 Yes No BFS는 완..
강한 인공지능과 약한 인공지능 강한 인공지능은 인간과 같은 사고와 인간과 같은 행동을 한다. 인간과 같은 사고는 인간과 유사한 사고 및 의사결정을 내릴 수 있는 시스템을 말하고, 인간과 같은 행동은 인간의 지능을 필요로 하는 어떤 행동을 기계가 따라 할 수 있는 시스템을 말한다. 약한 인공지능은 논리적 사고와 논리적 행동을 한다. 논리적 사고는 계산 모델을 통해 지각,추론,행동같은 정신적 능력을 갖춘 시스템을 말하고, 논리적 행동은 계산 모델을 통해 지능적 행동을 하는 에이전트 시스템을 말한다. 튜링 테스트 튜링 테스트는 인공지능이 사람과 동일하게 생각하는지 테스트하는 1950년 앨런 튜링이 제안한 기법이다. 질의자 하나와 응답자 둘을 준비한다. 질의자는 사람이고 응답자는 사람과 컴퓨터이다. 사람과 컴퓨..
논리적 주소는 주소 프로그램이 실행되는 동안 CPU에 의해 생성된 것이다. 논리 주소는 물리적으로 존재하지 않는 가상 주소다. 물리적 주소는 메모리의 물리적 위치를 식별하는 기억장치가 취급하는 주소이다. 논리 주소는 MMU(기억장치관리기)라는 하드웨어 장치에 의해 해당 물리적 주소에 매핑된다. 논리적 주소 공간 : 프로그램에 의해 생성된 모든 논리 주소의 집합 물리적 주소 공간 : 이 논리적 주소에 상응하는 모든 물리적 주소의 집합 논리적 주소와 실제 주소의 다른 점을 기술하시오. 논리적 주소와 실제 주소의 차이점은 첫 번째로 논리적 주소는 중앙처리장치(CPU)가 생성한다는 것이고, 물리적 주소는 기억장치에 존재하는 위치라는 것이다. 두 번째로 논리적 주소는 메모리 장치에 물리적으로 존재하지 않는 가상 ..
덮어쓰기 r : 커서 위치한 곳의 문자를 다른 한 문자로 교체 R : 현재 커서 위치에서부터 ESC를 칠 때까지 계속 덮어쓰기 s : 현재 커서 위치에 있는 문자를 $로 변경하고 ESC를 칠 때 까지 계속해서 문자 삽입 단어 바꾸기 cw 현재커서 위치로부터 그 단어의 마지막까지 수정, 수정 후 ESC를 누르면 된다. 라인 바꾸기 cc 현재 커서가 위치한 라인 내용을 모두 바꿈 라인은 공백으로 변경되고 공백에 변경할 내용 입력한다. 입력이 종료되면 ESC키를 눌러 변경이 종료됨을 vi에게 알려야 한다. C 또는 c$ 현재 커서 위치에서 왼쪽 내용을 변화시키지 않고 오른쪽 내용을 모두 바꾼다. 그 라인의 가장 끝에 있는 문자가 $로 표시되어 수정가능 영역을 표시해준다. 수정 후 ESC를 누르면 된다. ~ 대..
화면 단위 조정 ctrl + f : 한 화면씩 파일의 앞으로 이동한다. (아래로) ctrl + b : 한 화면씩 파일의 뒤로 이동한다. (위로) ctrl + d : 반 화면씩 파일의 앞으로 이동한다. ctrl + u : 반 화면씩 파일의 뒤로 이동한다. ctrl + e : 한 라인씩 파일의 앞으로 이동한다. ctrl + y : 한 라인씩 파일의 뒤로 이동한다. 커서의 이동 화살표키로 이동하는 방법이 있고, 키보드의 h,j,k,l 문자를 통해 이동하는 방법이 있다. h : 한 문자 왼쪽 / j : 한 라인 아래쪽 / k : 한 라인 위쪽 / l : 한 문자 오른쪽 현재 화면에서의 커서 이동 현재 화면을 유지하면서 화면의 상단, 중간, 하단으로 빠르게 이동하는 명령어다. H : 커서를 현재 화면의 첫 칸으로..
유닉스의 기본 개념 유닉스의 정의 : AT&T의 Bell 연구소에서 개발된 하나의 운영체제다. 유닉스의 특징 : 다중 사용자(Multiuser)와 멀티 태스킹(Multitasking) 기능을 가진 대화형 시스템 이식성과 확장성 용이 트리 형태의 계층적 구조로 된 파일 시스템 네트워킹 기능 자원의 공유 - 프로세스가 CPU시간을 "시간조각"으로 나누어 CPU를 공유한다. - 메모리를 페이지 단위로 나누어 프로세스간에 공유한다. 시스템 프롬프트 유닉스 시스템에 사용되는 프롬프트는 $, %, # 등이 있다. 슈퍼유저 또는 일반 사용자에 의해 프롬프트 모양을 변형하여 사용할 수 있다. 시스템 프롬프트 종류 : - $ : Bourne Shell 프롬프트 - % : C Shell 프롬프트 - # : 주로 시스템 슈..
프로세서 : 컴퓨터 내에서 프로그램을 수행하는 하드웨어 장치이다. 이는 중앙처리장치를 뜻한다. 프로세스의 정의 : 사용자가 임의의 프로그램을 실행시키는 명령을 지시하면 운영체제는 저장되어 있는 프로그램을 주기억장치에 저장한다. 주기억장치에 있는 프로그램은 중앙처리장치(CPU)에 의해 실행되거나 실행 준비 상태에 있는데, 이러한 프로그램을 프로세스라고 부른다. 프로세스의 공인된 정의가 없는 이유 : 실행 중인 프로그램, PCB를 지닌 프로그램, 프로그램 카운터를 지닌 프로그램, 능동적 개체로, 순차적으로 수행하는 프로그램 등 상황에 따라 프로세스는 다양하게 정의되기 때문이다. 프로세스란 현재 실행 중이거나 곧 실행이 가능한 PCB를 가진 프로그램이다. 하나의 프로세스는 중앙처리장치의 실행과 입출력 대기 등..