2005년 10월 11일 화요일

고1

고1때 꿈은 딱 한가지였다.
KAIST 박사가 되서 대덕연구단지에서 평생 로켓 같은 거 만드는 것.
과학고 처음 입학하던날
학교 건물 앞에 광주과학고 출신 KAIST 박사 학위자 명단이 붙어있었다.
'나도 11년 쯤 뒤에는 저기 이름이 올라가 있을 수 있을 까?'하고 생각했는 데.
모르겠다. 지금도 그거 붙어 있을 지.
그리고 학교 건물을 휘감듯 걸려있는 과학고 합격자 플랑카드.


그 때 같이 수업듣던 친구들 중에 이제 남은 친구가 몇 명이나 될까?
상욱, 민원, 대진, 휘중, 미리, 혜영(3명이나 유학갔네).


어떻게 그렇게 미치게 공부했는 지 모르겠다.
아침 6시반부터 밤 12시까지.
밥먹는 시간, 쉬는 시간, 자는 시간 빼면 책 밖에 안 봤다.
(가끔 수다도 떨지만 1시간 정도..)


시험도 하루에 5~6과목씩 보고(과목당 1시간씩).
교과서만 거의 10~15권이었나?
(국어(작문, 문학),영어,수학,물리,화학,생물,지구과학,사회,윤리,음악 등.)
과목마다 참고서도 1~2권씩.


어떤 교과서, 문제집이든 2번은 읽고 시험봤던 것 같다.
지금은 한 번 읽고 보는 것도 거의 없다.
고등학교 스타일로 공부했다면 지금도 A0는 받을 지도 모르겠다.


모르는 것이 너무 많고 스스로 결정하고 해결해야 할 것도 많고
책만 가지고는 부족하고 알아서 찾아서 해야하다보니
주눅도 들고 많이 포기했나보다.
고등학교보다 대학 때 더 열심히 살아야 하는 건데.


뭐 지금은 다시 하라고 해도 못할 것 같기도 하다.
그 때는 너무 피곤해서 쉬는 시간에도 자고 점심시간에도 자고
수업시간에도 엄청나게 졸았다.
허리도 아프고 밥맛도 없고 곧 힘들어서 죽는 줄 알았다.

2005년 10월 10일 월요일

[기사]"“벌써 쉴 수야”… 50대이상 월평균 취업자 600만명 육박"

http://news.media.daum.net/edition/workshop/200510/10/donga/v10405400.html


음. 우리나라 대부분 기업은 60세 정년인데, 50세로 잡다니.
역시 실제 정년보다 명예퇴직이나 권고사직이 많은 가보다.


그리고 사실 보험회사, 투자회사 사람들이 겁주는 것만큼
노년에 놀면서 먹는 것은 아니다.


나이 들어도 생각보다 할 일이 많이 있다.
그리 쉬운 일도 아니고 병들면 어쩔 수 없지만 비정규직 근무들을 많이 한다.
식당 - 이건 솔직히 매우 힘들다.
패스트푸드점 - 나이든 직원들이 점점 늘고 있다.
빌딩 청소부 - 고급 빌딩들은 대부분 청소일이 그리 힘들지 않다.
              좋은 장비들이 많은 편이니까. (coex 같은 곳)
              이것도 백이 있어야 들어간다.
아파트, 빌딩 경비원, 수위
잡부 - 젊었을 때부터 노가다 했던 사람들이 사실 요령이 더 있다.
농사 - 이것도 젊어서부터 밭일, 논일 햇던 사람들.
       우리 할머니는 70대 이신데, 아직도 시골에서 밭농사 지으시며
       혼자 사신다. 고향이 너무 좋으셔서 광주로 오시지 않는 듯.
꽃배달 - 요즘 잘 나가는 노인 알바
전단지 배포 - 이것도 할머니들이 학원가에서 아침마다 한다.
상담가 - 상당히 고급 직업이라고 할 수 있는 데,
         지식과 정보가 많은 노인이라면 괜찮은 직업이다.
         (나이들어서도 공부 많이 해야 한다.)
         사실 그리 활성화 되어 있지는 않지만
         사회가 dynamic해질 수록 스트레스도 많이 받고 불안해하는 사람도 많이지니까.


젊었을 때 몸을 어떻게 관리했는 지, 질병의 유무에 따라 50대 이후의 삶은 정말로 달라질 수 있다.
건강한 사람은 70대까지도 일을 할 수 있고
아닌 사람은 50대만 넘어도 아프고 돈도 못 벌고 굶어 죽을 수도 있다.
건강이 정말 재산이다.(금전적으로도 차이가 많이 나게 된다.)


