I've read a little Karl Popper yesterday in hopes of trying to understand how 
people find causes for failures.Popper suggested that finding confirming 
examples of theories is easy, but finding falsifying examples is hard.
Furthermore, once people form a theory, however that happens, they often create 
gedankenexperiments (thought experiments) to verify the theory, or design and 
execute real experiments. 
I'm hoping to build some falsifier component, which proves theories cannot be 
supported by the current knowledgebase, to help weed out poor theories. 
Let's start with some prototypes for a basic theory, solution, and a solution 
trial. This is using the Premise language for knowledge representation. 
let theory   :R  :before   :after   :within  ; timeframe   :reliab   ; 
reliabilityend 
let solution   :goal   :before   :steps  :after end 
let try  :solution  :start   :until   :outcomeend
I was given a phone number some time ago and I dialed the number and was told 
the number was invalid.
(new solution  :goal call-phone-number  :before { know-phone-number  have-phone 
}  :steps { dial-first-digit ... dial-last-digit }  :after { call-phone-number 
}) 
.: solution_1 

(new try   :solution solution_1  :start 2014-06-26-09-00  :until 
2016-06-26-09-05  :outcome pending)
.: try_1 
I dialed the numbers but was not able to get through.   I failed at achieving 
my goal.
(set try_1 :outcome failure) 
Immediately I had a problem. 

let problem  :goals   :factsend 

(new problem  :goals  { call-phone-number }  :facts  { know-phone-number 
have-phone dial-first-digit ...  dial-last-digit })
.: problem_1
For some time I had this problem and did not know what caused it: I had no 
theory that predicted it.
Prior to dialing the number, I had transcribed the number on a piece of 
paper.Upon closer inspection of the paper I realized that I placed the number 1 
close to a pre-existing letter D on the paper, and when I dialed the number  I 
actually dialed nine instead of one.
Immediately I was confident that if I had dialed a one instead of a nine I 
would havedialed the correct number.

(new theory   :R causes   :before { {goal call-phone-number}  misread-number  
dialing-misread-number }  :after { problem_1 } )
.: theory_1 
So I'm curious as to (a) how this episode could be better represented, (b) how 
the theorizingshould work and  (c) whether we use any kind of falsification to 
determine confidence in theories.
In PAM-P2  once a solution failure is detected a problem is created by the 
solution regulator, a Theorizer component finds a cause for the failure by 
finding a proof of the failure given the initial state  of the solution 
combined with the steps of the solution. This initial theory of the cause may 
not be very good, and it may require several revisions to get it right.  Or, 
the theory may be defeated entirely by finding counterexamples.
However, often failures involve hidden knowledge that must be synthesized and 
factored into a theory of the problem.  How does this happen? 
Thoughts? 
~PM.
                                          


-------------------------------------------
AGI
Archives: https://www.listbox.com/member/archive/303/=now
RSS Feed: https://www.listbox.com/member/archive/rss/303/21088071-f452e424
Modify Your Subscription: 
https://www.listbox.com/member/?member_id=21088071&id_secret=21088071-58d57657
Powered by Listbox: http://www.listbox.com

Reply via email to