I am a PhD candidate in Computer Science, with minor in Electrical Engineering. I am now looking for a faculty position (tenure track or non-tenure rack) in Computer Science and/or Electrical Engineering, or similar or related fields. My main research experience is on artificial intelligence and medical image and signal processing. I can start as early as fall 2012. Please do drop me a line if you know such positions at 
selected peer-reviewed full papers Curriculum Vitae (at Google Docs) Full publication list (at Google Scholar)
The two answer set programming (ASP) programs below are different.
Program 1
1{a(D):b(D)}1.
b(x).
b(y). Program 2
1{a(D)}1 :- b(D).
b(x).
b(y).
To understand their differences, see their answer sets respectively.
Answer set(s) for program 1
Answer: 1 b(x) b(y) a(y) Answer: 2 b(x) b(y) a(x)
Answer set(s) for program 2
Answer: 1 b(x) b(y) a(y) a(x)
Now I think you have figured out. The condition in choice rule plays a role.
Knowledge representation (KR) is a branch of AI, but not at hot/popular/attractive to young AI researchers as other fields, such as machine learning (ML).
However, it matters. (I will explain later in this post why it is not as popular as machine learning.)
Allow me to use one example. I am writing an email to Dr. H. I usually write to Dr. H while CC'ing to Dr. X on issues about research topic A. But today, I do not CC to Dr. X but Dr. Z because today's email is about research topic B.
Gmail, maybe using some statistic strategy, thinks I put Dr. Z by mistake and suggests me to put Dr. X in the CC field.
by Forrest Sheng Bao http://fsbao.net
SSH has a cool feature that you can use your security key to authenticate rather than your password. In this way, you don't have to enter password all the time. Here is how you can do that.
ssh-keygen
command on your Shell/Terminal. Follow the instructions. It will generate your public key and private key pair.
ssh-copy-id user@host
to send your public key to the host.
References:
by Forrest Sheng Bao http://fsbao.net
How to trim/truncate a string in Linux? Especially when it is a path or file name?
See this demo below.
test="~/bin/test_label"
echo ${test%_label} # the percentage sign means from the end
echo ${test#?/*/} # the pound sign means from the start Save it as a Shell script (e.g., test.sh) and test it on your Shell:
$ sh test.sh ~/bin/test test_label
Got the idea?
This is very simple string matching, where question mark and asterisk have their normal meanings in UNIX regular expression.
by Forrest Sheng Bao http://fsbao.net
In VTK (either the file format or the library), we sometimes associate more than one scalars to points. I just figured out how to do this in VTK (in C++, similarly in its Python, Tcl or Java wrapper).
Suppose I have a vtkPolyData pointer
vtkPolyData* mesh;
and two vtkDoubleArray (you can consider a vtkDoubleArray as a list of scalars) pointers
vtkDoubleArray* depth; vtkDoubleArray* curv;
This is how I do it:
depth->SetName("Depth");
mesh->GetPointData()->SetScalars(depth);
curv->SetName("Curvature");
mesh->GetPointData()->AddArray(curv);
You may test this by writing mesh into a VTK-format file:
vtkPolyDataWriter* writer=vtkPolyDataWriter::New();
by Forrest Sheng Bao http://fsbao.net
I use two important plug-ins in Firefox, Adobe PDF reader and Flash player. But they sometimes do not work after having been used in Firefox for a while. The embedded PDF reader gives you a black blank after you open several tabs of PDF files. The embedded Flash player just doesn't play movies after a while. Restarting Firefox doesn't always work.
I just found out a solution - killing the Firefox plug-in container to force it to reload. First (optional, for advanced users), find out the plug-in container.
$ ps -A | grep plugin 29981 ? 00:00:07 plugin-containe 30024 ? 00:00:00 plugin-containe
by Forrest Sheng Bao http://fsbao.net
I started using MathJax to display math on my blog (Drupal and Google Blogger) recently. OMG, my life is much easier. LaTeX is easier to type math than MathML and MathJax does not render math into pictures but vector symbols.
But I noticed two problems.
Then I found out this instruction that fixed both of my problems:
by Forrest Sheng Bao http://fsbao.net
I have been struggling with a definition in an important paper about temporal planning in past few weeks. And today i finally understand it with the help of one of the authors. In his words, this definition is sorta counter-intuitive. So I am now writing this blog and hope it will help others struggling with this as well.
Here is a tricky programming problem in Octave or MATLAB. Given a matrix A, and another array Y, how to build a new array Z such that
Z(i)=A(i, Y(i))