Study 88

VB 에서 WebBrowser 컨트롤을 통해 HTML 문서 내에 값을 가져오는 방법 (다음 OpenMap 예제 포함)

VB에서 WebBrowser 컨트롤을 통해 HTML 문서 내에 특정 Tag의 값을 가져오는 방법임. 우선 VB Form에는 다음과 같은 객체를 추가함. 객체 명 속성 값 Form (이름) frmMain WebBrowser (이름) WebBrowser1 Commandbutton (이름) cmdLatLotApp TextBox (이름) txtLatitude TextBox (이름) txtLongitude 배치는 무관하며 Form에 위치시키면 됨. 각 컨트롤의 역활은 다음과 같음. frmMain : 메인 폼, 메인 프로그램 UI가 됨. WebBrowser1 : HTML 문서를 볼 수 있도록 해주는 웹브라우저 역활을 담당함. cmdLatLotApp : 버튼을 클릭시에 WebBrowser1에서 위/경도 값을 가져와 ..

Study/Programming 2009.11.05

JAVA에서 JDOM 1.1.1 연결 방법 (예제)

JDOM 1.1.1과 그 이전 버전과의 일부 차이 점이 있어 좀 시간이 걸리긴 했다. 역시 제공된 example를 적극 이용했어야 했는데... 크응... 우선 jdom.jar를 eclipse에 referenced libraries에 추가하고... import java.io.*; import org.jdom.*; import org.jdom.input.*; import org.jdom.output.*; import org.omg.CORBA.Object; import java.util.*; public class XMLtest { public static void main(String[] args) throws Exception { // [1] SAXBuilder builder = new SAXBuilder..

Study/Programming 2009.11.04

인공 신경망(Artificial Neural Network)

■ 인공 신경망이란? - 인간의 두뇌와 신경 시스템을 닮은 정보처리소자 - 연결주의 기법 - 뉴런들을 연결하여 문제해결 모델을 만듬 -- 출처 : http://ipcp.edunet4u.net/~teacher07/bio1/biopic3/%EB%89%B4%EB%9F%B0.gif - 뉴런 : 신경계의 기능적 최소단위 - 세포체 : 일정기간 동안 들어온 자극은 세포체내에 가중되고 임계치 보다 크면 뉴런을 활성 - 수상돌기 : 인접 뉴런들로부터 정보를 받아들이는 통로 역할 - 축색돌기 : 정보를 전달하기 위한 통로 - 시넵스 : 전달되는 신호의 크기를 조절 ■ 인공뉴런의 구조 - 인공뉴런의 구조 -- X1부터 Xn까지 입력 값에 각각 W1부터 Wn까지의 가중치를 곱하고 그 모든 합이 변형함수를 통해 임계치가 초과..

유전 알고리즘(Genetic Algorithm)

■ 유전 알고리즘이란? - 다윈의 유전법칙에 기반 - 자연 선택 또는 적자 생존의 원칙에 입각한 알고리즘 - 진화의 결과 : 염색체형태로 저장(DNA:C.G.A.T) - 개체군(population)중에서 환경에 대한 적합도(fitness)가 높은 개체일수록 재생산할 수 있게 되며, 개체군은 환경에 적응을 할 수 있게 됨 ■ 유전 알고리즘의 연산자? - 재생산(Reproduction)(재생,번식) -- 새로운 세대 생성시 부모 염색체의 일부를 임의로 선택하여 재조합 -- 적합도가 높은 개체일수록 다음 세대에 자식 개체들이 번식할 가능성이 높아짐 - 돌연변이(Mutation)(변화,돌연변이,변종) -- 유전자의 일부를 임의로 변화 - 교배(Crossover)(염색체의 교차형) -- 염색체상에서 임의의 위치를..

KISS와 SMILE 그리고 게으른 프로그래머의 십계명

다음은 연구실 프로젝트로 VB를 통해 UI를 개발할 때 참고한 도서에서 매우 맘에 드는 내용을 발취한 것이다. 한번 쯤 읽어보는 것을 추천한다. (물론 이런 유사한 글은 많이 존재한다.) KISS 원칙 (Keep It Simple, Stupid) Visual Basic에서 장기적으로는 지나치게 복잡한 프로그램은 간단한 프로그램보다 더 많은 문제를 일으킨다는 것이다. 간단한 프로그램은 이해하기 쉽기 때문에 나중에 수정하거나 전체를 디버깅하는 것이 쉽다. (특히 다른 사람이 수정해야 할 경우에는) 간단한 프로그램이 사용되지 않는 여분의 특성에 의해 발생하는 많은 짐을 옮기지 않기 때문에 더욱 효과적일 수도 있다. 그러나 간단할수록 좋다는 철학이 항상 옳은 것은 아니다. Heap sort은 Bubble sor..

Study/Etc. 2009.04.21

마소에 실린 김창준 (마이크로소프트웨어) 씨가 쓴「프로그래머를 위한 공부론」[펌]

이 글은 공부하는 방법과 과정에 관한 글입니다. 이 글은 제가 공부한 성공/실패 경험을 기본 토대로 했고, 지난 몇 년간 주변에서 저보다 먼저 공부한 사람들의 경험을 관찰, 분석한 것에 제가 다시 직접 실험한 것과 그밖에 오랫동안 꾸준히 모아온 자료들을 더했습니다. '만약 다시 공부한다면' 저는 이렇게 공부할 것입니다 부디 독자 제현께서 이 글을 씨앗으로 삼아 자신만의 나무를 키우고 거기서 열매를 얻고, 또 그 열매의 씨앗이 다시 누군가에게 전해질 수 있다면 더 이상 바랄 것이 없겠습니다. 이 글은 특정 주제들의 학습/교수법에 대한 문제점과 제가 경험한 좋은 공부법을 소개하는 식으로 구성됐습니다. 여기에 선택된 과목은 리팩토링, 알고리즘·자료구조, 디자인패턴, 익스트림 프로그래밍(Extreme Progr..

Study/Etc. 2009.04.01

AI 졸업고사 단순정리

1. AI를 engineering과 science의 관점에서 비교? - 사고과정 + 추론을 통한 지능적 행동(intelligence behavior)에 관련된 연구를 하는 학문 - 기계가 사람처럼 사고하고 행동할 수 있는가? 혹은 이성적으로 판단하고 행동할 수 있는 가를 연구함 - engineering 분야 : 실제 지능적으로 사고, 행동할 수 있는 intelligence machine을 만들기 위해 요구되는 개념이나 이론, 실습 등에 관련된 연구 분야 - science 분야 : 사람이나 동물이 자연생태에서 사고하고 행동하는 일련의 과정들을 탐구하고 분석하여 관련된 개념이나 원리를 연구하는 분야 (예-인지과학) 2. Turing test - 기계가 생각하고 있는가를 판정하는 시험 (Alan Turing..