トップ «前の日記(2006-04-22) 最新 次の日記(2006-04-24)» 月表示 編集

日々の流転


2006-04-23 [長年日記]

λ. The Logical Way to Be Artificially Intelligent

月曜の知識発見法の授業はR.Kowalski氏の講義だそうですよ。

Speaker
Robert Kowalski (Imperial College London)
Title
The Logical Way to Be Artificially Intelligent
Abstract.

Abductive logic programming (ALP) can be used to model reactive, proactive and pre-active thinking in intelligent agents. Reactive thinking assimilates observations of changes in the environment, whereas proactive thinking reduces goals to sub-goals and ultimately to candidate actions. Pre-active thinking generates logical consequences of candidate actions, to help in deciding between the alternatives. These different ways of thinking are compatible with any way of deciding between alternatives, including the use of both decision theory and heuristics.

The different forms of thinking can be performed as they are needed, or they can be performed in advance, transforming high-level goals and beliefs into lower-level condition-action rule form, which can be implemented in neural networks. Moreover, the higher-level and lower-level representations can operate in tandem, as they do in dual-process models of thinking. In dual process models, intuitive processes form judgements rapidly, sub-consciously and in parallel, while deliberative processes form and monitor judgements slowly, consciously and serially.

ALP used in this way can not only provide a framework for constructing artificial agents, but can also be used as a cognitive model of human agents. As a cognitive model, it combines both a descriptive model of how humans actually think with a normative model of humans can think more effectively.

実は私、発想推論って良く分かってない。よく推論には「演繹推論」「帰納推論」「発想推論」の三つがあるという。演繹推論に基づいた言語にはPrologのような言語があり、帰納推論のシステムとしてはProgol等のILP(Inductive Logic Programming,帰納論理プログラミング)がある。ALPは同様に発想推論に基づいた何かなんだろうか……。そういえば、向井先生の論理プログラミングの授業の講義資料でも、メタプログラミングの章で題材として発想推論が取り上げられていた。

BTW: Kowalski氏の講義は以前にもあった。

λ. Re: Y combinator is forbidden in Haskell!?

Haskellでは以下のようなコードでY-Combinatorを表現することが出来ます。

newtype T a = PsiInv{ psi :: T a -> a }

fix :: (a -> a) -> a
fix f = g (PsiInv g)
  where g x = f (psi x x)

この T a という型は、T a の値と T a -> a の値が一対一に対応するように作った型で、このような型が存在すると不動点コンビネータが表現可能なことが知られています。このことは理論的にはLawvere の不動点定理を使って説明することができ、「自己言及の論理と計算」等で詳しい説明がされています。

ただ、プラクティカルにはこのような型の存在は問題を引き起こしがちです。例えば現在のGHCは上記のコードを食うと暴走するし、agdaにもこのようなコードの停止性検査が正しく行えないという問題があります。

【2010-05-21 追記】 GHCの問題はNOINLINEプラグマを利用することでこの問題を回避可能とのこと。具体的にはリンク先を参照。

λ. equi-recursive type と special final coalgebra theorem

Y-Combinator の話で思い出した。 少し前に sumiiの日記「不動点演算子ふたたび」 で equi-recursive type とか iso-recursive type という言葉を知ったが、この対比は特殊終余代数定理(special final coalgebra theorem)と一般化された終余代数定理(final coalgebra theorem)の対比に少し似ていると思った。

Tags: 型理論

λ. “全線建設”はこうして決まった・道路公団民営化半年の攻防▽交渉の舞台裏

今日のNHKスペシャルを横で見ていて「なんかなぁ」と思った。 真面目に見ていなかったので勘違いしてるかも知れないが、色々と政治くさい話はおいておくとして…

  • 採算性も重要だが、便益と比較せずに採算性だけを論じるのは無意味。将来の料金収入も含めた財政的制約の中で便益を最大にするよう建設計画を考えるべき。
  • サンクコストを無視せよ。「すでに一部建築してしまったから」なんて理由で継続するなんて論外。
Tags: 時事