task

Class summary
process inherits from tree-node and blackboard
process-result inherits from blackboard
task inherits from tree, blackboard and configuration
Method summary
continue-process process process-label task owner
find-data (process-result process-result) (label t) &rest rest &key omit-owner
find-data (process process) (label t) &rest rest &key omit-owner
find-process thing label
input process
label process
label task
owner process-result
owner process
owner task
process process-result
processes task
results process
results task
run-next-process task
run-process process process-label task owner
score process-result
status process
task process
unfinished-processes task
Function summary
continue-task task &key process-label top-only
make-process-result score data &key (type (quote process-result-w-learning)) process
restart-process task process process-label &key data
run-task task &key n-results
process-result   inherits from blackboard  [Class]
:score    [Initarg]
:process    [Initarg]
process    [Slot]

pointer to the process that produced the result

process   process-result  [Generic function]

Returns and (with setf) changes the process of the specified process-result

owner   process-result  [Generic function]

Returns and (with setf) changes the process of the specified process-result

score   process-result  [Generic function]

Returns and (with setf) changes the score of the specified process-result

process   inherits from tree-node and blackboard  [Class]
:task    [Initarg]
:label    [Initarg]
:status    [Initarg]
:input    [Initarg]
:results    [Initarg]
status    [Slot]

track of processing of this node '(continue run create)

input    [Slot]

the input result from the previous process

results    [Slot]

a list of all results of run/continue the process

results   process  [Generic function]

Returns and (with setf) changes the results of the specified process

input   process  [Generic function]

Returns and (with setf) changes the input of the specified process

status   process  [Generic function]

Returns and (with setf) changes the status of the specified process

label   process  [Generic function]

Returns and (with setf) changes the label of the specified process

task   process  [Generic function]

Returns and (with setf) changes the task of the specified process

owner   process  [Generic function]

Returns and (with setf) changes the task of the specified process

task   inherits from tree, blackboard and configuration  [Class]
:label    [Initarg]
:processes    [Initarg]
:unfinished-processes    [Initarg]
:owner    [Initarg]
:results    [Initarg]
label    [Slot]

something like production, interpretation etc

processes    [Slot]

linear order of processes to run e.g.

'(conceptualize produce ...)

unfinished-processes    [Slot]

queue of unfinished processes

owner    [Slot]

he who owns the task, normally some agent

results    [Slot]

all process-results of final processes ever obtained in this task

results   task  [Generic function]

Returns and (with setf) changes the results of the specified task

owner   task  [Generic function]

Returns and (with setf) changes the owner of the specified task

unfinished-processes   task  [Generic function]

Returns and (with setf) changes the unfinished-processes of the specified task

processes   task  [Generic function]

Returns and (with setf) changes the processes of the specified task

label   task  [Generic function]

Returns and (with setf) changes the label of the specified task

run-process   process process-label task owner  [Generic function]

called for executing a process, returns a list of process-result (should be ordered by score)

continue-process   process process-label task owner  [Generic function]

continues a process, same as run except for that run has already been called once on this process

find-process   thing label  [Generic function]

retrieves the process from a process result or process and parents

run-next-process   task  [Generic function]

takes the next process from the unfinished-processes queue and runs it returns the results and the process run

find-data   (process-result process-result) (label t) &rest rest &key omit-owner  [Method]

go through the data of the process and then the data of parent processes (through input)

find-data   (process process) (label t) &rest rest &key omit-owner  [Method]

go through the data of the process and then the data of parent processes (through input)

make-process-result   score data &key (type (quote process-result-w-learning)) process  [Function]

makes a process result the default type is with learning

run-task   task &key n-results  [Function]

high level function for running a task by running/continuing unfinished processes returns the results of finished processes and the processes themselves finished processes are those last in (processes task) which returned results. n-results -- only get the first n results (can return more results, but stops as soon as n-results is reached)

continue-task   task &key process-label top-only  [Function]

fetches relevant processes, adds them to (unfinished-processes task) calls run-task 1) all processes (and (null process-label) (null top-only)) 2) just the top (and (null process-label) top-only ) 3) just processes with process-label (and process-label top-only) 4) all processes with process-label and their children (and process-label (null top-only)) Notice1: if process-label is specified really all processes with that label are continued Notice2: if you want to continue one specific process it is probably easier you fetch it and add it to unfinished-processes yourself

restart-process   task process process-label &key data  [Function]

restart is not really a restart. All that happens is that the relevant process-result is fetched from the parent process (of process) with process-label and then this is used to create a new process branch which is appended to unfinished-processes returns the new process Note: for technical reasons you CANNOT restart the first process, just create a dummy process to restart your first process (you can use the one below)