그리고 고령화 사회가 되도 사회를 운영하기 위해 필요한 최소 인원이
존재할 수 밖에 없는 데, 결국은 정년을 연장하거나 재취업을 시킬 수 밖에 없다.


그동안 젊은 사람들이 진보적이고 나이든 사람이 보수적이었던 것은
나이들면 안정적으로 삶을 살 수 있었기 때문인데,
나이들어도 충분한 돈이 없다면 진보적이 될 가능성도 상당히 크다.
따라서 고령화가 되도 사회의 dynamicity도 잘 유지할 수 있지 않을 까?


사실 나이가 들면 육체적인 것은 많이 떨어지지만
정신적인 활동은 그리 감소하지 않는 다는 주장도 많다.
과거의 마인드를 버리지 못해서 그럴 뿐.
과감히 과거를 잊고 처음부터 다시 배운다면 제 2의 인생을 살 수도 있다.


 

수영

대진이 덕분에 8시에 일어나서 수영장에 갈 수 있었다.
수영 1시간하고 샤워하고 밥 먹고 방에 돌아오니 10시.


어차피 수영장에 가지 않았으면 늦잠이나 잤을 테니
2시간이라도 상당히 괜찮은 것 같다.
아침에 샤워하고 밥 먹으면 원래 1시간 걸리니까
수영을 하게 되서 1시간을 더 쓴 셈.


나중에 9시 수업이 있게 된다면 어떻게 해야 할지 잘 모르겠다.
(수영장도 한 6시부터 이용할 수 있으면 좋을 지도.)


친구가 가르쳐 준대로 자유형을 해보려니 상당히 어렵구만.


포인트)
. 자유형
물 속에서 팔을 곧게 펴고 특히 허리 근처로 팔이 왔을 때, 물을 수직으로 밀 것. 끝까지 팔을 펴고 물을 밀어야 앞으로 잘 나간다.
한 팔을 저을 때 다른 팔도 앞에서 쉬지말고 두 팔이 180도가 되게 계속 빙글빙글 저을 것.
발차기를 할 때는 허벅지에 힘을 주고 종아리에는 힘을 뺀다.
다리를 곧게 펴고 발을 찬다.
다리가 물 밖으로 첨벙거려봤자 앞으로 나가지 않는 다.
수영장에 가면 먼저 키판을 가지고 발차기만 2~3바퀴, 손젓기만 2~3바퀴 하는 것도 좋다.


. 평영
고개가 물 속으로 들어갈 때는 턱을 아래로 당긴다.
고개가 물 밖으로 나올 때는 턱을 위로 젓힌다.
고개가 올라오게 팔을 저을 때는 팔굼치가 닿게 확실이 물을 짜준다.
발차기를 한 후 팔을 쭉 펼 때는 고개도 숙여주고 확실히 앞으로 나가게 약간 시간을 둔다.


 

공부

학자가 되려고 한다면 공부하는 게 자연스러워져야 한다.
그리고 KAIST생이라면 학교가 자연스러워져야 한다.
사실 KAIST 같은 곳에서 4년 ~ 10년이나 산다면
단지 학교라고 볼 수는 없고 삶의 일부다.
그 안에서 하는 일들은 공부만이 아니다.


사람들도 만나고 운동도 하고 변하는 세상도 바라보고
취미 생활도 하고 기쁠 때도 있고 슬플 때도 있다.
투표를 하면서 정치 활동도 한다.
빨래도 하고 밥도 먹고 노래도 하고 잠도 자고 MT, 은행, 도서관, 우체국, 옷도 사야 한다.

1억

1억.
대략 내가 석사, 박사를 이 학교에서 하게 되었을 때 지불해야 하는 기회비용이다. (그 기간 동안 대기업 사무직에 취직한다고 치면)


경제학적으로 말하자면 몇 가지 해석이 있다.
. 내가 미쳤거나
. 최소한 1억원만큼 행복(happy, satisfy, utility)하게 살아야 한다.


평생 7억쯤 번다고 치면 경제적으로는 내 인생의 14%를 건셈이다.
시간으로 치자면 인생의 15%.
10살 이후 각 나이대에 내 인생에 끼치는 영향을 1/나이라고 하면 21%.
(사실 이렇다면 인생의 25%가 결정된 셈)


