linker systems' jcb ™ (including jcb-english ™ & jcb-robotics ™ ) sheldon linker...

36
Linker Systems' JCB (Including JCB-English & JCB- Robotics ) Sheldon Linker & Toni Poper

Upload: martin-jacobs

Post on 29-Dec-2015

240 views

Category:

Documents


5 download

TRANSCRIPT

Linker Systems' JCB™

(Including JCB-English™ & JCB-Robotics™)

Sheldon Linker & Toni Poper

Contents

What is JCB? [slide 3]

How is JCB different? [slide 4]

Practical uses & markets [slide 14]

New technologies (under the hood) [slide 15]

The state of work [slide 31]

Work yet to be done [slide 33]

Our plans for JCB [slide 35]

2

What is JCB?

JCB is a new type of system that has the ability to process information, take orders, and… learn on its own, prove that something is true or false, prove that an order should or should not be

followed, and reason things out.

JCB has a host of new technologies, each of which is significant in itself.

3

How is JCB Different?

Using traditional a document search: The user enters search terms The system retrieves a list of documents The user looks through the documents for

relevant facts

4

How is JCB Different?

Using a traditional SQL system: The programmers create tables The data are entered The programmer writes a query Tabular results are delivered

TableData Result

SQL

5

How is JCB Different?

JCB has a more natural approach: The user makes a statement, asks a question,

or gives an order, in a language very close to English*

JCB responds in the same language

* Other language bases are planned.

? !

6

How is JCB Different?

JCB can learn and understand relationships.

Example: "Kermit" is a frog.

Accepted Is "Kermit" a pig?

No Is "Kermit" an animal?

Yes

In this example (and the one following), JCB has already learned that frogs and pigs are mutually exclusive members of the class Animal, using a dictionary or experience.

7

How is JCB Different?

JCB can protect itself from harmful misinformation.

Example: "Kermit" is a frog.

Accepted "Kermit" is a pig.

That would conflict with data already held

8

How is JCB Different?

JCB can schedule events and decide on the best course of action, on its own.

Example: At noon, you must exclusively prepare a

lunch or buy a lunch Accepted

At noon, JCB will begin execution, and the "executor" will determine whether preparing a lunch or buying one gives a higher "score", and then execute the best plan.

9

How is JCB Different?

JCB can protect the physical world.

Example: Kill "Bill" Execution not possible:

Kill implies harm Bill is a person Conflicts with: For all X, Y: If X is a person then

neither you harm X nor allow the event Y harms X

10

How is JCB Different?

A more concrete example, in three parts (1 of 3)

You must give exclusively the red ball or the green ball/ to the baby The executor must decide on its own which

command, giving the red ball to the baby or the green ball to the baby would involve less work or could be accomplished more quickly.

11

How is JCB Different?

A more concrete example, in three parts (2 of 3)

If and only if "Kermit" is a pig, then you must give the white ball/ to the baby. Also if and only if "Kermit" is not a pig, then you must give the black ball/ to the baby. JCB is temporarily stuck for execution here. We

don't know at this point whether Kermit is a pig. So, both become plans.

"Kermit" is a frog. At this point, the executive will begin execution of

"You must give the black ball/ to the baby", and reject any future execution of "Please give the white ball/ to the baby.

12

How is JCB Different?

A more concrete example, in three parts (3 of 3)

You must give the knife/ to the baby Given sufficient data on the relation

between knives and babies, the command is rejected.

13

Practical Uses & Markets

JCB can be used for public information retrieval. Example: In 1962, who was the president?

JCB can be used for business knowledge-bases. Example: In 2009, "Tom Smith" bought what?

JCB can be used to schedule events. Example: Beginning January 20, 2017 at noon, ending

at 2 pm, please both record "CNN" and prepare some popcorn.

JCB can be used to control devices (robotics). Example: If an assembly is in the work dock, please

weld both a left flange and a right flange.

14

New Technologies — Under the Hood JCB has a host of new technologies and

features, including… A distinct language [slide 17]

Semi-distinct realities [slide 18]

Multiple bodies, one mind [slide 19]

Levels of certainty [slide 20]

Trans-Boolean logic [slide 21]

Dictionary rules [slide 24]

An unusual memory manager [slide 27]

15

New Technologies — Under the Hood JCB has a host of new technologies and

features, including… Multiple provers [slide 28]

Proof-based scheduling & rejection [slide 29]

Transaction-based execution [slide 30]

16

A Distinct Language

JCB-English is very similar to English Also has similarities to Loglan (invented

by James Cooke Brown, a.k.a. JCB) Has a small, well-defined SLR-1 grammar Easy to learn Completely unambiguous The only required punctuation is 'string'

and "name" The language system can learn new words

17

Semi-Distinct Realities

Users can trust each other to a given extent I say liver tastes bad Fred says liver tastes good If you trust Fred more than me, then

liver is believed to taste good. If we're trusted equally, liver has

varied opinions If neither are trusted, then no

information is held on liver.

System operators and other privileged people may speak "authoritatively".

18

Mydata

Fred's data

Common data

Multiple Bodies — One Mind

JCB assumes that the system canhave one or more bodies. Thesebodies can have names.

