Patent Portfolio
Teknowledge has a large intellectual property portfolio
for a small company. It acted swiftly to protect its valuable
intellectual property long before it was widely accepted
that software could be patented. Teknowledge has patents
on key technology for knowledge systems hosted locally or
over the Internet. Thus far, Teknowledge has licensed two
patents. Teknowledge actively reviews its intellectual property
portfolio with respect to new product announcements in the
market and intends to defend its patents through licensing
as well as the court system. Teknowledge is actively pursuing
new patents and has submitted additional patent applications
to the U.S. Patent and Trademark Office.
Patent
#: 4,783,752
Date Granted: 11/8/88
US Patent and Trademark Office database for patent # 4,783,752
A
knowledge base processor is callable by an application
program to access a knowledge base and to govern the execution
or interpretation of the knowledge base to find the values
of selected objects or expressions defined in the knowledge
base. The application program is written in a conventional
computer language which specifies control by the ordering
of program steps. The application program provides a user
interface for input/output and provides top level control
for calling the knowledge base processor to find values
for goal expressions. During its search for the values
of goal expressions, the knowledge base processor calls
the application program to determine values of expressions
which are not concluded by the knowledge base, and to
signal important events during the execution of the knowledge
base. Preferably the knowledge base processor and the
application program each include a library of subroutines
which are linked-loaded to provide a complete knowledge
system for a specific application or task. Therefore,
the knowledge base processor provides the essential functions
for symbolic reasoning, and establishes a framework for
building the knowledge system which permits application
program developers to exploit the best available conventional
data processing capabilities. The application programmer
is free to exercise his or her knowledge and skill regarding
the use of conventional programming languages and their
support facilities such as utility libraries, optimizing
compilers and user interfaces.
Patent
#: 4,803,641
Date Granted: 2/7/89
US Patent and Trademark Office database for patent # 4,803,641
A
tool for building a knowledge system and running a consultation
on a computer is easily mastered by people with little
computer experience yet also provides advanced capabilities
for the experienced knowledge engineer. The knowledge
system includes a knowledge base in an easily understood
English-like language expressing facts, rules, and meta-facts
for specifying how the rules are to be applied to solve
a specific problem. The tool includes interactive knowledge
base debugging, question generation, legal response checking,
explanation, certainty factors, and the use of variables.
The knowledge base language permits recursion and is extensible.
Preferably, control during a consultation is goal directed
in depth-first fashion as specified by rule order. The
tool is easily embodied in assembly language, or in PROLOG
to allow user-defined PROLOG functions.
Patent
#: 4,847,784
Date Granted: 7/11/89
US Patent and Trademark Office database for patent # 4,847,784
A
knowledge system has a consultation system and also encodes
domain-dependent tutoring knowledge as a set of conditions
for interrupting the operation of the consultation system
in order to evaluate a subject system. During the evaluation,
the subject system is probed for its understanding of
the status of the consultation system, and its understanding
is compared to the actual status to obtain a measure of
the subject system's knowledge and performance relative
to that of the consultation system. The direction of the
probing and the source of information for instruction
or diagnosis is based upon the condition causing the interruption
of the consultation system. Preferably an authoring system
scans the domain-dependent knowledge base of the consultation
system and determines a set of possible interrupt conditions.
From this set a user exercises judgment in selecting a
subset of conditions that are appropriate for the subject
domain and the needs of the student. The selected conditions
and a selected test case dialog are stored in a case file,
and a number of different case files may be stored in
a case library. The authoring system preferably creates
a file or index of tutorial knowledge which correlates
the relevant domain knowledge with the interrupt conditions.
The tutorial knowledge includes, for example, expressions
for causing interrupts after their values are found, rules
concluding the expressions, the values concluded by the
rules, and the factors in the rules.
Patent
#: 4,943,932
Date Granted: 7/24/90
US Patent and Trademark Office database for patent # 4,943,932
A
Multi-Level Architecture for developing intelligent computer
systems composes computational modules uniformly across
diverse developmental framework. The modules interact
via message passing and are assembled to form application-specific
systems. A first level of the Multi-Level Architecture
includes a cooperative operating system which provides
support for message passing and resource allocation and
is preferably based on a module-oriented programming (MOP)
model. The first level, for example, defines a virtual
machine which is mapped onto an underlying hardware and
operating system environment. A second level of the Multi-Level
Architecture supports a plurality of application-independent
problem-solving frameworks (PSF's) or programming environments
for building modules and combining modules of different
frameworks into complex systems. A third level of Multi-Level
Architecture includes a plurality of knowledge processing
modules ranging from specialized modules to skeletal systems
which provide nearly complete solutions to application
problems. For building an application-specific system,
domain-specific knowledge is added on top of the third
level and typically a selected skeletal system is customized.
Extension or refinement of the application-specific system
is accomplished by replacing existing modules with more
complex modules or by using additional modules. The Multi-Level
Architecture is particularly useful for building a plan
monitoring and re-planning system which monitors whether
an initially valid design remains valid prior to its implementation,
incrementally modifies the design to insure validity despite
changing conditions, applies control knowledge to control
sequencing among the monitoring and re-planning functions,
and also applies knowledge to explain the nature of design
failures.
Compensating System for Inspecting Potentially
Warped Printed Circuit Boards
Patent
#: 4,978,220
Date Granted: 12/18/90
US
Patent and Trademark Office database for patent # 4,978,220
A
compensating system for inspecting potentially warped
printed circuit boards provides the inspection head of
a printed circuit board inspection apparatus with a compensating
device which is capable of detecting deviations in the
printed circuit board which depart from a reference standard,
for use in accurately compensating for such deviations
during the board inspection procedure. An appropriate
source (including ultrasonic, laser and directed light
sources) is used to direct emissions toward the surface
of a printed circuit board to be inspected. Detected reflections
are then used to provide information useful in determining
deviations of the surface of the printed circuit board
from the reference standard, to adjust the anticipated
locations for any component features, connecting leads
or pins which are to be inspected within the subject viewing
field.
Patent
#: 6,029,175
Date Granted: 2/22/00
US Patent and Trademark Office database for patent # 6,029,175
An
intelligent network agent intercepts transactions between
clients and servers to perform Distributed Information
Logistics Services (DILS) functions such as automatically
retrieving updated files from remote servers and delivering
them to local client programs. For example, HTTP clients
and HTTPD servers are connectionless and stateless, thus
there is no way for a server to update a browser automatically
when an HTML document is changed. The invention provides
a method to update any number of clients from any number
of servers without making any changes to currently existing
HTTP clients or HTTPD servers. Furthermore, the invention
can provide various other DILS services for clients to
reduce latency and communication costs for members of
a group with interests in similar objects. For example,
the intelligent network agent maintains a cache of objects
of interest to the group of clients, a log of changes
to the objects, a list of the clients interested in the
objects, a list of significant change detection methods
for the objects, a list of search specifications for the
objects, lists of client notification methods, and lists
of general interest specifications for the clients.