사람 많은 뭐든 많은 서울도 포기한거다.
매일 볼 수 있는 화려한 삶들과 문화적 혜택들.
뭘하든 그 만큼은 열심히 살아야 한다.


시간있을 때마다 바깥세상이 얼마나 바뀌었는 지도 귀 기울여야지.
그 긴 시간동안 얼마나 세상은 또 바뀌려나.

[펌]Kingdomality test

http://www.wjthinkbig.com/kingdomality/kingdom.html


 


당신의 인성 유형은 ‘발견자(Discoverer)’이다. 발견자는 중세에 번성했던 대부분의 왕국에 존재했던 역할이다. 당신의 최우선 목표는 아무도 예전에 가보지 않았던 곳을 밟아보는 것이다. 당신은 당장 해결해야 할 문제가 얼마나 많은지는 개의치 않고, 스스로 새로운 상황과 장애를 창조함으로써 끊임없이 자신에게 도전하는 사람이다. 실로 당신은 사람과 장소, 사물, 사상을 캐는 데 만족을 모르는 탐험가이다. 당신은 뭔가 새롭고 색다른 것, 그리고 지속적인 변화를 토대로 성장한다. 당신의 긍정적인 측면은 합리적인 창의성과 열린 마음, 공정성 등이다. 부정적인 측면은 현실성 결여와 우유부단함이다. 흥미롭게도 당신의 인성 성향은 오늘날의 기업 왕국에도 잘 들어맞는다.


@ 금 캐러 갈까..


 

2005년 10월 9일 일요일

[논문]The Design of an Acquisitional Query Processor For Sensor Networks

Acquisitional query processing(ACQP)
. where
. when
. how often (sample, periodic)

. query processing operator
. locations and costs of data
. reduce power consumption(low-power, energe efficient)

1. query language
2. query parsing
3. query optimization
4. query dissemination(대상이 되는 sensor들에게 분배)
5. query execution(결과를 얻어옴)

TinyDB
. a distributed query processor for smart sensor devices
. on TinyOS
. on Berkeley Mica mote platform

Smart sensor device
. large, distributed network
. wireless, battery-powered
. autonomous node
. without human interaction
. lifetime : weeks~months(long term)
. monitering, collect data

. aggregation operations
. filtering operations
. push-down techniques
. minimize communication

. indexing
. stream processiong
. approximate query answering

. routing tree
  . query propagation(forward)
  . basestation - the root of the network
  . hop-count(= level) - distance from the root
  . parent : root에 한 단계 더 가까운 node
  . multi-parent = different root = simultaneous query

. environmental monitoring deployment
. earthquake monitoring
. building infrastructure monitoring
  . occupancy
  . coming or going
  . humidity, temperature
  . battery나 sensor를 한 번 교체하려면 돈이 매우 많이 듬.

Mica mote
. duty cycle
  . 100% - a few days
  . 2%(1.2sec/min) - 6 month(2 AA battery)
. 4Mhz, 8bit Atmel
. RFM TR1000 radio
  . range : 1~100 feet
. 40 kbits/sec single shared CSMA channel
. 1048bytes messages(TinyDB default)
. energy consumption
  . 1 bit data transmit = 1,000 CPU instruction
. 32kHz clock : +-1ms accuracy with neighbor
. mode
  . snoozing mode - idle, waiting for timer(or external event)
  . processing mode - local query result
  . processing and receiving mode - collect result
  . transmitting mode - deliver data
. communication
  . multi-hop = relay
  . broadcast
  . snoop - message를 감시함
  . link-level(lan card나 device레벨) ack
  . No end-to-end ack
  . ad-hoc - topologies automatically discovered

. ACQ Language
  . SELECT-FROM-WHERE
  . selection, join, projection, aggregation
  . sampling, windowing, sub-queries via materialization point
  . sample interval
  . epoch - 한 sample기간내
  . one column per sensor type
  . virtual table = unbounded
  . output - timestamp, data

. materialization point?
. materialized view?
  . http://www.databasejournal.com/features/oracle/article.php/2192071
  . http://www.cs.ncl.ac.uk/teaching/facilities/swdoc/oracle9i/server.920/a96540/statements_63a.htm
  . a database object that contains the result of a query
  . local copies of data located remotely
  . copies of remote data on your local node
  . read-only
. storage point?
. landmark query?
. query id
  . issuer가 query id를 가지고 stop 명령을 내릴 수도 있음.