If there are multiple bodies withnames, then names can be used todirect which body is used. Example: Either "Huey" or "Dewey" must…

If we don't care which body does the job, we use "you must" or "please".

19

LouisDewey

Huey

Levels of Certainty

Simple statements can be made. Example: "Kermit" is a frog.

Additionally, we can apply certainty levels: Example: Perhaps "Miss Piggy" is a pig. These range from "Perhaps" to "Certainly".

My trust-level of a specific speaker will temper my certainty of what that speaker says.

Each user has a certainty/veracity threshold of what will be considered at all.

20

Trans-Boolean Logic

Traditional Boolean logic has two states, true and false.

JCB's trans-Boolean logic, in addition, has plausible, answerable, actionable, pending, unactionable, and complicated.

21

Trans-Boolean Logic

All of these logic states, trust levels, certainty levels, and the like apply to various operations: And Or (inclusive, exclusive, neither, and nor) Equivalence If (both if and if-and-only-if) Not and other operations.

Example: (true at 50%) And (true at 40%) = (true at

20%)

22

Trans-Boolean Logic

All of these logic states, trust levels, certainty levels, and the like, apply to various operations: There Exists (∃) There Exist At Least/At Most/Exactly There Does Not Exist (∄) For All (∀)

Example, mixing There Exists and Probably gives "There Probably exists"

23

Dictionary Rules

JCB can operate in two dictionary modes: In loose mode, words are learned as used. In strict mode, a word must appear in JCB's

dictionary.

Words can be defined as equivalent. Example: Walk, walks, walked, stroll,

strolls, strolled

24

Dictionary Rules

Words can be defined as following rules. Chained implication, such as "bigger"

Example: If Alan is bigger than Bob, and Bob is bigger than Charles, then Alan is bigger than Charles, but Charles is not bigger than Alan.

Equivalent implication, such as "like" Example: If Dave is like Erol, and Erol is like Fred,

then Dave is like Fred, and Fred is like Dave. Reversed implication, such as "bigger" and

"smaller" Example: If Alan is bigger than Bob, then Bob is

smaller than Alan.

25

Dictionary Rules

The dictionary can define mutually exclusive sets. Example: "mammal": "pig", "goat", …

Sets can be nested: Example: "animal": "mammal",

"amphibian", …

Words can have translations into alternate languages. Example: "cat" and "gato"

26

An Unusual Memory Manager In most object-oriented programming languages,

an object is created with a specific type, and remains that type; but in JCB, an object can be transformed to a different, related type, without reallocation.

Elsewhere, objects are allocated one at a time; but in JCB, objects are allocated a million at a time

In many programming languages, objects must be serialized and deserialized; but in JCB, object-groups can be read and written in a single operation.

27

Multiple Provers

A "prover" is software that attempts to prove or disprove a proposition.

JCB uses three provers: The Fast Prover looks for direct matches. The Medium Prover looks for simple

implications. The Full Prover looks extensively.

Multiple separate-box proofs will improve performance by allowing all proofs to run concurrently. (Single-processor multithreading would hinder performance, as the provers don't involve wait states.)

28

Proof-Based Scheduling & Rejection Imperatives are proved.

An actionable imperative can be executed immediately.

A pending imperative goes for proof again later, in hopes of being confirmed as actionable.

A permanently unactionable item will never be scheduled, and can be discarded. Certain rules can be added as undeletable. A rule stating that an action cannot be performed will

render the proposed action permanently unactionable.

Issac Asimov used the term "Three-Laws Safe" for command rejection.

29

Transaction-Based Scheduling If an imperative involves A or B, then A

can be started, or B, or both.

If an imperative involves A and B, then A, B, or both can be started. If one sub-task is accomplished and another not, then the completed sub-task will be reversed, if possible.

Other operators have similar rules.

30

The State of Work

The first working version of JCB was written in Java, and could run on a laptop, giving easy answers in a second, and more complicated results in a minute. It could load a database in seconds.

The second working version of JCB was written in C, and could run on a laptop, giving easy answers almost instantly, and more complicated results in seconds. It could load a database almost instantly.

31

The State of Work

The current working version of JCB, in addition to information storage and retrieval, can schedule operations in the future, decide what needs to be executed when, and can even decide not to perform certain actions. The storage and retrieval component, JCB-

English, is patented; The action-enabled component, JCB-

Robotics, is patent-pending.

32

Work Yet to be Done

Various areas of development would make JCB a more powerful system: Enter a complete dictionary (even though it can

learn words on its own) Enter all or part of an encyclopedic data warehouse Add a map-reduce architecture (multiple

computers) to speed processing Speak and understand additional languages:

Grammars Dictionaries

Add a voice interface (current interfaces are text, via UDP and HTML)

33

Work Yet to be Done

Various areas of development would make JCB a more powerful system: For each action, devise a point-scoring system

for solutions For each physical action, devise a way of

accomplishing the action For each physical action, devise a way of rolling

back the action

34

Our Plans for JCB

Linker Systems is a small R&D and consulting firm.

We seek a partner to… Help us bring JCB to consumer and

corporate markets, or Buy JCB and continue its development.

35

Contact Us

For further information on JCB, call or eMail:

Sheldon O. Linker, [email protected]

36