2012년 3월 19일 월요일

Graphm , Network 관련 정리

1. markov random field

a set of random variables having a Markov property described by an undirected graph

2. Bayesian network

 a probabilistic graphical model (a type of statistical model) that represents a set of random variables and their conditional dependencies via a directed acyclic graph (DAG).

 - Bayesian network 와 markov random field가 비슷하지만, Bayesian network 는 DAG인데 반해, markov random field 는 cyclic dependencies 를 표현 할 수 있다.

- 하지만 induced  dependencies 와 같은 어떤 dependencies 는 표현할 수 없다.

3. Clique

2012년 1월 3일 화요일

Android Async Task

안드로이드 개발시에

E/AndroidRuntime(1127): Caused by: android.os.NetworkOnMainThreadException

위와 같은 에러가 발생 할 수 있다.

허니콤 이후의 안드로이드 개발에 일어날 수 있는 일로,

Main Thread에서 Network등을 이용하면서 Main thread UI를 block할 시 일어나는 Exception이다.

Main에서 예를 들면, onCreat함수에서 Network의 값을 받아온 다음,
그것으로 EditText를 setText하려고 할 때 나타나는 문제점이다.

이때 해결책이 AsyncTask이다.

아래는 레퍼런스이다.
http://developer.android.com/reference/android/os/AsyncTask.html

위 레퍼런스대로 하면, 쉽게 Background에서 작동하는 Task를 만들 수 있다.

2012년 1월 2일 월요일

구글 DNS 서버 이용

기존  학교 DNS 서버를 이용하다가

구글에서 서비스 중인 Free DNS 서버가 있다고 해서

적용해보았다.

더빠른듯.

주 DNS 서버 를 8.8.8.8, 보조 DNS를 8.8.4.4로 하면 된다.

2011년 12월 18일 일요일

올해 만들었던 프로그램

1. 정보검색
 - c / c++ / stl을 이용하여 검색엔진 구성

  * Script Language 를 c와 c++에 연동해서 쓰는 연습이 필요
  * STL에 대한 이해도가 아직 부족 ( Templete을 쓰는 법? )
  * Memory Allocation에 대한 이해도가 부족


2. Database
 - 윈도우 ( Apache 서버, Apache 톰캣 연동 ) , jsp 서버 파트 코딩,
 - Android client 프로그램 코딩
 - GWT를 이용한 server client 코딩

  * 프로젝트 시작 전에 설명서를 읽고 도구에 대해 이해하는 것이 필요
  * Linux Server 구축을 다음에 해볼것
  * Ajax에 대해 GWT로만 코딩을 해봐서 한계점에 도달
  * Android의 Error Handling이 전혀 안됨
  * Android나 GWT로 코딩시, 큰 프로젝트는 거의 짜기 힘든 실정 ( 객체화가 안됨 )


3. 인터렉티브 컨텐츠 프로그래밍
 - Kinect - Unreal3D 연동 ( NIUI )
 - Unreal 3D Development Kit

  * UDK는 노트북에서 돌리지 말자.

4. 졸업프로젝트
 - Site의 Classifier구축 ( Rejected )
 - 댓글을 통해 HITS 구현

5. 개인적 아르바이트
 - c#공부, Genetic Algorithm 공부

=======================================================================

< 방학 목표 >
1. 대학원 진학 준비로 영어 .
 - 졸업요건 맞추기
 - 논문 읽을 준비로.

2. C# 및 Script lang 배우기

3. Data Mining 책 읽기

2011년 11월 12일 토요일

GWT 의 Remote Procedure Calls

http://code.google.com/intl/ko-KR/webtoolkit/doc/latest/tutorial/RPC.html 를 참조하였다.

---------------------------------------------------------------------------------

GWT를 이용하면 JAVA 개발 환경을 거의 그대로 유지하면서
Web Programming을 한다는 장점이 있다.
그리고 ajax를 쉽게 이용하여  한 페이지 내에서 동적으로 사용자의 입력을
처리할 수 있다는 장점도 있다.

하지만 궁극적으로 DB Server와 Web Server는 분리되어 있기 때문에,
client와 server사이의 web application의 자바 object를 주고 받아야 한다.

이것을 해주는 것이 GWT RPC ( Remote Procedure Control ) 이다.
GWT RPC Plumbing


3가지 파트로 나눠지게 되는데,

 1. Server에서 돌아가고 있는 서비스
 2. service가 일어나게 하는 client의 코드
 3. client side의 코드에서 부르는 asynchronous interface를 정의한다.


----------------------

1.  Service를 정의