. occupancy detection
  . sound volume을 통해서 알아냄.

. event based query
  . polling based trigger가 event based trigger보다 에너지를 많이 쓴다.

. lifetime based query
  . lifetime estimation
    . 사람들은 사실 power comsumption이나 sampling rate 같은 복잡한 특성이나
      기능은 잘 모르고 단지 lifetime에만 관심있을 뿐이다.
      따라서 lifetime을 입력하면 적절히 자동으로 estimate해서 돌아야 한다.
    . costs of accessing sensors,
      selectivities of operators,
      expected communication rates,
      current battery voltage
    . transmission rate : 1시간에 몇 번 전송할 것인가
      = sampling rate
    . 수식으로 예상한 시간과 실제 실험 시간이 거의 일치했다.

. power-aware optimization
  . basestation(root) - query를 parsing하고 optimize하는 곳이기도 함.
  . metadata management - 주기적으로 basestation에 정보 저장
    . metadata - power, sample time, constant?, rate of change, range
  . aggregation
    . monotonic - 단순히 증가
    . exemplary(summary) - aggregation set에서 어떤 대표값을 뽑음.
  . query의 종류에 따라 cost계산

. ordering of sampling and predicates
  . P = S + T
  . P : Predicate
  . S : set of operations
  . jobs
  . exemplary aggregate pushdown
  . selectivity를 이용해서 잘 reorder해서 power를 아끼자.

. series parallel graph?
http://www.algorithmic-solutions.info/leda_guide/graph_algorithms/series-parallel.html

. event query batching
  . multi-query optimization technique
  . sliding window join
  . stream join = rewritten queries, event queue empty check를 함.
  . asynch events = non-rewritten queries
  . event가 많으면 stream join이 asynch events보다 빠르다.
  . sample의 phase를 잘 맞춰야 reordering이 쉽다.
  . phase가 맞지않아도 user는 별 상관없으니 굳이 맞춰야 한다면
    oversampling을 한다.

. power sensitive dissemination and routing
  . query result를 구하는 데, 꼭 필요한 node들에만
    routing하는 것이 중요함.

. SRT : Semantic routing trees
  . link quality based parent selection algorithm
  . SRT build request를 먼저 날림
  . query에 참여하는 node들의 id가 각 parent node에 기록됨.
  . parent selection
    . random
    . cloest-parent
    . clustered : 다른 sibiling들과 같은 parent를 선택하여 spread를 줄인다.
  . distribution
    . random distribution
    . geographic distribution
      . neighbor의 위치과 correlation되어서 배치
  . boundary
    . best-case
    . no SRT
  . 결론 : clustered가 가장 낫다.

. processing query
  . 모든 node가 동시에 sleep, awake(time syncronized)
  . aggregation
    . temporal aggregate
    . aggregates in the same epoch
  . partial state record
    . 각 intermediate node에서 aggregate를 위한 중간 집계를 미리하므로
      root까지 전송되는 data양이 줄어든다.

. prioritizing data delivery
  . queue가 overflow되면 data를 discard해야 한다.
  . priority를 정해서 중요한, quality가 높은 정보를 먼저 보낸다.
  . runtime decision이 필요하다.
  . RMS(Root mean square)등의 방법을 쓸 수 있다.
  . scheme
    . naive : FIFO
    . winavg : 처음 두개를 average해서 뒤에 공간을 하나 만듬.
    . delta : largest change를 report
    . delta의 RMS에러가 가장 적다.

. adapting rates and power consumption
  . network contention
    . node의 갯수가 늘고 sample이 늘어나면 network이 가득차서
      전송이 안된다. 많이 보내봤자 성공률은 오히려 떨어진다.
      따라서 adaptive하게 조절하지 해야 한다.
  . power consumption
    . reestimation
      . adaptation optimizer
      . ordering decision
      . frequency
      . TinyDB에서는 유저가 요청할 때만 reestimation이 일어난다.
      . estimation의 가능성 : predicated batter voltage - decay linearly

. relative work
  . laptop and palmtop은 mote와 달리 rapid power-cycling이 힘들다.
    하는 일이 단순 데이터 수집보다 훨씬 복잡하고
    갑자기 전원을 꺼버린다면 user가 적응하지 못할 것이다.
  . SRT = indexing in traditional DB
  . compressed database
  . event based query
  . approximate and best effort caches

. future work
  . reoptimization
    . burst of data
    . unexpected power consumption
    . users' prioritization preference