Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SYSTEM AND METHOD FOR EVALUATING CHEMICAL COMPOUND DATA USING AND APPLYING A VIRTUAL LANDSCAPE
Document Type and Number:
WIPO Patent Application WO/2024/138182
Kind Code:
A1
Abstract:
The present invention is directed to generating a network diagram of the compounds or identifiers enumerated within a collection of documents returned from a search of a collection of documents describing a particular biological target of interest. A processor is configured to convert the enumerated identifiers into vector coded forms and place the coded forms within an n-dimensional map. One or more processors are configured to evaluate the distance between the coded forms and generate, based on the distance between mapped coded vector forms, a network diagram of the enumerated compounds.

Inventors:
BROWN KEVIN (US)
BROGLE KEVIN (US)
Application Number:
PCT/US2023/085791
Publication Date:
June 27, 2024
Filing Date:
December 22, 2023
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ACCENCIO LLC (US)
International Classes:
G06F16/2457; G06F16/22; G06F16/248; G06F16/25; G06N3/088; G16B50/30; G16C20/30; G16C20/40; G16C20/70; G16C20/80
Attorney, Agent or Firm:
GARNER, Jordan et al. (US)
Download PDF:
Claims:
What is Claimed is:

1. A computer-implemented method for generating an artificial environment within a memory of a computer, in which coded identifiers that relate to a particular target and which are described in at least one document are extracted and analyzed, the method comprising: submitting, in electronic form, a search to at least one document database for documents describing the target using a defined search strategy; extrapolating, to a first array within the memory of the computer, at least one coded identifier described in at least one document returned from the search, the extrapolating step using an extraction module comprising code executing in a processor; transforming each coded identifier in the first array into a respective coded form having a range of values using a conversion module comprising code executing in the processor; populating the respective coded identifier into a second array within the memory of the computer; generating a virtual n-dimensional array of nodes configured to encompass the range of values in the second array using a node array generator module comprising code executing in the processor, wherein each node of the virtual n-dimensional array having an associated weight vector value based on the range of values in the second array; placing each coded form in the second array into a node of the virtual n-dimensional array according to an unsupervised learning algorithm using a placement module comprising code executing in the processor to effect a placement; calculating a distance metric for a plurality of pairs of coded forms placed within the virtual n- dimensional array; generating at least one node and at least one edge file corresponding to those plurality of pairs of coded forms that have a distance metric below a pre-determined threshold; and using the at least one node and at least one edge file, generating a network diagram of the plurality of pairs of coded forms that have a distance metric below a pre-determined threshold.

2. The method of claim 1 , further comprising outputting a visual representation of the network diagram of coded forms.

3. The method of claim 1 wherein the submitting step further comprises: receiving from the at least one document database, a plurality of documents, and filtering the plurality of documents using a filtering criterion to obtain a filtered subset of documents.

4. The method of claim 1 , wherein the filtering criteria is an ailment.

5. The method of claim 1, wherein the extrapolating step further comprises configuring one or more processors by the extraction module to parse text found within the at least one document returned from the search to identify coded identifiers based on at least one pre-determined schema.

6. The method of claim 4, wherein the pre-determined schema used to evaluate the parsed text includes subscript and superscript text components.

7. The method of claim 1, wherein the extrapolating step further comprises configuring one or more processors by the extraction module to parse text found within the at least one document returned from the search to identify coded identifiers using one or more natural language extraction and association algorithms.

8. The method of claim 1, wherein the extrapolating step further includes configuring one or more processors by the extraction module to parse contents of the at least one document using one or more image recognition algorithms to identify a structural formula present in the at least one document.

9. The method of claim 8, further comprising comparing the identified structural formula against a database of known structural formula and associated compound names, and identifying the associated compound name for the identified structural formula.

10. The method of claim 1, wherein the extraction step further comprises identifying duplicate coded identifiers.

1 1. The method of claim 1 , wherein transforming each coded identifier in the first array includes: (i) converting an identified chemical entity into a simplified molecular input line entry and (ii) converting the simplified molecular input line entry corresponding to the identified chemical entity into a vector form.

12. The method of claim 1, wherein calculating the distance metric includes calculating for each pair of vectors, a one-way pairing function.

13. The method of claim 1, wherein the coded identifiers are one of chemical formulae, nucleotide sequences and protein sequences.

14. A system for generating an artificial environment within a memory of a computer, in which documents that relate to a particular subject matter target are extracted and analyzed, the system comprising:

At least one processor, configured by code executing therein to: submit, in electronic form, a search to at least one document database for documents describing the subject matter target using a defined search strategy; transforming each document returned from the search query into a respective coded form having a range of values using a conversion module comprising code executing in the processor; generate a virtual n-dimensional array of nodes configured to encompass the range of values using a node array generator module comprising code executing in the processor, wherein each node of the virtual n-dimensional array having an associated weight vector value based on the range of values; place each coded form into a node of the virtual n-dimensional array according to an unsupervised learning algorithm using a placement module comprising code executing in the processor to effect a placement; calculate a distance metric for a plurality of pairs of coded forms placed within the virtual n-dimensional array; generate at least one node and at least one edge file corresponding to those plurality of pairs of coded forms that have a distance metric below a pre-determined threshold; and use the at least one node and at least one edge file, generating a network diagram of the plurality of pairs of coded forms that have a distance metric below a pre-determined threshold.

15. The system of claim 14, wherein the one or more processors are configured to output a visual representation of the network diagram of coded forms to at least one display device.

16. The method of claim 14, wherein the one or more processor is configured to: identify, using a text parsing algorithm, the terms contained in each document; compare each of the identified terms to a library of terms corresponding to the subject matter target; assign values to each of the identified terms on each document; and generate a numeric representation of the subject matter based on the assigned values.

17. The method of claim 14, wherein generating a numeric representation of each document includes discarding all terms that have a numerical representation below a pre-determined threshold.

18. A computer-implemented method for generating an artificial environment within a memory of a computer, in which chemical identifiers that relate to a particular biological target and which are described in at least one document are extracted and analyzed, the method comprising: submitting, in electronic form, a search to at least one document database for documents describing the biological target using a defined search strategy; receiving search results, wherein each search result includes a document identification value corresponding to a source document; accessing a numericized database of numericized chemical or biological identifiers, wherein each entry in the numericized database includes reference to at least one document identification value; obtaining a collection of numericized chemical or biological identifiers based on the document identification values within the search results; generating a virtual n-dimensional array of nodes configured to encompass the range of numericized identifiers using a node array generator module comprising code executing in the processor, wherein each node of the virtual n-dimensional array having an associated weight vector value based on the range of values in the second array; placing each coded form in the second array into a node of the virtual n-dimensional array according to an unsupervised learning algorithm using a placement module comprising code executing in the processor to effect a placement; calculating a distance metric for a plurality of pairs of coded forms placed within the virtual n- dimensional array; generating at least one node and at least one edge file corresponding to those plurality of pairs of coded forms that have a distance metric below a pre-determined threshold; and using the at least one node and at least one edge file, generating a network diagram of the plurality of pairs of coded forms that have a distance metric below a pre-determined threshold.

19. The method of claim 18, further comprising outputting a visual representation of the network diagram of coded forms.

Description:
SYSTEM AND METHOD FOR EVALUATING CHEMICAL COMPOUND DATA USING AND APPLYING A VIRTUAL LANDSCAPE

CROSS REFERENCE TO RELATED APPLICATIONS

[0001] The present application claims priority to and the benefit of US patent application No. 63/477,075, filed December 23, 2022, which is hereby incorporated by reference in its entirety.

FIELD OF THE INVENTION

[0002] The present invention concerns a system and method for evaluating textual data, such as chemical identifiers obtained from source documents, using a virtual N- dimensional array. The described system and method, in part, are directed to extracting from the source documents chemical identifiers and converting those chemical identifiers into coded forms. Further aspects are directed to plotting, or identifying plot coordinates, such as a 2D or 3D plot, of coded forms in a low dimensional space, in which the location of each coded form in the space is based on the similarity of each of coded forms to one another.

BACKGROUND OF THE INVENTION

[0003] It is known in the art to use statistical techniques to evaluate libraries of documents to extract usable information for example, U.S. Patent No. 10013467, herein incorporated by reference in its entirety, teaches extracting data from source documents. Furthermore, it is known in the art to convert and manipulate chemical structures using computer analyses and algorithms. These techniques fall short of providing an environment in which new chemical entities can be identified, let alone one in which new chemical entities can be identified which relate to a particular biological target or particular subject matter.

[0004] Currently, in machine learning and statistics, one way to assess a similarity between, say, chemical entities represented by chemical identifiers such as chemical structure formulas, is to convert the chemical structure formula into a coded representation. It is also known to use analytic procedures to convert a symbolic representation (e.g., chemical identifier) of a molecule (e.g., chemical entity) into a useful number or value for the purpose of comparing, as one example, one chemical entity to another. For example, a variety of descriptors is known and can be used in lieu of keybit binary representations in order to generate values that are useful in implementing certain embodiments of the invention. As non-limiting examples, known descriptors include OD (i.e., constitutional descriptors), ID (i.e., lists of structural fragments), 2D (i.e., graph variants), 3D (i.e., quantum-chemical descriptors), and/ or 4D (i.e., GRID).

[0005] When there are a large number of variables in the dataset, such as in multivariable datasets defined by the keysets mentioned above, dimensionality reduction techniques can be used to evaluate the datasets. These techniques can be used to reduce datasets to a few principal variables in order to more easily visualize the relationship between datasets. Node or diffusion mapping algorithms, for instance, can be used to embed high-dimensional data sets into, say, a Euclidean space. Using this technique, the coordinates of each data point in the Euclidean space are computed from the eigenvectors and eigenvalues (i.e., non-zero vectors or values that, when multiplied by a matrix, generate multiples of the vectors or values). Such mapping techniques are computationally inexpensive and are useful in reducing and displaying visually-complex multivariable datasets such as product reviews, internet traffic, and E-commerce reports.

[0006] The techniques discussed above are all appropriate for mapping chemical structures that are represented by respective datasets. Turning to the question of new chemical entity discovery, however, while there exist chemical compound discovery techniques that are useful in identifying novel chemical compounds, current systems are not able to generate additional compounds in the low-dimensional space.

[0007] One technique for compound discovery which is used in identifying therapeutic compounds is scaffold hopping. Scaffold-hopping is used to identify isofunctional molecular structures with significantly different molecular backbones. Some types of scaffold-hopping include, but are not limited to, heterocycle replacements, ring opening or closure, peptidomimetics and topology-based hopping techniques. Other bioisosteric replacement techniques are also useful in predicting and evaluating new chemical compounds.

[0008] In short, current analysis systems are configured to process large variable data sets and present lower dimensional (e.g., 2- or 3-dimensions) visualizations to a user. Yet these systems are not configured to generate additional data relating to a chemical that might be further included or missing from the data set, and are entirely unable to identify absent chemical structures that conform to a reduced dimensional space.

[0009] Therefore, what is needed in the art is a system and a method which can construct an artificial environment which is trained around a particular biologic target or subject matter, such as a virtual manifold or a virtual array of nodes, from which common chemical features can be identified, transformed into new coded forms and inserted into the artificial environment for determining whether its placement within the artificial environment fits at least one prescribed criterion. What is further needed in the art is a system and method for predicting and generating chemical identifiers that describe new chemical entities not currently found within the source documents used to generate the artificial environment, yet which fill gaps in the artificial environment. The present invention addresses these and other needs.

SUMMARY OF THE INVENTION

[0010] The present invention, according to one aspect, is directed to a computer- implemented method for extracting representational data relevant to a particular subject matter, such as chemical entities, from source documents which discuss the subject matter, and populating an n-dimensional manifold, such as an n-dimensional node array, with coded representations of the representational data (e.g. chemical identifiers, nucleotide sequences, textual fingerprint data, or a hybrid of the foregoing). The method comprises generating a virtual n-dimensional manifold within a memory of a computer using a manifold-generator module which comprises code executing in a processor and placing, using a placement module which comprises code executing in the processor, each of the coded representations at a location, such as a particular node within the manifold, using an unsupervised learning algorithm.

[001 1] In one particular implementation, the present invention is directed to a computer-implemented method for extracting representational data relevant to a particular subject matter, such as chemical entities, from source documents that discuss the subject matter. These extracted representational data is converted into a coded or numerical form suitable for insertion into an n-dimensional manifold, such as an n-dimensional node array. Using the n-dimensional array, information relating to the relationship between different coded or numerical forms, or the source documents for these coded or numerical forms can be determined. For example, the relationship and the strength of the relationship between different coded or numerical forms, or their respective source documents can be determined using the n-dimensional array. Using the information obtained from the n- dimensions array, node and edge files can be generated. Using these node and edge files, a network diagram detailing or visualizing the relationship between different representational identifiers or the source documents themselves can be generated.

[0012] In one or more particular implementations, one or more processors are configured to obtain a collection of source documents relating to one ( 1) or more biological targets. These source documents can then be filtered or triaged to remove irrelevant documents or identify particular sub-sets of documents of interest.

[0013] The one or more processors are further configured to extract structures from the source documents. For example, the one or more processors are configured to extract one or more chemical structures from the one or more source documents. In a particular implementation, the chemical structure extracted is based on chemical names and/or images (such as skeletal diagrams) obtained from the source document.

[0014] Further, in accordance with the one or more implementations described herein, one or more processors are configured to convert the chemical structures from the one or more source documents into a coded form. For example, in a particular implementation, the chemical structure is converted into a vector coded form that us suitable for use in an n-dimensional map. In one or more particular implementations, the form or format of the vector coded form is such that the vector form can be transformed back into the originating chemical structure. As such, the coded form represents a reversible or semi-reversible process that allows for the conversion of the chemical form into a vector and the vector into the source originating chemical struct

[0015] For example, in or more implementations, the described system extracts and converts molecular forms into SMILE (Simplified molecular input line entry system) strings. For example, a processor is configured to implement one or more SMILE string conversion algorithms. Here, the processor is configured to receive a molecular form and generate a SMILE string. As further described herein, once the SMILE string is generated, the SMILE string can then be converted into a numerical form for use in the n-dimensional array or other mapping technique.

[0016] In one or more further implementations, a numerical form can be converted back into a SMILE string by applying the numerical form as an input to a convolutional neural network. Here, the neural network is trained to generate SMILE strings from numerical forms.

[0017] Furthermore, in accordance with the one or more implementations described herein, one or more processors are configured to generate an n-dimensional map using the vector forms. Here, the vector forms represent the one or more compounds or sequences (chemical structures or biological sequences) that are described within the results of a query for a biological target described within a collection of documents. Here the described coded vector form (such as a vector that can be turned back into the originating chemical or biological identifier such as a SMILE string) are used to generate the n- dimensional map. For example, a curated set of known small molecules and peptides (specifically their molecular structures) are converted into the same type of coded (or vector) forms used to generate the n-dimensional map. However, in an alternative arrangement, a curated set of known biologic sequences (protein, DNA, RNA, etc.) are converted into the same type of coded (or vector) forms used to generate the n-dimensional map.

[0018] In turn, the processor is configured to evaluate the distance between these curated coded forms and the closest cluster (or node) in the generated n-dimensional map by determining the distance between curated coded form and the node of a cluster of coded forms present in the n-dimensional map. The processor is further configured by one or more code modules to filter-out distant curated coded form molecules by removing those greater than a pre-determined distance from its closest cluster’s weight vector.

[0019] In this form and manner, the relationship between coded forms can be visualized to the user. For example, the degree of similarity between two or more coded forms can be represented by the proximity of the coded forms to a particular weight vector. Furthermore, the relative similarity between weight vectors or coded forms associated with such weight vectors correspond to the degree of similarity between different coded forms, and therefore the underlying chemical or biological structures.

[0020] In yet a further implementation, a processor is configured to use the results of the n-dimensional mapping process to generate a network diagram to further visualize the relationship between the different chemical structures. For example, the network diagram illustrates the relationship between the different chemical structures organized within a map. In another arrangement, the relationship between the documents that are the source of the vector forms are illustrated using the network diagram.

[0021] Additionally, the processor is configured in one or more implementations to remove or filter coded forms of molecules from the n-dimensional map that are populated to nodes that contains no document coded forms. The processor is also configured by code to compare the remaining curated coded forms that are within the pre-determined distance of a node to the document coded forms associated with that node by calculating the distance between the descriptor vectors for a given curated coded form and document coded form. The processor is further configured by one or more modules to filter-out relationships between curated coded forms and document coded forms over a certain threshold and also calculate the similarity between a coded form and a document coded form. Using the distance, similarity, and number of patented molecules within a predetermined distance of a coded form, the coded forms are ranked.

[0022] Furthermore, according to one or more implementations described herein, the chemical structures of a curated set of compounds (such as small molecules or peptides) are converted into the curated coded forms. Additionally, one or more processors are configured to generate an n-dimensional map using the results of a query for compounds enumerated within a collection of documents describing a particular biological target of interest. Here the chemical identifiers contained within the results are transformed into document coded forms. A processor is configured by one or more modules to generate using both the curated and document coded forms, an n-dimensional map. Upon generation, the processor is configured to evaluate the distance between the curated coded forms and the closest cluster (or node) in the generated n-dimensional map by determining the distance between curated coded form and the node of a cluster of document coded forms present in the n-dimensional map. The processor is further configured by one or more code modules to filter-out distant curated coded form molecules by removing those greater than a pre-determined distance from its closest cluster’s weight vector. Additionally, the processor is configured in one or more implementations to remove or filter coded forms of molecules from the n-dimensional map that are populated to a node that contains no document coded forms. The processor is also then configured by code to compare the remaining curated coded forms that are within the pre-determined distance of a node to the document coded forms associated with that node by calculating the distance between the descriptor vectors for a given curated coded form and document coded form. The processor is further configured hy one or more modules to filter-out relationships between curated coded forms and document coded forms over a certain threshold and also calculate the similarity between a coded form and a document coded form. Using the distance, similarity, and number of patented molecules within a pre-determined distance of a coded form, the coded forms are ranked.

[0023] Optionally, the method as above, according to a further aspect, can include the additional step of adjusting a placement of each coded form within the virtual manifold in the memory using an adjustment module which implements a neural network algorithm using code executing in the processor.

[0024] In a further arrangement, the method also includes predicting new representational data that will occupy the manifold, such as a particular node of the array when placed within the array. In an example where the representational data are chemical identifiers, the further steps include comparing at least one chemical feature (“CF”) corresponding to the coded form contained within at least a first array node to at least one CF corresponding to the coded form contained in at least a second array node using a CF module which comprises code executing in the processor, the first and second nodes each sharing a border with each other or a third node in the virtual node array. The method according to this aspect includes identifying common CFs between the first and second array nodes using a commonality module which comprises code executing in the processor, and generating at least one new coded form based on combinations of the identified common CFs which, when inserted into the virtual node array, results in a placement in the first or second node or within a third adjacent node using a coded form generator module which comprises code executing in the processor. The method outputs a chemical identifier corresponding to the new coded form and augments a data store of chemical entities for the user.

[0025] In another aspect, the present invention can be embodied by a computer- implemented system utilizing a processor configured by a plurality of code modules executing therein to output representational data, such as chemical identifiers and synthesis strategies relating thereto, that is not present in a data store of representational data. In particular, the system includes instruction code in the form of software modules that configures the processor to obtain, from a collection of source documents pertaining to a particular subject matter, the representational data described therein and convert the representational data into a high-dimensional coded form. The system according to this aspect can further comprise code that generates a virtual n-dimensional manifold within a memory of a computer using a manifold-generator module and which places, using a placement module, each of the coded representations at a location, such as a particular node within the node array, using an unsupervised learning algorithm.

[0026] A comparison module is included or utilized to compare, with a processor, a first plotted coded form at a first coordinate location within the virtual n-dimensional manifold, with a second plotted coded form at a second coordinate location in the virtual n-dimensional manifold. In one embodiment, this comparison module is utilized when at least one coordinate location between the first coded form and the second coded form lacks a plotted coded form, and in another embodiment can be used when at least one coordinate location adjacent the first and second coded forms is vacant. The comparison of coded forms is used to identify any common features shared by the first and second coded forms, e.g., common chemical features or sequence similarities. The system further includes a generation module utilized to execute code on a processor in order to generate at least one new coded form based on combinations of common features of the entities corresponding to the coded form located at the first coordinate location and the coded form located at the second coordinate location of the virtual n-dimensional manifold.

[0027] Optionally, the generation module described above is further configured to generate a synthesis strategy for synthesizing representational data described by the at least one new coded form using a standard synthesis strategy, such as retrosynthetic analysis.

[0028] In another aspect, the present invention can be embodied in a computer- implemented system utilizing a processor configured by a plurality of code modules executing therein to output a DNA, RNA, amino acid or other sequence data and synthesis strategies relating thereto, corresponding to biomedical or biopharmaceutical products not present a data store. In particular, the system includes instruction code in the form of software modules that configures the processor to obtain from a collection of source documents pertaining to a particular subject matter the representational data described therein and to convert each instance of representational data found in the accessed documents into a high-dimensional coded form. These high-dimensional coded forms are plotted to a virtual n-dimensional space or manifold, such as an n-dimensional node array. A comparison module is included or utilized to compare, with a processor, a first plotted coded form at a first coordinate location within the virtual n-dimensional manifold, with a second plotted coded form at a second coordinate location in the virtual n-dimensional manifold. In one embodiment, this comparison module is utilized when at least one coordinate location between the first coded and form the second coded form lacks a plotted coded form, and in another embodiment can be used when at least one coordinate location adjacent the first and second coded forms is vacant. This comparison is used to identify any common features shared by the first and second plotted coded forms. The system further includes a generation module utilized to execute code on a processor in order to generate at least one new coded form based on combinations of common features of the entities corresponding to the coded form located at the first coordinate location and the second coordinate location of the virtual n-dimensional manifold.

[0029] The present invention, in further aspects, can include steps or system components to synthesize a compound in which the chemical formula for the compound is determined according to a new chemical entity discovery process as described herein.

[0030] The present invention, in still further aspects, can comprise a compound described by a new chemical entity identifier that has been generated according to the steps of the process provided and system described herein, wherein the compound is synthesized according to a synthesis strategy generated as described hereinbelow.

[0031] These and other features and aspects will be understood from the discussion below of certain embodiments of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

[0032] Figure 1 is an overview block diagram detailing the arrangement of elements of the system described herein in accordance with one embodiment of the invention.

[0033] Figure 2 A is a flow diagram detailing the steps of an embodiment of the method applied to chemical entities as described herein.

[0034] Figure 2B is a flow diagram detailing the steps of an embodiment of the method applied to biologies as described herein.

[0035] Figure 3 is a block diagram of an example system in accordance with an embodiment of the present invention. [0036] Figure 4 is a diagram of the operation of the plotting module according to certain embodiments of the system described.

[0037] Figures 5 A, 5B, and 5C are depictions of the visualization component of the described system and method.

[0038] Figure 6 is a diagram of the operation of the new chemical entity generating module according to certain embodiments of the system described.

[0039] Figure 7 A is a detailed view illustrating common structural elements of nearby or adjacent nodes of a visualization map.

[0040] Figure 7B is a flow diagram in accordance with certain embodiments of the invention.

[0041] Figure 8 is an illustrated diagram of the elements of the system of an embodiment of the present invention.

[0042] Figure 9 is a flow diagram in accordance with certain embodiments of the invention.

[0043] Figure 10 is a flow diagram in accordance with certain embodiments of the invention.

[0044] Figure 11 is a flow diagram in accordance with certain embodiments of the invention.

DESCRIPTION OF CERTAIN EMBODIMENTS OF THE INVENTION

[0045] By way of overview and introduction, the presently provided methods of retargeting a n-dimensional trained map concerns a computer implemented system and method for ranking chemical entities based on the analysis of how similar the chemical entities are to chemical entities referenced in source documents, such as patent documents. The system and method are configured to carry out a series of steps, implemented as instructions executed by a processor of a computer, in order to generate a virtual space in which chemical entities are arranged based on their similarity and from which output as one or more rankings, of how similar new chemical identifiers corresponding to chemical entities not disclosed in the source documents are to those provided in the source documentation. Thus, according to one or more implementations described herein, one or more processors are configured to generate an n-dimensional map using the results of a query for compounds enumerated within a collection of documents describing a particular biological target of interest. Here the chemical identifiers contained within the results are transformed into document coded forms and used to generate the n-dimensional map. The chemical structures of a curated set of compounds (such as small molecules or peptides) are converted into the same type of coded forms used to generate the n-dimensional map. In turn, the processor is configured to evaluate the distance between these curated coded forms and the closest cluster (or node) in the generated n-dimensional map by determining the distance between curated coded form and the node of a cluster of coded forms present in the n-dimensional map. The processor is further configured by one or more code modules to filter-out distant curated coded form compounds by removing those greater than a pre-determined distance from its closest cluster’s weight vector.

[0046] The processor is also then configured by code to compare remaining curated coded forms that are within the pre-determined distance of a node to the document coded forms by calculating the distance between the descriptor vectors for a given curated coded form and document coded form. The processor is further configured by one or more modules to filter-out relationships between curated coded forms and document coded forms over a certain threshold, also calculate similarity between a coded form and a document coded form. Using the distance, similarity, and number of patented molecules within a pre-determined distance of a coded form, the coded forms are ranked.

[0047] Throughout the following discussion, the American spelling of the singular “formula” and plural “formulas” is used instead of the British spelling convention “formulae/formula.”

[0048] As used herein, “representational identifier” means a format or nomenclature utilized as a representation of particular subject matter, such as nucleotide sequences, amino acid sequences, textual summaries or syntactic fingerprints, and/or chemical entities.

[0049] As used herein, “chemical entities” comprise chemical compounds, substances and non- stoichiometric compounds.

[0050] Also as used herein, “chemical identifiers” means any schema used to identify a specific chemical entity. For example, chemical formulas, structural formulas, chemical names derived from any chemical nomenclature, or trivial names all can be utilized in the systems and methods herein. In one particular arrangement, the chemical identifiers identify an opioid agonist (e.g. hydrocodone, morphine, hydromorphone, oxycodone, codeine, levorphanol, meperidine, methadone, oxymorphone, buprenorphine, fentanyl and derivatives thereof, dipipanone, heroin, tramadol, etorphine, dihydroetorphine, butorphanol, levorphanol). In a further arrangement, the chemical identifier identifies molecules that interact with specific G-protein coupled receptors, tyrosine kinase linked receptors, guanylate-cyclase linked receptors, nuclear steroid receptors, membrane bound steroid receptors, ligand-gated ion channel receptors or adhesion molecules.

[0051] As used herein, a “coded form” is a multivariable data representation of a particular set of information relating to the structural, sequential, physical and/or binding properties of a chemical entity represented by a chemical identifier. By coding such properties, an assessment of the similarities that exist among and between different chemical identifiers can be made, including automated assessments.

[0052] In part, the present invention concerns generating datasets which associate the extracted chemical identifiers, the coded forms corresponding to these extracted identifiers, and links to the originating source documents. By maintaining an association between these datasets, systems and methods in accordance with embodiments of the present invention can derive relationships between the datasets based on the chemical identifiers, rather than in view of their coded forms. These relationships enhance the principal function of generating potential new chemical entities by managing and utilizing source document data based on the underlying relationships between data extracted from the source documents.

Discussion of System Arrangement

[0053] In one embodiment, the computer system 100 is illustrated in Figure 1 and includes a computer (not shown) which has a hardware processor 102 configured to access a database 104 of stored source documents. Each stored source document contains at least information relating to a particular subject matter. In one instance the subject matter is a biological target of interest (e.g., sodium channel inhibitors,), and information describing chemical structures, formulae, antigens, amino acid sequences, or nucleotide sequences used to interact with, or related to, the biological target.

[0054] A search performed in a conventional manner on the database 104, including possibly several databases of documents, yields a universe of documents that relate in one manner or another to the biological target of interest. [0055] In a particular embodiment of the present system, the source documents are published patent documents, including patent applications and patents, available through the United States Patent and Trademark Office, optionally from foreign patent offices and from various commercial patent databases. Other collections of non-patent documents are suitable for use with the system and method, such as, by way of example and not limitation, technical and scientific journals, research compendiums, and other documents containing information relating to chemical compounds, any or all of which can be included in the database 104. Particular advantages result, however, when the source documents include published patent documents because one effect of the predictive engine described herein is the potential to identify novel and inventive chemical or biologic formula, sequences or structures, including ones not documented in the patent literature in connection with a particular biological target.

[0056] As illustrated in the high-level block diagram of Fig. 1, the processor 102 is configured by code stored in its memory 110 to extract data from the source document database 104 and generate a collection of representational data objects that preserves the relationship between the representational data and the source document. While the present discussion is in relation to the processor 102 and the memory 110, the processor can include multiple cores, or can be embodied as a plurality of processors, each being provided with code from a respective memory, as may be implemented in a distributed computer implementation of the invention.

[0057] In one arrangement, representational data objects are amino acid sequences. In an alternative embodiment, the representational data are chemical entity identifiers. However, for ease of discussion, the following example will use chemical identifiers to illustrate the implementation of the described embodiments.

[0058] Thus, for example, chemical entity data objects can be stored in a representational data object database 106. When evaluating chemical compounds, the representational data object database is a chemical entity data object database. Alternatively, when evaluating biologic entities or identifiers, the representational data object database 106 is a biologic data object database. In an alternative context the representational data object database is a textual data object database. In one embodiment, the processor 102 executes software modules stored in the memory 110 which configure the processor to access the database and generate predictive or analytic outputs based on the contents of the chemical entity data object database 106 and based upon algorithmic logic discussed in this specification. Through the use of code modules stored in the memory 110, the processor 102 can provide a visualization via a visualization system 108 of a virtual target landscape which is constructed and exists in the computer implementation in order to present locations in the landscape at which new or predicted chemical entities (NCEs) are predicted to reside. Such NCEs are not described within the universe of source documents that gave rise to the virtual landscape for the particular biological target of interest, and only a portion of potential NCEs would be of interest, such as those CEs that occupy prescribed placements or locations within the constructed landscape. Based on a selection of specific chemical entities from among the entities in the representational data object database 106, the modules configure the processor with code that executes therein to generate or “propose” new chemical not currently described in the source document database or the representational data object database 106, but which are similar to a particular selection as a function of location within the virtual landscape (e.g., a visualization presented in a low-dimensional node array).

[0059] In an arrangement based on the selection of specific biologic entities from among the biologic entities in the database 106, the modules configure the processor with code that executes therein to generate or “propose” new biologic entities not currently described in the source document database or the biologic entity object database, but which are similar to a particular selection as a function of location within the virtual landscape (e.g., a visualization presented in a low-dimensional node array).

[0060] As used herein, “similar” is meant to describe chemical having substantial overlap in chemical structure, sequences, domains, features and physical properties. The selection and generation can be made by the user alone, such as by interaction with the virtual landscape to guide further processing to identify new representational data with a particular placement within the landscape, programmatically, or through a combination of the two according to a pre-defined rule set or instructions. In one embodiment, as will be described in more detail below, a user can review a first visualization of chemical entities discussed in a set of selected source documents, namely, source documents that relate to a certain biological target, and select one or more chemical entities identified from that set of documents for further analysis. A range of similarities that exist between the predicted chemical forms and the chemical forms that have been selected in this way can be displayed to a user through the embodiment of the visualization system 108. Alternatively, the ranges of similarities as determined by the system are presented in a different manner. Regardless of the approach taken, the predicted and selected chemical forms can be stored in a storage device for future access or reference.

[0061] The processor 102 is configured to perform a series of discrete steps to access, analyze and generate outputs relating to the data in the representational data object database 106 as described. As will be apparent from the accompanying discussion of methods in accordance with aspects of the invention, prediction and identification of new chemical entities, or any other representational data, is performed in regard to a virtual landscape defined by a particular algorithmic approach and the identification includes fitting the newly identified chemical entity or other representational data into that landscape, regardless of whether there is a visualization of the landscape or not.

Discussion of the Principal Modules and Certain Methodologies

[0062] Figs. 2A detail particular work-flows in accordance with aspects of the invention, in which the subject matter of interest is a biological target and in which new chemical entities are to be located. When the discussion permits, additional examples are included. Likewise, Fig. 2B details the same workflow as in Fig. 2A but is directed to locating new biologic entities.

[0063] The steps shown in Figs. 2A-B can be carried out by code executing within the memory of the processor 102, as may be organized into one or more modules, or can comprise firmware or hard-wired circuitry. For simplicity of discussion, the code is described in the form of modules that are executed within the processor 102 and which are each organized to configure the processor 102 to perform specific functions. The block diagram of Fig. 3 provides an exemplary description of the modules that cooperate with the memory 110 and processor 102 to implement the steps outlined in Figs. 2A-B, and are shown for ease of illustration as all being associated with a single processor 102 and memory 110. As noted previously, the processor 102 can comprise a plurality of cores or discrete processors, each with a respective memory, which collectively implement the functionality described below, together with associated communication of data therebetween.

[0064] With reference now to Figs. 2A-B and 3, the prediction and new chemical entity generation system is initiated and implemented by at least one search module 310 which comprises code executing in the processor 102 to access and search the records in the source document database 104 according to step 210.

[0065] U.S. Patent Application Serial No. 14/795,375, entitled “Chemical Formula Extrapolation And Query Building To Identify Source Documents Referencing Relevant Chemical Formula Moieties” naming inventors Kevin Brown and Kevin Brogle, which is hereby incorporated by reference as if set forth in its entirety herein, describes a system and method that can be used for constructing suitable queries. In brief, a set of specific representational identifiers that are represented or covered by a generic representational identifier found in, say, a target document, can be extrapolated and queries can be constructed and performed on a corpus of source documents for purposes of comparison of the members of the extrapolated set of specific representational identifiers to a database of known representational data. By matching known representational data in this way, any overlap between the generic representational data and specific instances of the generic representational identifier within the source documents is determined, and in specific implementations, the system and method reduces the scope of the generic representational identifier such that the reduced scope generic representational identifier encompasses only novel specific representational identifiers.

[0066] The database search step 210 executes to retrieve documents that discuss a subject matter of interest, such as a biological target of interest, from among the source documents. The records that reference the target of interest can be located, for instance, using text searching of the source documents or searching of an index of the source documents. As will be appreciated, the source document database 104 can comprise a single repository of records or can comprise an aggregation of data stores. In one example, the system is configured to connect through the Internet to a remote document database. In this embodiment, the system is equipped with modules capable of configuring the processor to query remote databases and parse the results. In one embodiment a network interface card (NIC) is configured to communicate with the processor 102 in order to establish a connection to an external network. In another embodiment, a wireless adapter is used to communicate with the processor 102.

[0067] In a further example, the search module 310 includes code that executes so as to configure the processor 102 to search the applicable database(s) with defined search parameters such as a particular biological target of interest. Additionally, the search module 310 can include further code, as part of a single module or which may comprise sub-modules, which configure the processor 102 to return only those search results that match specific criteria. One search criterion can be the presence of chemical formulas or structures suitable for conversion into coded forms. A non-exhaustive list of search parameters that can augment or be run in addition to a search concerning a biological target of interest or other subject matter of interest includes: a publication date, inventor name, assignee name, country of filing, language, and other parameters typically included on a cover page of a printed patent, published patent application, or in a conventional patent document database.

[0068] In a further embodiment, the results from the database query of step 210 can be filtered using a filtering module 312 which can comprise code executing in the processor 102 in order to perform a filtering step 212. The filtering module 312 in one particular embodiment configures the processor to only access those source documents which include in their discussion a particular sub-set of the biological target of interest. In Fig. 2A, the filtering module 312 can configure the processor to execute a filtering step in which the results of a database query are filtered to identify those documents which relate to sodium channel inhibitors or other small molecule compounds. In Fig. 2B the filtering module 312 can configure the processor to identify those documents relating to an immune-mediated inflammatory disease. The results of this step and other steps can be managed within a memory of the computer, with data moved in and out of a non-transitory memory or stored elsewhere, as required.

[0069] In one embodiment, the results of the filtering step 212 are stored in the chemical or biologic entity data object database 106. In an alternative embodiment, the search module 310 configures the processor 102 to store the results of the query in a non- transitory memory or an external, non-volatile storage device, either of which is accessible to the processor 102.

[0070] Once the data from the source documents is stored in a storage location, it is made available to the processor 102 for analysis. In one embodiment of the system, the analysis of the data includes the use of an extraction module 320. The extraction module 320 can comprise code (more generally, “software”) that configures the processor to perform an extraction step 220. The extraction step 220 causes the processor to obtain, from each source document, at least one specific chemical found in the source document. For instance, the extraction module can perform a text parsing function that identifies candidates for extraction with reference to a rules base. For example, the rules base can instruct the text parsing function to parse prefixes, subscript and superscript components of a chemical name according to a pre-determined nomenclature schema.

[0071] In a particular arrangement, the extraction module is configured to extract alpha-blockers, beta-blockers, calcium and other ion channel inhibitors, opioids, and combinations or variants thereof. For example, the extraction module 320 is configured to extract from a source document one or more “true” alkaloids (e.g. atropine, nicotine, and morphine), alkaloids containing terpene (e.g., evonine) or peptide fragments (e.g. ergotamine) coniine and coniceine, protoalkaloids (e.g. mescaline, adrenaline and ephedrine), poly amine alkaloids, peptide and cyclopeptide alkaloids and pseudalkaloids.

[0072] In an alternative arrangement, the extraction module implements a natural language extraction and association algorithm, comprising code executing in the processor, to extract data from the text of the document. In this arrangement, the extraction module utilizes a dictionary of weighted subject matter terms and tokens to extract information from the text of the source documents and convert that information into a computationally useful format. For example, terms commonly used in the collection of patent documents are provided with relevancy weight, such that any extraction will provide discounted values related to the presence of terms commonly found across the collection of source documents. In one embodiment, this relevancy weight is determined by calculating the frequency or uniformity of occurrence of each term in the document or within a collection of documents, or in a larger corpus of text, by assigning weighted values to each term within the document, depending on the frequency of that term or token within the corpus or collection of corpuses selected. For example, common stop words and words common to the subject matter are given a low relevance score. In one embodiment, the relevancy scores are a binary score. In another embodiment the relevancy scores are established relative to a defined relevancy range. In this way a textual fingerprint, such as a numerical or data structure representing the underlying core concepts of the corpus, is generated using the weighted values. In this context, common terms will not be used, or will have reduced relevancy, when generating a numeric representation of the textual elements of a source document that describes the subject matter contained therein. Likewise, terms that have specific technical meanings are given higher weight as they are more likely to describe the specific subject matter of the source document. Thus, collections of terms representing the subject matter of, e.g., each patent document, are generated with each term having an associated value. In a further implementation, the terms are compared to a library of generic features or concepts found within the subject matter, and scored based on the relevance, rarity and/or specificity of the terms found within each source document. These values are then used to convert the terms into a numeric representation of the subject matter of the source documents such that it can be placed within an n-dimensional manifold.

[0073] In an alternative configuration, the text is parsed by passing it to one or more large language models. In one arrangement the large language models are trained to identify chemical or biologic identifiers from the text and extract the identified chemical or biologic identifiers to a database or list for further processing.

[0074] In a further alternative embodiment, the extraction module implements a biologies extraction algorithm, comprising code executing in the processor, to extract biologic representational data (e.g. DNA, RNA, amino acid sequences) from the document. In this arrangement, the extraction module identifies the representational data sequences and extracts those sequences as data. In this instance, the extraction algorithm extracts adenine, cytosine, guanine, thymine, and uracil base identifiers provided in a sequence from a document. For example, sequence listings commonly used in patent documents are extracted and associated with the bibliographic data representing the source patent. These sequences are then converted into a numeric representation of the representational data such that it occupies a space within an n-dimensional manifold. In another arrangement the data extracted is data relating to antibodies and antigen binding fragments thereof including antibodies from various animals, humanized, chimeric, polyclonal, monoclonal, bi-specific, multi-specific, single chain antibodies, Fab fragments, F(ab')2 fragments, disulfide-linked Fvs, fragments containing a VL or VH domain or a complementary determining region (CDR), wherein the antibody or antibody fragment immunospecifically binds to a peptide, polypeptide or protein that is described in a collection of source documents.

[0075] The extraction module 320 can be arranged to include sub-modules that transform the text and the bibliographic information into a data object or record. In particular, the extraction module or its sub-modules can include code that configures the data object to populate fields included in the data object’s definition with data elements unique to the source document, such as the patent or application number, the name of the inventors, assignment status, date of filing and other bibliographic data. Alternatively, the data object can comprise a database entry, a record, a linked list, and so on, all of which can enable the operations described below in regard to data objects.

[0076] Optionally, the extraction module 320 can further comprise code that configures the processor to implement a secondary filtering step 222. For instance, the second filtering can comprise code that eliminates data objects that concern salts, crystalline or amorphous forms and other duplicative or similar entries of a particular chemical entity. Upon completion of the extraction and filtering steps 220-222, the process stores the filtered results in the chemical entity data object database 106 or elsewhere, as noted above.

[0077] In order to utilize the data stored in the chemical entity data object database 106, the processor operates on the text in the source documents to convert the text that the extraction module identifies as relating to a given chemical identifier into a coded form suitable for further processing. In one example, the coded form is a numeric value (e.g., a keyset) representing the structural, physical and/or binding properties of a given chemical compound.

[0078] In one embodiment, a conversion module 330, which can comprise code executing in the processor, configures the processor 102 to convert each chemical identifier into a coded form according to a conversion step 230.

[0079] In yet a further embodiment, the conversion module utilizes image recognition sub-modules to obtain chemical names or formulae from a given structural formula, such as a skeletal formula. For example, the conversion module 330 configures the processor to compare a structural formula under investigation to a plurality of known structural formulas, each associated with a specific chemical formula or chemical name, and to identify the chemical formula based on a match within a prescribed criterion(ia) between the two.

[0080] In an alternative configuration, the conversion module 330 comprises code executing to configure the processor 102 to compare peptides, polypeptides, nucleotide sequences, or any fragments, domains, or regions relating thereto.

[0081] In a further embodiment, the conversion module 330 can configure the processor to convert the chemical identifier of each chemical entity data object (CEDO) into coded forms and store the converted forms in a memory or other storage location while preserving the association between the CEDO and the coded form. In one embodiment, the conversion step 230 includes the embodiment of a MDL 960-bit SS- keyset numerical conversion algorithm, produced by MDL Information Systems, in order to convert the identifier into a numerical representation. Alternatively, other keysets such as, for example, those based on affinity-fingerprint algorithms or feature-tree algorithms, or the 881 bit structural keys used by PubChem, or 1- and 2-dimensional molecular descriptors can be implemented by the processor 102 in order to obtain coded forms of chemical identifiers.

[0082] As shown in Fig. 2B, a biological target is selected for analysis and evaluation. In the present context, the biological target of interest is a disease or disorder. For instance, the biological target is selected from any type of cancer e.g., leukemia and lymphoma, carcinoma, sarcoma, blastoma, or germ cell tumor. In another embodiment, the biological target is an autoimmune disorder. In a further arrangement, the biological target is a disorder of the skin, heart, lung, liver, bone, brain, stomach, colon, breast, prostate, bladder, kidney, pancreas, ovary, and/or uterus, lymphatic or nervous systems.

[0083] In an alternative configuration, the biological target is an antigen, or a specific class thereof, e.g. Tumor Necrosis Factor (TNF). For example, the search step 210 yields all of the documents within the document database that describe TNF inhibitors.

[0084] In a more detailed example using TNF, the search results contain references to biological identifiers or entities, such as antibodies from various animals, humanized, chimeric, polyclonal, monoclonal, bi-specific, multi-specific, single chain antibodies, Fab fragments, F(ab')2 fragments, disulfide-linked Fvs, fragments containing a VL or VH domain or a complementary determining region (CDR), wherein the antibody or antibody fragment immunospecifically binds to a peptide, polypeptide or protein or sequences describing the same.

[0085] Regardless of the conversion metric applied, the converted numerical forms are associated with the source biological identifier and are plotted to n-dimensional space according to steps 240-250, as discussed previously in connection with Fig. 2A. The distances between and among the plotted numerical forms provides a basis for a processor, executing code, to make a comparison and resulting similarity determination among the sequences, such as by calculating the smallest distance within the virtual n-dimensional space.

[0086] Once the numerical forms or other coded form conducive for similarity determinations have been obtained by implementing step 230, the coded forms are evaluated for their similarity to one another. In one embodiment of the system and method, a plotting module 340 is used to configure the processor 102 to conduct a similarity analysis on the plurality of numerical forms obtained and stored in the previous steps, as described herein. In one embodiment, the plotting module 340 comprises code that configures the processor to plot each of the CEDOs, as noted at step 240. The plotting module 340 can include code that executes so as to configure the processor 102 to plot the numerical forms to an n-dimensional, preferably low-dimensional space, such as a 2- dimensional or 3-dimensional space. That code can implement a dimensionality reduction algorithm, such as a self-organizing map algorithm or other form of neural network / machine learning algorithm.

[0087] Discussion of Chemical Entity Data Object Examples

[0088] The following discussion uses CEDOs as an example of the functioning of the system and method provided. However, it will be appreciated by those possessing the requisite level of skill in the art that BDOs or TDOs can be substituted for CEDOs when used in conjunction with corresponding databases 106, according to the following steps.

[0089] As used herein, neural networks are machine learning systems used to derive rule bases for evaluating unclassified data using pre-classified or “training” datasets. These rule bases are instructions that configure a data analysis agent, such as a processor, to classify new data passed to the system. Furthermore, the rule base is configurable such that the rule base itself is updatable, extensible or modifiable in response to new unclassified data. In the embodiment provided, the CEDOs are used both as the training data and the unclassified data.

[0090] In the illustrated embodiment, the plotting module 340 configures the processor 102 to generate an n-dimensional space as the landscape and seed it with placeholder values, as noted at step 242. The placeholder values in this example are selected to cover the range of potential numerical values for the converted coded (e.g., numerical) forms of the CEDOs. In a particular embodiment, the plotting module 340 includes code to further configure the processor to insert each CEDO at a location in the n-dimensional space, such as according to step 250. In the illustrated example, the particular location for the insertion operation is a function of the degree of similarity that the coded form shares with the placeholder data or to other coded forms previously placed in the n-dimensional space. Here, the coded forms are used to plot the CEDOs to a given coordinate location in the n- dimensional space according to the similarity of the coded forms of each of the CEDOs to one another and to the placeholder values. It should be understood, however, that one embodiment of the invention utilizes the plot coordinates to compute the degree of similarity without actually plotting the CEDOs to an output device.

Discussion of Plotting and Placement Module Example

[0091] Fig. 4 provides a detailed view of the subsidiary steps that can be performed as part of the operation of the plotting module 340 when the dimensionality reduction algorithm comprises a self-organizing map. The steps implemented therein as 410-450 are provided for illustrative purposes and are not restrictive, and may not be representative of the steps that would be utilized in order to implement a different algorithm.

[0092] In this particular embodiment, the plotting module 340 configures the processor to execute code in order to compute a degree of similarity (determined by calculating the Euclidean distance between the coded form and a weighted vector placeholder value) and placement of CEDOs according to the following self-organizing mapping algorithm:

[0093] EQ( 1): Wv(s + 1) = Wv(s) + 0(u, v, s) a(s)(D(t) - Wv(s)) while s <

[0094] In the example equation above, the algorithm is implemented as an iterative calculation. For example, the processor 102 is configured by code to iterate over the collection of CEDOs according to the above equation so long as S (the current iteration) is less than a user or computer provided iteration limit (e.g., X).

[0095] In the above equation, W represents the current weight vector of node t ! . Furthermore, t; represents the index of the node in the map, while represents the index of the best matching unit (BMU) in the map. 4 ^ • represents a restraint function value derived from the distance between the BMU and the input vector. Typically, this restraint value is called the neighborhood function and is used to calculate how the weight vector of a node is modified during the course of each iteration.^ represents a learning restraint due to iteration progress. Collectively, the CEDOs operate as data vectors and as such the entire CEDO collection is regarded as input data set D and the particular CEDO under analysis operates as , where operates as the index value of the target input.

[0096] In the process steps of Fig. 2, the processor is configured by the plotting module or its respective sub-modules, to generate a landscape in the form of a two dimensional virtual node array, as indicated at step 410 of Fig. 4. The node generation step can operate to produce a two-dimensional node. However, the sub-modules are configurable to generate multi-dimensional nodes, such as, for example, a three-dimensional node. In this particular embodiment, the nodes of the array are pre-seeded with weight vectors. The weight vectors, in one embodiment, are assigned random variables within the range of possible values based on the data set.

[0097] The plotting module 340 can further comprise code that configures the processor 102 to implement a CEDO selection process, as indicated at step 420. In this step, the processor selects a CEDO from the chemical object database and assigns the selected CEDO to a given coordinate location within the virtual node array. In one example, the CEDO is placed in the virtual node array according to the numerical form of the chemical identifier unique to that CEDO, in a virtual location defined by the selforganizing map, for example.

[0098] Optionally, the plotting module 340 further configures the processor to implement a similarity / identity analysis using algorithm EQI (above), as indicated at step 430. Thus, in one embodiment, the processor is configured to compare the input vector for a given CEDO (coded form) and the weight vectors. For example, the processor is configured to calculate the distance between the input vector and the weight vector, as indicated at step 430, where the distance between the input vector of a CEDO and the weight vector of the map’s node is related to the degree of similarity between the weight vector and the input vector values. In a particular embodiment, the distance formula is a Euclidean distance formula. In a further embodiment, the processor 102 determines which node in the map provided by the virtual node array produces the smallest distance between a given CEDO and the weight vector of any node (i.e. a “best matching unit,” or BMU).

[0099] The plotting module 340 further includes code executing within the processor in order to implement a placement step 440. The processor 102 is configured to place selected CEDOs, according to the input vector, into a virtual node having a weighted vector with the closest similarity. Once an initial placement occurs, the placement step can subsequently adjust the weight vector value of each node in the array depending on the current placement, as indicated at step 450. In one embodiment, the processor configured to make the adjustment of step 450 using code executing therein to update the placement of the CEDO in the map nodes that are in the neighborhood of the BMU, including the placement of the BMU itself. In a further embodiment, this is accomplished by adjusting the node weights stored in the processor memory relative to the recently added CEDO. In this way the CEDOs placement in a particular node of the virtual array is revaluated based on the BMU value and each input vector value.

[0100] The “neighborhood” as described herein, defines a set of neighboring nodes characterized by certain parameters such as distance from a BMU (best matching unit) and a shape of the neighborhood function. In a further embodiment, “neighborhood” references the maximum distance that an input vector can be moved while still remaining within a particular node.

[0101] Once a CEDO has been placed according to the adjustment step 450, the process iterates from step 420 to 450 with each new CEDO. This iterative process is commonly referred to as “training” or “seeding” the node map.

[0102] In some embodiments this map seeding subsequence is iterated several times for each CEDO in order to properly adjust the node weights for all of the CEDOS that have been included into the map so far.

[0103] Once all of the CEDOs have been seeded into the map, a final placement step 460 is implemented by a processor 102 configured to execute a final placement submodule of the plotting module 340. In this embodiment, each of the CEDOs is finally placed at a given coordinate location within the virtual node array according to the input vectors and the weight vector of the nodes.

[0104] Placement includes the intermediate step of assigning the coordinate locations according to the input vectors and the weight vectors of the nodes and the step of plotting the CEDO at the given coordinate location on an output device (e.g., display, printed report or data file).

[0105] The self-organizing mapping functions that have been detailed at steps 410-450 comprise one non-limiting embodiment of a dimensionality reduction algorithm. Other dimensionality reduction algorithms using neural networks or other analytic techniques are also useful in converting high dimensional datasets to low dimensional datasets. Examples of such techniques, such as feature extraction algorithms, and feature section algorithms are useful for organizing and visualizing the data according to the present system and methods.

[0106] In a further embodiment, a combined latent class and trait model, as described in Ata Koban, A combined Latent Class and Trait Model for the Analysis and Visualization of Discrete Data, 23 IEEE Trans. Pattern Anal. Mach. Intell. 859 (2001), incorporated by reference herein as if fully set forth in its entirety herein, is used to analyze and evaluate the CEDO data obtained from the source document. In this embodiment, the latent class distribution can be represented using the Koban equation as taught in the above journal article, as:

[0107] In the provided equation, the L-dimension variables c can be considered as a uniform sampling from the comers of a K-dimensional hypercube, with 8 being a distribution function. Furthermore, the latent dimension is K and one value of c is denoted by ck.

[0108] This latent class model can be combined with a latent trait model represented by a 2-dimensional grid of points X, where X = M x K and M =2 (e.g., 2-dimensionl) and this model is mapped by a set of L nonlinear and linear basis vectors $1 such that

[0109] EQ2: C = (X)

[0110] Where C is an L x K dimensional matrix.

[0111] The CEDOs are evaluated according to the above equations and mapped to a 2- dimensional grid based on the relationship of each individual CEDO to one another.

[0112] Other placement algorithms, including without limitation, smallest distance metric algorithms, can likewise be utilized by the systems and methods described herein.

[0113] For example, and in no way limiting, the CEDOs are generated using a vector creation process that allows for reversible conversion of the chemical structure or identifier or biological sequence. For example, the process of generating the CEDOs allows for the determination of the source chemical structure or identifier or biological sequence using only the CEDO form itself. In one or more particular implementations, the reversible vector forms are created using SMILE (Simplified molecular input line entry system) strings. Here, the molecular forms extracted from the corpus of documents are converted first into a SMILE string. For example, one or more processors are configured to implement a SMILE string conversion algorithm that converts the molecular form (either in chemical or structural notation) into a SMILE string. Once created, this SMILE string can then be converted into a numerical form for use in the n-dimensional array or other mapping technique. In the event that a new vector coded form is constructed using existing coded vector forms, these new coded vector forms can be converted back into SMILE strings from the numerical forms. For instance, where a new coded form represents a structure to be synthesized, the numerical form of the new coded form is decoded back to SMILES strings or other original string forms. From the SMILE strings, the new molecular form can be obtained.

[0114] In another configuration, one or more processors are configured to create a reversable vector coded form using categorical encoding. For example, one or more processors are configured to implement a categorical encoding (one-hot, as a non-limiting example) process or algorithm that generates a matrix for each structure. Here, one or more structures extracted from the corpus of documents are converted into a matrix. These matrices are then provided as inputs to one or more layers of a neural network. For instance, and in one non-limiting configuration, the matrix is provided to a convolutional neural network (CNN). In one arrangement, the CNN is configured with latent space optimization towards one or more specific features of a molecular form. For instance, the CNN is configured for optimization for one of more of the following: Bioactivity; Druglikeness; Chemical tractability; others. Once the CNN has processed the matrix, the final fully-connected layer is configured as the numerical form for input into the mapping algorithm.

[0115] Discussion of Visualization Module Example

[0116] Once the data objects that represent the unique numerical forms, or other coded form of the chemical identifiers have been plotted to the n-dimensional virtual space, the results of the plotting module 340 can be presented to a user through data visualization. In one embodiment, a visualization module 360, operating as code executing in the processor 102, configures the processor to generate visualizations of the data plotted according to the plotting module 340. In another embodiment, the plot coordinates are stored without use of a visualization engine.

[0117] For example, the processor 102 can be configured to implement step 260 in order to provide a user with a visual display of the CEDOs based on the similarity of the input vectors. Depending on user input and selection concerning what is to be depicted within the virtual node array, the visualization presented to the user can provide markers which represent each CEDO stored in the chemical entity data object database 106 (or elsewhere) and the corresponding placement of that CEDO within the virtual n- dimensional space. Visualization modules suitable for use in embodiments of the invention can include a variety of commercially available visualization systems 108. One such example is the Spotfire product of Tibco Inc., Palo Alto, California. Alternatively, the visualization module can be constructed as described herein for NCE visualization purposes.

[0118] Fig. 5 A depicts one non-limiting type of visualization of a collection of CEDOs for a given biological target. The data is arranged as a 2-dimensional array, where each individual CEDO has been plotted based on the similarity of the CEDOs to one another and to the weighted value of the node. In the illustrated example, the visualization module 360 provides a 2-dimensional grid on a display 400 or other output of the computer. However, in alternative embodiments, the visualization module 360 may display higher dimension visualizations. What can be appreciated, more generally, is that the placement of a given CEDO within the virtual node array is a function of the training that the array undergoes as each CEDO is added. As such, the similarity comparisons of chemical features, as described below, is a function of the virtual distances which owe their values to the placement and repositioning of CEDOs during training as the node-array is populated.

[0119] In one non-limiting embodiment, the visualization data presented to the user includes bibliographic data relating to the source document and the linked chemical identifier. In the illustrated data visualization (Fig. 5A), each marker 402 represents a different chemical entity. Likewise, a color of each marker 402 represents a different assignee for the originating source patent document. The shape of each marker, such as the triangle, corresponds to a single, common source document for each assignee. More generally, the markers are specified by rules stored in a memory 110 which are used by the visualization module 360 to influence output by the system to a display screen, printer or other such device.

[0120] In another implementation, the visualization data presented to the user includes additional content information obtained from external content sources. For example, the visualization module includes an external content sub-module or associated module that configures the processor to obtain external content relating to the CEDO, or the patent document that is the source of a particular CEDO. For example, the external content submodule is configured by code executing in the processor to identify external content relating to the CEDO or its source document. Such sources can include legal judgment databases, social media networks, regulatory (e.g. FDA, SEC) databases, scientific and technical journals, sales and marketing databases, and business development resources, license agreement records. These external content sources provide primary or secondary identifiers that can be applied to the CEDO. In one instance, a CEDO is marked with a particular color representing ownership status, but is also marked with a particular symbol indicating that it has been licensed to a third party. In this way multi-dimensional information is conveyed in the visualization.

[0121] As shown Fig. 5A, markers 402 are clustered to particular coordinate space locations within the provided 2-dimensional space. In the illustrated embodiment, each cluster of markers 405 represents a collection of markers having a similar chemical identifier, such as can be determined by a self-organizing mapping algorithm as discussed above. In the event that no chemical identifiers have a similarity within prescribed criteria to a given coordinate location, the node is rendered in the visualization as an empty node or gap 406.

[0122] Fig. 5 A provides a complete view of all the CEDOs obtained as a result of the inquiry in accordance with one embodiment of the invention. In various alternative embodiments, it is useful to organize the data according to the input vector (such as the numerical value representation of the chemical identifier), yet also display the data according to other features of the CEDO.

[0123] As shown in Figure 5B, the visualization module operates to output —to the display 400 or other output device— the original biologic or chemical identifier (e.g., formula or sequence 408) rather than the coded form. [0124] In the illustrated embodiment, the CEDO having the smallest distance (greatest similarity) to the weighed vector is displayed in the node as the representative member of each cluster. In an alternative embodiment, additional or alternative chemical identifiers or other data elements of the CEDOs can be output by the visualization module for review by a user based on one or more user-selectable criteria, including interaction with individual nodes, data objects, or menus provided by an interface in communication with the visualization module 360.

[0125] In an alternative visualization, the marker clusters can be depicted as pie charts. In this embodiment, the relative presence of a desired element of each CEDO is shown. In Fig. 5C, the segments of the pie chart illustrate the number of CEDOs belonging to a specific source document.

[0126] In the provided visualization, it should be understood that the space between the clusters of markers 405 is non-linear. Thus, in one embodiment of the system, relative distances between clusters can be represented by the presence, color and/or thickness of grid lines 410. For example, if grid lines are provided, the darker the grid lines, the greater the distance between each of the clusters 405. As another example, color coding can be used to represent closeness (red) and separateness (blue) with a spectrum in-between. The visualization module can include code that executes in the processor to support any of these, or other alternative visualization techniques.

[0127] In a further embodiment, the visualization module 360 comprises code that configures the processor to display CEDO data as a function of time. For example, the visualization module can configure the processor to display a time series of plots, where each of the elements of the series relates to the CEDOs from a common assignee at a given period in time. In this arrangement, the visualization module is configured by code executing in the processor to produce time-series animations based upon, among other features, the publication, issue, grant, or license of the underlying source documents linked to the CEDOs.

[0128] In a still further embodiment, the visualization module 360 further includes a statistical analysis sub-module. This sub-module configures the processor, in one implementation, to cooperate with the time-based data to produce predictions and evaluations of the data. For example, the statistical analysis sub-module comprises code executing in the processor to configure the processor to evaluate collections of time-series data across the collection of CEDOs and generate predictive models of how and how many source documents are generated over time that relate to particular biological targets and other associated data, or to any other subject matter of interest that is being visualized.

[0129] In one implementation, the statistical analysis sub-module configures the processor to implement one or more linear classifier algorithms (e.g. Support Vector Machine Algorithm, Naive Bayes Classifier, unsupervised learning algorithms and/or logistic regression) on data related to the CEDOs. In one implementation, the unsupervised learning algorithm (e.g., the self-organizing map algorithm previously described) is determines, using code that configures the processor, how a portfolio of CEDOs owned by an entity is developed over time, such as by identifying latent traits or parameters that are useful in predicting future development. For example, the processor implements an unsupervised learning algorithm to evaluate the changes in chemical identifiers described in source documents owned by an entity over time and extracts predictive information related to the changes. In another arrangement the processor is configured by code to evaluate the change in the number of nodes occupied by chemical identifiers described in source documents owned by an entity over time and to identify variables or parameters that are statistically linked to the change in the number of nodes. In these manners, predictive models can be generated and utilized by the statistical analysis sub-module.

[0130] Visualization Module Features

[0131] The map produced by the visualization module is adjustable based on additional user defined variables. For example, the display of CEDOs on the map can be filtered according to information relating to the source document or bibliographic information. In one arrangement, the map is configured to only display CEDOs from patent owners that have a certain financial position, such as profitability, or negative balance sheets. These additional data features are accessible through the source documents, or through third party databases that provide information corresponding to the inventors, assignees, owners, or licensees of specific or classes of CEDOs. In this regard, the system can link databases other than, say, patent and literature databases, in order to produce a map informed by another type of database, say, a financial database such as those available from Thomson Reuters or Bloomberg, Inc. [0132] In a further visualization, the map is configured to display the results representing the analysis of multiple subject areas. For example, the CEDOs originating from searches relating to different subject matters are visualized in a single 2-dimensional map. In this arrangement, the node array will contain CEDOs relating to a number of subject matter targets (e.g. sodium channel inhibitors, potassium channel inhibitors, etc.).

[0133] Discussion of a Prediction Module

[0134] In a more particular aspect that can be implemented in certain embodiments of the invention, a predictive analysis is conducted on the organized data. In the illustrated block diagram of Fig. 3, a prediction module 370 is implemented after the visualization module 360. Once the data has been organized by the modules, a predictive analysis can be performed before, or in lieu of, the visualization steps.

[0135] Referring again to Fig. 3, the prediction module 370 can comprise code which executes to configure the processor to predict, as indicated at step 270, at least one new chemical entity. In embodiments that include the visualization module, the new chemical entities that are predicted can be inserted into the n-dimensional space based on the results of the plotting module 340, utilizing the iterative insertion as described in step 250, into a desired location of the plot. For example, the user might select any empty node as the desired location, or might select a sparsely populated node, or might select an adjacent node as a location of interest. Alternatively, in an embodiment of the present invention that uses a non-node based dimensionality reduction technique, a coordinate location that is not currently occupied or that is of particular interest is selected in the continuous 2- or 3-dimensional space. Such selections can be made by interacting with the virtual node array as by manipulating a pointer or otherwise identifying a location within a graphical user interface that is presently displaying the virtual node array, or using a rule-based node selection algorithm. When locations are selected made using rule-based approaches, computational resources are allocated for the subject matter of interest (e.g., new chemical entity discovery) at locations in the landscape associated with rule-based discovery objectives, rule-based constraints on the new subject matter possibilities, or both, which improves the efficiency of the computer and of the downstream clinical investigation of any newly identified subject matter (e.g., new chemical entities) by focusing the machine’s operation. [01 6] The prediction module 370 can further include code that causes the processor to generate and predict chemical identifiers to add to an established population of representational data (e.g. CEDOs) that have been plotted to a 2-dimensional node map.

[0137] More generally, the prediction module 370 configures the processor to implement a series of steps. In one non-limiting example, as shown in Fig. 6, the steps carried out by the processor configured by the prediction module generate a new chemical entity formula based on the results of the plotting module. The prediction module implements a comparison step 620 to compare the chemical identifier, such as a chemical structure or formula (“CS”) or other chemical identifier of a CEDO located in one node of the virtual array to another CEDO located in a different node of the virtual array.

[0138] In an arrangement utilizing other representational data, the commonalities present between the coded forms of representational data found in adjacent nodes are used as a basis to generate new representational data not found in the manifold. For instance, the commonalities between nucleotide sequences are used to generate a new nucleotide sequence not described in the source documents, that when converted into the coded form occupies a desired location in the node array.

[0139] In one specific embodiment, the user selects a specific node as a starting point for the prediction module 370. In an alternative configuration, the prediction module 370 includes a target sub-module that configures the processor to automatically select a target node for analysis. For example, the target sub-module is configured to select as a target any empty node in the virtual array. Alternatively, the target sub-module configures the processor by code executing in the processor to select as a target any empty node that shares borders with the nodes filed with coded forms of representational data, here CEDOs, having the same bibliographic information. In a further arrangement, the target node is selected based on external content obtained from the external content sub-module.

[0140] For example, the CEDO locations are virtual array nodes generated by a selfmapping algorithm. In a further embodiment, the first and second nodes share a border with each other or a common third node in the virtual array. In an alternative embodiment, the first and second location nodes instead comprise first and second coordinates points in a virtual n-dimensional space, when the n-dimensional space is generated using a nonnode based dimensionality reduction technique to define that landscape.

[0141] Discussion of Common Feature Identification [0142] In a further embodiment, the processor is configured to implement a common CS feature identification, as indicated at step 640. According to step 640, the chemical features for the CEDOs of the first and second location in the virtual array are identified. In one embodiment, the processor implements an algorithm configured to extract the number and form of chemical sub-units of which the compound is composed. This can include chemical features corresponding to Murcko derived scaffolds, graphs and molecular frameworks.

[0143] In an alternative embodiment, an image processing system (“IPS,” not shown) can be used to extract common structural elements between the first and second numerical forms. An IPS can capture a segment of the map (e.g., a node) and characterize the CS based on the image using rules that match the features within the target viewing area (such as ring structures, single and double bonds, and so on).

[0144] Fig. 7A illustrates two sample chemical forms sharing a common border with a third, empty node, as determined by a self-organizing mapping algorithm. The chemical forms illustrated, for example, include the types of features that an IPS can be programmed to recognize. As shown in Fig. 7A, the common structural forms of first chemical structure 701 and second chemical structure 702 are analyzed, such as by an image processing algorithm comprising code executing in the processor 102 to configure the processor to extract the structural features that are in common with both. In this embodiment, the processor identifies common structures (A, B) and non-common structures C, according to a look-up table or a database of known or expected chemical structures, and optionally using rules that govern how the processor is to process the structural forms.

[0145] Returning to Fig. 6, the predictive module is further configured to implement within a processor a new chemical form generation, as indicated at step 660. In the described embodiment, a new chemical form is generated based on the shared common chemical features between the CEDOs at the first location and the second location of the virtual array. In particular, the new chemical form is generated by replacing sub-units of the common chemical’s structural features. Alternatively, the new chemical form is generated by selecting, augmenting or modifying the non-similar chemical sub-units and combining those units with the commonly identified structural features. In a one particular embodiment, a chemical formula is generated corresponding to the new chemical form. [0146] Selecting and obtaining chemical formulas based on the known chemical structures of each CEDO is not limited to image analysis functions. There exist a number of different computational chemistry methodologies, including but not limited to: scaffoldhopping, and other bioisosteric replacement techniques such as fragment replacement, computer assisted organic synthesis methods, Ab initio methods, density functional methods, semi-empirical and empirical methods, molecular mechanics, molecular dynamics methods, any of which can be used to determine the form of the new chemical entity.

[0147] In a further arrangement, any new chemical forms generated according to the above steps are then subject to a pharmaceutical suitability analysis, such as by evaluating proposed chemical forms using Lipinski's Rule of Five, or another drug likeness rule to determine if the proposed chemical entity has properties that would make it likely to be orally active in humans.

[0148] As shown in Fig. 6, the processor executing the prediction module is further configured to convert the new chemical entity chemical formula to a coded form according to the conversion step, as indicated at step 670. In a particular embodiment, the processor converts the chemical form using a specified key-digit solution suitable for use in the dimensionality reduction algorithm being used in that particular embodiment of the invention. The prediction module 370 further configures the processor to implement a placement step 680 to place the numeric form of the new chemical entity in a given location of the n-dimensional space of the virtual node array. Upon placement in the virtual node array, if the numerical form is located in the desired coordinates of the plot, then the processor associates the new chemical form with a unique visual marker and updates the visualization. Again, the “desired coordinates” could be those coordinates which are between the first and second virtual nodes, within the first or second virtual node, or within a third node in the virtual array which shares a border with the first and second virtual nodes.

[0149] Alternatively, if the newly formed chemical entity does not result in placement in the desired coordinate space, then the processor can be configured by further code, such as in an iterative sub-module, to generate new chemical entities. This iterative process is controlled by the processor and is configurable to continue generating new chemical entities until one of the entities, when converted into a coded format and inserted into the node, results in the desired placement has been generated, or, alternatively, until a pre-set time limit, or number of attempts has been met or exceeded. In a further embodiment, each newly generated coded form that fails to have the desired placement in the virtual node array is stored in a memory storage location for later retrieval and use by the system.

[0150] In a further aspect, the prediction module can configure the processor to implement a verification step 690. In an embodiment that includes this step, the processor executes instructions in order to evaluate the probability that each chemical identifier of each newly generated chemical entity is able to be synthesized. In a particular embodiment, the verification step 690 compares the chemical formula of the new chemical entity to a database of known chemical structure, structural interactions and/ or chemical reactions and formulae. According to this embodiment, each new chemical identifier is evaluated for the probability of successful synthesis, e.g., whether it is above a pre-set threshold. The synthesis probability is provided by the processor to the user as part of the visualization update. The probability evaluation can utilize stochastic algorithms to identify subsets of NCEs that are more likely to be synthesizable. In one embodiment, only synthesis probabilities above the pre-set threshold are provided as part of the visualization update.

[0151] The verification as to whether a predicted chemical entity can be synthesized can be informed by chemical synthesis machines, such as the Revblocks ™ platform being developed or offered by Revolution Medicines of Redwood City, California. Platforms such as this are said to synthesize original compounds. Turning to Fig. 7B, a detailed example of the predictive portion of the system described is in connection with a flow diagram. Step 704 follows the generation of new chemical formulae for insertion into the node map based on chemical formulae of neighboring nodes (chemical structures 701 and 702). The processor, configured by the prediction module code, generates a new chemical identifier, such as a new chemical formula (NCF), by modifying the chemical formula of sub-unit C (Fig. 7A) according to known chemical rules and libraries.

[0152] Once NCFs are generated, they are converted by the processor into numerical forms as in step 705. The converted forms are then placed in the node array stored in the memory of the processor, as in step 706. Furthermore, the processor is configured by code to filter the NCFs, selecting only those that result in placement in the node array at a desired coordinate location in the virtual array, as shown in step 707. [0153] Discussion of Synthesis of Newly Identified Subject Matter

[0154] Step 708 details the actions taken by the processor to access, from a database or other memory storage location, the original NCFs corresponding to the filtered coded forms. In step 709, the processor is configured by code to evaluate the NCFs in light of stored or accessible chemical synthesis rules in order to determine likelihood of synthesis. The processor is further configured by code executing therein to output NCFs with a synthesis probability above a threshold to a visualization module for display, as indicated at step 710. A collection of new chemical entities with associated synthesis probabilities can be presented to a user as a visualization within the virtual array of the stored chemical identifiers in the storage location. Alternatively, a user supplied metric, such as synthesis time, cost, or difficulty is implemented and used to filter the results displayed or provided to the user.

[0155] In yet a further embodiment, the prediction module configures the processor to predict a location of potential interest within the virtual array and generate a new chemical formula corresponding to that location. In one example, the prediction module is configured to generate a time series plot indicating the publication of source documents over time. In a further example, the prediction module is configured to extrapolate, based, e.g., on the rate of publications of source documents, a development path for a common inventor or assignee. The system described may be configured to generate a new chemical entity which, when placed in the virtual array, occupies a location in line with the development path or which is clear of that path.

[0156] In a further embodiment, the prediction module is configured to extrapolate a location or locations in the virtual node array at which the development path of a plurality of assignees or inventors will intersect, and generate a chemical formula which, when placed in the virtual array, occupies or is clear of that intersection location.

[0157] As a further embodiment of the system and method of the present invention, the processor is further configured by code to generate a synthesis strategy along with the new chemical identifier, such as may occupy or be clear of a development path of one or more assignees, inventors, and so on, as discussed above. For instance, the new chemical formula generation step 660 includes sub-steps designed to generate a synthesis strategy or plan based on organic compound synthesis analysis of the desired chemical compound described by the new chemical identifier. [0158] The techniques for utilizing and designing computer-assisted synthesis strategies include, by way of non-limiting example, computer based retrosynthetic analysis. For example, “Route designer: a retrosynthetic analysis tool utilizing automated retrosynthetic rule generation” James Law, et al., J. Chem. Inf. Model., 2009, 49 (3), 593- 602, the content of which is hereby incorporated by reference in its entirety, describes the utilization of software tools and processes to generate a proposed chemical synthesis strategy based on breaking down of a chemical identifier into idealized compound fragments. These idealized compound fragments are substituted with synthetic equivalents having known synthesis strategies and have similar characteristics to the characteristics of the idealized fragments, e.g., the same elemental composition, binding affinity, etc., according to a database of chemical data. In this way, the software tool can execute to cause a processor to provide a synthesis strategy for the new chemical identifiers using synthesis pathways already known in the art.

[0159] In the event that the idealized compound fragments do not have known synthetic equivalents, these idealized components are broken down into smaller fragments until the synthesis of each of the fragments, or their substituted synthetic equivalents are described in a database of synthesis strategies or pathways. Thus, the synthetic pathway to achieving the new chemical entity is derived using the new chemical entity identifier in lieu of a process of trial and error using common starting reactants.

[0160] In one potential arrangement, the fragment data used to determine the synthesis are the same fragment data used to generate the new chemical entity. For example, each of the modified sub-units (See C in Fig. 7A) used to generate the new chemical identifier are utilized as idealized or synthetic equivalent fragments in order to determine a synthesis pathway of the resulting new chemical entity. Owing to the fact that the sub-units utilized to generate the new chemical entity are known, they are derived in part from the chemical database associated with a given embodiment of the system. As a consequence, embodiments of the present invention allow for the generation of both the new chemical entity as well as a synthesis solution to synthesize the chemical compound. In other embodiments, different strategies for synthesizing or designing a usable synthesis strategy, such as, but not limited to, functional group analysis, stereochemical and chirality analysis, structure-goal seeking strategies, topological analysis strategies and transform-based strategies can be employed to synthesize a chemical compound described by the chemical identifier. [0161] In one arrangement, once a chemical formula and the synthesis strategy are generated, this information is then used to synthesize the chemical compound described by the chemical formula or identifier according to the synthesis strategy.

[0162] For example, in one particular embodiment of the invention, the new chemical entity identification method includes a further synthesis step, carried out to enable synthesizing a compound described by the newly generated chemical identifier. In a further embodiment, when the newly generated chemical identifier is intended to have a therapeutic effect on a biological organism, a further step includes preparing a pharmaceutical composition comprising an effective amount of the chemical compound corresponding to the new chemical formula generated according to the chemical entity generation module, or an acceptable salt thereof, and a pharmaceutically acceptable excipient. A further step can include coating the so-prepared composition, such as with an enteric coating. The method can include a variety of additional steps to prepare the composition in a form suitable for administration to a person.

[0163] In a further arrangement, the chemical compounds are synthesized using a device or machine configured to implement continuous-flow multi-step organic compound synthesis utilizing a feed stock of standard reactants commonly used in the type of synthesis reactions necessary to achieve the desired end chemical compound. For example, the processor of the present invention can be further configured to provide instructions to a computer controlled continuous flow reactor, such the chemical compound described by the new chemical entity identifier is synthesized according to a retrosynthetic plan determined by a synthesis plan module configured as code executing within the processor.

[0164] UTILIZATION OF THE TRAINED MAP

[0165] It is appreciated and understood by the inventors that the trained map detailed and described herein can, in particular implementations, be extended, revised or utilized for further or deeper analysis of a biological target or chemical compound. By way of nonlimiting implementation, the trained map generated according to steps 210-260 and provided herein, can be utilized for the purposes of evaluating the suitability of a compound for treatment of a particular disease or interaction with a particular biological target. Without being limited to any theory or explanation, the trained map can be retargeted to as to identify which, if any, of a collection of compounds under analysis might have utility in the treatment of a particular disease or interaction with a particular biological target. For example, a trained map generated for a biological target can be used to evaluate new compounds. In one implementation, these newly evaluated compounds are inserted into an already trained map. By identifying the placement location in the generated trained map information can be derived about the suitability of the new compound for the treatment of a particular disease or interaction with a particular biological target.

[0166] While in no way limiting, in one arrangement a trained map is generated to determine the similarity of various compounds used to treat a disease, illness, syndrome or other ailment (such as but not limited to a Sudden Acute Repository Syndrome (SARS)). New compounds, which are not indicated for treatment of such an illness, are introduced into the trained map. Based on the position of the new compounds in the trained map, the new compounds can be ranked as potential screening candidates for additional therapies or treatments for the ailment.

[0167] RE-TARGETING PROCESS

[0168] Turning now to the flow diagram of FIG. 9, the retargeting or refocusing process begins by establishing a trained map of compounds exemplified from source documents that are directed to a particular biological target of interest, as shown in step 802. For example, a trained map is generated according to the steps 210-260 as provided herein. In one implementation, the trained map is generated using the results of a query of source documents. As noted, the source documents can be published (or unpublished in the case of an internal review) patent documents, including patent applications and patents, that have been filed at the United States Patent and Trademark Office, or other foreign patent offices and from various commercial patent databases. Other collections of non-patent documents are suitable for use with the system and method, such as, by way of example and not limitation, technical and scientific journals, research compendiums, and other documents containing information relating to chemical compounds, any or all of which can be included in the database. Here, as provided in steps 210-260, a query of the sources documents described a known biological target is executed against one or more databases of source documents.

[0169] The results of that query are processed such that the chemical identifiers (structural, nomenclature, representational) referenced in the source documents are extracted and converted into coded forms that can be placed in the trained map. As noted with regards to generating a trained map, one or more machine learning methods are used to place each of the coded forms within a two or three dimensional representation (the trained map) of the relationship of all of the coded forms to one another.

[0170] Turning now to step 804, one or more additional chemical identifiers or compounds are identified and provided to the trained map for evaluation. It will be appreciated that there exists in the art data and document sources that indicate the intended use, suitability or experimental results of a clinically approved, marketed or tested compounds. For example, investigational studies, investigatory new drug documents, publications or articles can reference the suitability of a compound for treatment of a particular ailment, symptom, or disease. Even when such investigations prove to not bear fruit with the intended ailment, data on these investigated compounds can enter into the public domain or the records of an institution or organization. Likewise, clinically approved compound may have efficacy for a number of different ailments or diseases. Such “off-label” uses are known and documented to persons of ordinary skill in the art. In one implementation of the retargeting process, one or more queries are conducted on databases of clinically approved, marketed or investigated compounds based on one or more search criteria. For example, where the biological target of interest (such as conditions relating to SARS) includes one or more features or conditions of note (i.e. a particular agonist or antagonist) the search query is constructed to identify small molecules or peptides that were investigated as relating to such a feature or condition. That is, where a studied disease is believed to be treated by a compound that acts as an agonist or antagonist to a particular biological target, the query in step 804 would return such a compound in the search results. Such is true even if the overall disease that the compound was intended to treat was different than the biological target used to generate the trained map.

[0171] As shown in step 806, upon receiving the compounds from the query conducted in step 804, a suitably configured processor converts the compounds into numerical or coded forms (herein “curated coded forms”) suitable for incorporation into the trained map. For example, the conversion module 330 is used to configure the processor (such as processor 1302) to convert the chemical identifier returned in the query of step 804 into curated coded forms and store the curated coded forms in a memory or other storage location while preserving the relationship between the chemical identifier and the coded form. In one particular implementation, the processor configured by the conversion module utilizes a MDL 960-bit SS-keyset numerical conversion algorithm, produced by MDL Information Systems, in order to convert the chemical identifier into a numerical representation. Alternatively, other keysets such as, for example, those based on affinityfingerprint algorithms or feature-tree algorithms, or the 881 bit structural keys used by PubChem, or 1- and 2-dimensional molecular descriptors can be implemented by the processor 102 in order to obtain coded forms of chemical identifiers identified in step 804.

[0172] It should be appreciated that, as part of the map generation process (step 802), the plotting module 340 configures a processor to seed the n-dimensional map it with placeholder values (as noted at step 242). The placeholder values in this example are selected to cover the range of potential numerical values for the converted coded (herein “document”) forms of the chemical identifiers from the original search for the biological target, as identified in step 802. In a particular embodiment, the plotting module 340 includes code to further configure the processor to insert each document coded form (obtained in step 802) at a location in the n-dimensional space, such as according to step 250. In particular, the location selected for the insertion operation is a function of the degree of similarity that the document coded form shares with the placeholder data or to other document coded forms previously placed in the n-dimensional space.

[0173] Turning now to step 808, each of the curated coded forms of the chemical identifiers generated in step 806 are assigned to a cluster or node of the trained map generated in step 802. Here, the curated coded forms of the chemical identifiers generated in step 806 are placed, using a processor, at a coordinate location in the n-dimensional space according to the similarity of the curated coded forms (of the chemical identifiers obtained in step 806) to either the placed coded document forms or the placeholder nodes. It should be understood, however, that one embodiment of the invention utilizes the plot coordinates of the curated coded forms to compute the degree of similarity to the already existing coded forms placed within the n-dimensional array without actually plotting the new coded forms obtained in step 806 into the trained map. In this manner, the coordinate where a particular curated coded form would be placed is determined, but the trained map itself is not updated to incorporate the curated coded form.

[0174] It will be appreciated that instead of generating a trained map as in step 802 and then adding the curated coded forms to the generated map as in step 808, the trained map can be generated that incorporates both document coded forms and curated coded forms at the time of map generation. Turning to the flow diagram of FIG. 10, a collection of chemical compounds is identified for inclusion into a data set for use in generating the trained map from document sources (e.g. the source documents for the document coded forms). As shown in step 902, one or more additional chemical identifiers or compounds are identified or curated from additional sources (e.g. the source documents for the curated coded forms).

[0175] The identified compounds in step 902 are then converted into curated coded forms in step 904. For example, the conversion module 330 is used to configure the processor (such as processor 1302) to convert the chemical identifiers identified in both the biological target query (document forms) and the curated review of clinically approved or marketed compounds (curated forms) into coded forms in a memory or other storage location while preserving the relationship between the chemical identifier and the coded form. For example, the conversion process is applied to a first database or array of document sourced chemical identifiers. The conversion process is applied to a second database or array of curated chemical identifiers. The results of this conversion process is stored to a third database or array that combines the document and curated forms while maintaining a link to the originating array or database. As previously noted, In one particular implementation, the processor configured by the conversion module utilizes conversion a MDL 960-bit SS-keyset numerical conversion algorithm, produced by MDL Information Systems, or other 1- and 2-dimensional molecular descriptors implemented by the processor 102 in order to obtain document and curated coded forms of chemical identifiers identified in step 902.

[0176] Turning now to step 906, a trained map is generated according to the steps 210- 260 as provided herein that includes the both the document and curated coded forms. As noted with regards to generating a trained map in step 210-260, one or more machine learning methods are used to place each of the coded forms, including the curated forms obtained in step 904, within a two or three dimensional representation (the trained map) of the relationship of all of the coded forms to one another.

[0177] As shown is step 810 (in both Fig 9 and 10), in some instances the coded form obtained in step 804 is not located close to any of the placeholder data or the document coded forms used to generate the n-dimensional map. That is, the distance between a particular curated coded form (such as one obtained in step 804 or 904) and one or more of the nodes or placeholder values used to generate the n-dimensional map is greater than a pre-determined threshold value. For example, when the curated converted forms are placed within the n-dimensional map they are not placed “close” to any other node or cluster of document coded forms. In one implementation, a filtering module 805 configures the processor to remove any curated coded forms from the trained map that are not placed within a pre-determined threshold distance of any node.

[0178] In a further filtering step, the filtering module is further configured to remove any curated coded form molecules that are placed at a node that that is not associated with any document coded forms. For example, where the curated coded form populates a node that is not populated by at least one document coded form, the filtering module 805 configures a processor to remove such a populated curated coded form from the virtual map.

[0179] Alternatively, where the coded forms are not introduced into the map, as noted in step 808, the filtering module 805 configures the processor to remove any coded forms not meeting the previously described filtering criteria from the list of coded forms under analysis. Such a list is then stored in the memory of a processor for further use.

[0180] Turning now to step 812, the filtering module 805 also configures the processor to determine the similarity between the filtered list of curated coded forms and the document coded forms. For example, the distance between each curated coded form and the closest document coded form is determined. As in step 810, here those curated coded forms that are a greater distance than a pre-determined threshold are removed from the n- dimensional map. Alternatively, a list of curated coded forms is updated to indicate which curated coded forms are not within a pre-determined distance to a coded from used to generate the n-dimensional map. Such a list is then stored in the memory of a processor for further use.

[0181] Using the results of filtering step 812, the processor is configured by a ranking module 807 to rank the remaining curated coded forms according to one or more ranking criteria as in step 814. For instance, the ranking module 807 configures the processor to evaluate each of the curated forms remaining after the filtering step 812 according to the distance, similarity and how many document coded forms / nodes are within a set distance metric from the curated coded. For example, where the similarity between a curated coded form and one or more document coded forms is high, the distance between these coded forms will be small. The ranking module 807 determines, for each curated coded form, the number of document coded forms that are within a pre-set distance, how close the curated coded form is to each of the document coded forms within the pre-set distance, and how close the curated coded form is to the node or cluster at the given location in the pretrained map. Given such data, the ranking module 807 ranks the curated coded form (and thus the associated compound, based on these metrics. The ranked list of coded forms is then stored in one or more memory storage locations and provided to an output device (such as a display or database) for further evaluation. For example, where the coded forms are provided as a linked list or array that is linked to a list of the compounds, the output device displays the list of compounds in ranked order based on the curated coded form array.

[0182] Thus, according to one or more implementations described herein, one or more processors are configured to generate an n-dimensional map using the results of a query for compounds enumerated within a collection of documents describing a particular biological target of interest. Here the chemical identifiers contained within the results are transformed into document coded forms and used to generate the n-dimensional map. The chemical structures of a curated set of compounds (such as small molecules or peptides) are converted into the same type of coded forms used to generate the n-dimensional map. In turn, the processor is configured to evaluate the distance between these curated coded forms and the closest cluster (or node) in the generated n-dimensional map by determining the distance between curated coded form and the node of a cluster of coded forms present in the n-dimensional map. The processor is further configured by one or more code modules to filter-out distant curated coded forms that are not associated with a node, or a node that is not associated with any document coded forms, by removing those curated coded forms that are greater than a pre-determined distance from its closest cluster’s weight vector. The processor is also then configured by code to compare remaining curated coded forms that are within the pre-determined distance of a node to the document coded forms by calculating the distance between the descriptor vectors for a given curated coded form and document coded form. The processor is further configured by one or more modules to filter-out relationships between curated coded forms and document coded forms over a certain threshold, also calculate similarity between a coded form and a document coded form. Using the distance, similarity, and number of patented molecules within a pre-determined distance of a coded form, the coded forms are ranked.

[0183] Furthermore, according to one or more implementations described herein, the chemical structures of a curated set of compounds (such as small molecules or peptides) are converted into the curated coded forms. Additionally, one or more processors are configured to generate an n-dimensional map using the results of a query for compounds enumerated within a collection of documents describing a particular biological target of interest. Here the chemical identifiers contained within the results are transformed into document coded forms. A processor is configured by one or more modules to generate using both the curated and document coded forms, an n-dimensional map. Upon generation, the processor is configured to evaluate the distance between the curated coded forms and the closest cluster (or node) in the generated n-dimensional map by determining the distance between curated coded from and the node of a cluster of document coded forms present in the n-dimensional map. The processor is further configured by one or more code modules to filter-out distant curated coded form molecules by removing those greater than a pre-determined distance from its closest cluster’s weight vector. The processor is also then configured by code to compare remaining curated coded forms that are within the pre-determined distance of a node to the document coded forms by calculating the distance between the descriptor vectors for a given curated coded form and document coded form. The processor is further configured by one or more modules to filter-out relationships between curated coded forms and document coded forms over a certain threshold, also calculate similarity between a coded form and a document coded form. Using the distance, similarity, and number of patented molecules within a predetermined distance of a coded form, the coded forms are ranked.

[0184] The rank of the coded forms can then be used to evaluate the suitability of the corresponding molecules or compounds for use in interacting with the biological target. Those compounds ranked most highly are predicted to have similar or equivalent functionality with regards to a biological target as those compounds identified in the queried documents. Thus, the output of the ranked curated coded forms can be used to select promising candidates for additional investigatory studies with respect to the biological target. For instance, a chemical synthesis apparatus can be provided with the ranked list and instructed to synthetize one or more of the curated compounds based on their ranking. [0185] The above processing functions can operate as a series of programmed steps performed by a properly configured computer system using one or more modules of computer-executable code. For instance, a set of software modules can be configured to cooperate with one another to provide prediction information regarding new chemical entities to a display device as described herein. In this regard, there can be a database access modules, search modules, filtering modules, extraction modules, conversion modules, plotting modules, prediction modules, and visualization modules.

[0186] Each of these modules can comprise hardware, code executing in a computer, or both, that configure a machine such as the computing system 100 to implement the functionality described herein. The functionality of these modules can be combined or further separated, as understood by persons of ordinary skill in the art, in analogous embodiments of embodiments of the invention.

[0187] The processor 102 of the described invention is configurable for connection to remote storage devices and computing devices. For example, the processor of the described computer system may, in one embodiment, be configured for communication with a mobile computing device, or connecting via the internet to a remote server.

NETWORK DIAGRAM GENERATION PROCESS

[0188] As shown in FIG. 11, one or more steps are executed by a processor or configured system described herein to evaluate the relationship between chemical or biological structures or sequences present within a collection of documents. In a further arrangement, the processor is configured to evaluate the relationship and the strength of that relationship between different source documents using a network diagram.

[0189] With particular reference to the flow diagram of FIG. 11 , one or more software modules are executed by a network diagram processor to generate a network diagram of source documents or the chemical or biological identifiers referenced within a collection of documents. In a further arrangement, the network diagram is created based on the relationships between the chemical or biological structures. In yet a further arrangement, the network diagram is based on the language (such as but not limited to specific ngrams) contained within the source documents.

[0190] For example, as shown in step 1102, one or more processors are configured to receive one or more query requests. It will be appreciated that the described approaches to access and query documents can be used in the foregoing process, such as shown in steps 210-212.

[0191] For example, a user can access one or more user interfaces directly connected to the network diagram processor that allow for the submission of a biological target query. However, in alternative configurations, the user interface can be a separate software application that receives and processes the user’s query. For example, the separate software application is a remote software application that is configured to communicate with the one or more processors described herein. In one particular implementation, the separate software application provides a user interface that is configured to receive a user supplied query. This user supplied query can be provided directly to the network diagram processors described herein (such as through a direct internet connection). Alternatively, the separate software application is configured to first convert the user supplied query into a form and format suitable for use herein. For example, the separate software application is configured to cause the user’s query to be supplied to one or more natural language processing modules or remote applications that are configured to parse the natural language of the user query and produce a structured or pre-determined format output that corresponds to the user’s query.

[0192] Returning to the flow diagram of FIG. 11 , it will be appreciated that one or more network diagram processors are configured by software to evaluate the query supplied by the user (either directly or through one or more pre-processors) and generate one or more network diagrams or graphs that visualize the relationship between the results of these queries. Such network diagrams can be automatically created in response to the query supplied by the user, or in response to receiving an existing n-dimensional array of coded or vector forms.

[0193] As described herein, in one or more implementations, the biological target of interest is described in one or more documents. For example, in one particular implementation one or more biological targets described within a corpus of documents that are electronically accessible and searchable. Here, the corpus of documents is configured as a collection or database of documents. The document database can be, in one particular implementation, be a curated collection of documents. For instance, a curated document database can contain, in one arrangement, patents, patent applications and other documents relating to a particular entity. For example, a collection of patents, research papers, laboratory notes and other information owned by a pharmaceutical company or research institution.

[0194] In another example, a curated database is a literature database or patent database maintained by a university or other organization such as a commercial publishing firm. Here, such information may or may not be accessible to the public. In alternative arrangements, the document database is not curated. In one or more further implementations an uncurated database is a collection of accessible, or otherwise public, scientific, technical, and medical journals or documents. By way of example, the uncurated document database can, in one implementation, be represented by the United States Patent and Trademark Office patent database. However, in another arrangement, an uncurated database includes pre-print or published compilations of technical or other literature.

[0195] With specific reference to the steps outlined in FIG. 11, in one or more implementations, the documents queried are queried for subject matter containing the biological target of interest. As described herein, in one or more implementations, the documents to be searched by the query contain chemical and biological identifiers. By way of particular example, the biological target of interest relates to a particular condition, biological process or ailment, or other subject matter. Likewise, the documents subject to the query includes chemical structures, such as chemical formulae relating to the biological target of interest. However, in alternative arrangements, the structures are nucleotide or protein sequences described in the one or more results of the queries.

[0196] Continuing with the flow diagram provided in FIG. 11, as shown in step 1103, a search query is executed over the contents of the document database to identify documents describing the biological target of interest. In one or more particular implementations, a search query or search parameters involving the one or more biological targets is conducted. For example, a search can entail a specific biological target, such as sodium channel inhibitors, or a more general biological target, such as anti-viral treatments. Such queries are conducted on either the curated or uncurated database to produce a collection of results. For ease of explanation and in no way limiting, in the foregoing examples the search query is executed over a curated database of patents and patent applications. However, in another arrangement, the search query is executed over an uncurated database of patents and patent applications accessible from the USPTO or the World Intellectual Property Office (WIPO) database or another database provided by either a private entity or a governmental organization.

[0197] As a further example, the database is configured to receive a search query. Such a search query can be in the form of search strings, prose, or one or more unique numerical or alphanumeric identifiers. The database is configured to return, in response to these search parameters, a collection documents relating to the search query. In one or more implementations, the collection of documents relating to the search query are individual documents, such as individual patent and patent application documents. However, in an alternative arrangement, the results returned are in the form of links or data to a particular patent record. For example, the database is configured to store information relating to a given patent document in a structured format, such as XML, HTML, JSON or another interoperable data format. Here, a collection of structured format files or datasets are provided in response to a query.

[0198] As further described herein and in reference to the flow diagram of FIG. 11, the results returned from the search query are evaluated for further processing and integration into the visualizations described herein, as shown in step 1104. For example, in one or more further implementations, the results of the query are filtered or processed prior to further use. By way of non-limiting example, a processor is configured by code executing therein to filter the query results. Here, duplicate query results can be removed from the returned set. One or more datasets or individual files representing query results are compared to one another by a suitably configured processor. Where the comparison indicates that two or more datasets or files represent the same database entry, one of the database entries is removed from the dataset.

[0199] In yet a further implementation, one or more machine learning or natural language processing modules or models are used to evaluate each of the results returned in the query. Here, the machine learning or natural language processing modules are used to evaluate the similarity between two results in the returned results of the query. Where the machine learning or natural language processing model or module determines that the likelihood that two results are the same is above a given threshold, one of the results is removed from the query results dataset. In one or more further implementations, the search results of the database query for the biological target are evaluated and filtered to remove irrelevant search results. [0200] In one or more further implementations, each of the results returned from the query are evaluated. For example, a processor of the described network diagram system is configured to evaluate each of the results in the query results dataset and extract information thereof. In one arrangement, the processor of the network diagram system is configured by code to extract from each result in the query results datasets, one or more chemical or biological structures described therein. By way of example, a processor of the network diagram system is configured to evaluate the structured file for a particular location or portion thereof and extract one or more chemical or biological identifiers provided therein. For instance, where the structured file includes flags or references to one or more chemical compounds, the processor is configured to extract those chemical compound identifiers and store them for further use.

[0201] In one particular implementation, each of the results of the query are either a patent or patent application directed to a particular biological target. Here, a processor of the network diagram system is configured to extract from these patents and patent applications, one or more chemical formula or biological sequence. The extracted chemical formula can be an exemplified compound within the specification or claim of a patent document. For instance, the processor is configured to extract from the specification of the patent or patent application one or more provided chemical or biological identifiers.

[0202] In yet a further arrangement, the processor is configured to correct one or more extracted structures. For example, a processor is configured by code to compare the chemical or biological structures or identifiers extracted from the query results to a database of known structures. In one particular implementation, a neural network that has been pre-trained on a corpus of chemical or biological structures is configured to receive the extracted forms as an input. Here, the neural network is configured to produce an identifier or flag that corresponds to the degree of likelihood that the extracted form contains an error. For example, where the extracted form does not adhere to understood or approved naming conventions, has values that exceed a common range, or other errors, the neural network assigns the extracted form with a value indicating that it likely contains errors.

[0203] In another arrangement, the processor is configured to identify one or more extracted structures within a database of known chemical structures. Where the structures are not found in the database of structures, a processor is configured to use a similarity metric or other analytical approach to identify the closest likely possible structure. For example, where the extracted structure is a skeletal diagram, one or more image recognition or optical character recognition modules are used to identify the closet likely structure from a database of known chemical structures. Using the closest likely possible structure, the processor is configured to alter or modify the extracted structure. In one or more further implementations, the processor is configured to alter the extracted structure. Here, the processor can, in one or more implementations, remove salts and other forms of the extracted chemical identifiers. Likewise, the processor is configured in one or more further implementations to provide for the removal of duplicate entries and corrections of typographical or other errors relating to the extracted chemical or biological identifier.

[0204] In one or more further arrangements, the network diagram system is configured to access a database of numericized forms. For instance, a processor of the network diagram system is configured to access a database of chemical compounds or identifiers that correspond to one or more documents. Here, each entry in the database includes one chemical or biological form and any corresponding document where the compound is referenced. Using the results of the subject matter query, each compound identified within the results of the query (documents) is presented to the network diagram system processor for further use.

[0205] Here, the numericized database, for each entry, include a corresponding SMILE string, its numericized form according to at least one conversion algorithm, as well as chemical and structural identifiers for the compound or molecule of interest. In one or more further implementations, this database can include all known molecules exemplified within a collection of documents, or a user limited subset thereof. Furthermore, while computationally efficient to generate this database prior to use, in one or more implementations, the database can be generated or it in “real time” as necessary (i.e. enumerated) based on user needs. For example, where the user has no need to synthesize, virtually or otherwise, a new compound not currently within the map, the database is not constructed.

[0206] However, in another configuration, this database, and its entries of numericized molecules, can serve as the basis for new mapping processes. A processor, such as the network diagram processor, having access to the contents of the database can be configured to filter the database contents to arrive at a collection of molecules of interest. Here, these molecules of interest are already numericized. Therefore, the results of the query can be directly applied to an n-dimensional map without conducting the conversion process.

[0207] In yet a further arrangement, the database of numericized molecules is used to identify molecules of interest that are not present within a generated n-dimensional map. For example, the database of numericized forms can be used to identify a specific molecule or compound that fits within a given area of the n-dimensional map. As previously discussed, where there are gaps in the n-dimensional map, it is possible to generate new numerical forms that fits within these gaps. These newly generated numerical forms can be compared to the database of numericized forms to determine if an existing molecule or compound would fit within the location of interest in the n-dimensional map. For example, a computationally synthesized compound can be matched to an entry in the database. In this configuration, existing molecules that would fit within the identified gap are identified.

[0208] Alternatively, where there is no exact match for the newly synthesized numerical form, the database can be used to identify close or similar molecules to the computationally synthesized forms. For instance, a processor is configured to identify all numericized forms present in the database having a threshold of similarity with the computationally synthesized forms. In one arrangement, a processor of the described system is configured to identify all numerical molecules that are 90-95% similar to the numericized forms generated to fit into gaps or spaces of the n-dimensional map.

[0209] Turning now to Step 1106, each of the extracted compounds or nucleotide sequences are converted into a vector. Here, an existing numericized form database is not accessed. In this configuration, the vector is generated using one of more processes described herein, such as a multidimensional key bit set, or other approach to generating a CEDO. In a particular implementation, the conversion process is reversable. That is, in one or more further implementations the processor is configured to convert the extracted chemical or biological identifier or structures into a vector form. As described herein, in one or more implementations, the numerical forms are based on SMILE strings. These SMILE strings can be converted into numerical forms and the numerical forms can be converted back into SMILE strings using the described trained neural network. [0210] However, in one or more alternative configurations, once a new CEDO form is generated, it can be compared to the database of numerical forms.

[0211] In a further arrangement, a series of filtering steps are used identify from this returned collection of similar compounds, one or more compounds that are likely suitable for the users purposes. For example, the returned group of similar molecules can be filtered based on suitability of those compounds for good predicted bioactivity, based on known features, or other user supplied criteria.

[0212] This vector form is then used in further processes described herein. It will be appreciated that in one or more particular implementations, the vector form can be converted back into a structure or biological identifier. For example, where a chemical structure or identifier is converted into a vector, that same vector can then be converted back into a chemical structure. In one particular implementation, the vector is convertible into one of a number of potential structures. Thus, in one or more implementations, the processor is configured to implement a vector process that allows for the source chemical or biological identifier to be determined from the vector itself. As used herein, this bidirectional vector form operates in the same manner as the CEDO or coded forms described in this disclosure and can be implemented and used in connection with the n- dimensional map in the same manner as described herein.

[0213] For example, and now turning to step 1 108, once each structure extracted from the query documents has been converted into a vector form, each vector can be placed within a generated n-dimensional map. The process for placing and organizing the map has been described herein, for example, as described in at least steps 242-250 provided in FIG. 2B.

[0214] In one or more further implementations once the map has been generated distances between the vectors can be established. For example, as shown in step 11 10 one or more processors is configured to select a distance metric. In one particular implementation, the distance metric is a Euclidean distance metric. However, one possessing an ordinary level of skill in the art would appreciate that other alternative distance metrics are also envisioned in understood, such as Manhattan cosine and other distance metrics.

[0215] In one or more further implementations, a processor of the system described in in step 1110, is configured to calculate distance pairs for two or more vectors. In one particular instance, the processors are configured to calculate one way pairing functions for a pair of vectors. Once all of the distances between the various pairs of vectors have been calculated the map can be filtered based on those pairs that are within a threshold of a preset filter distance. In yet a further implementation, one or more processors of the system described is configured to create files based on the generated n-dimensional map.

[0216] Once the distance metrics have been calculated the processor of the network diagram system is configured to generate a network diagram based on the vector distance. For instance, the one or more processors of the network diagram system are configured to generate an edge file, as shown in step 1112. Here, an edge file contains information about each connection between two nodes. Specifically, the edge file contains information about which nodes are connected. Furthermore, information in the edge file indicates if the connection between nodes has a direction, and if so, what is the direction of the connection. Further information in the edge file includes the distance between the nodes as well as any other property that can be attributed to the connection between nodes.

[0217] For example, in one or more configurations, a processor is configured to access a database of molecules. Such a database could, for each entry, include a corresponding SMILE string, its numericized form according to at least one conversion algorithm, as well as chemical and structural identifiers for the compound or molecule of interest. In one or more further implementations, this database can include all known molecules, or a user limited subset thereof. Furthermore, while computationally efficient to generate this database prior to use, in one or more implementations, the database can be generated or it in "real time" as necessary (i.e. enumerated) based on user needs. For example, where the user has no need to synthesize, virtually or otherwise, a new compound not currently within the map, the database is not constructed.

[0218] However, in another configuration, this database, and its list of numericized molecules, can serve as the basis for new mapping processes. A processor having access to the contents of the database can be configured to filter the database contents to arrive at a collection of molecules of interest. Here, these molecules of interest are already numericized. Therefore, the results of the query can be directly applied to an n- dimensional map without conducting queries of source documents.

[0219] In yet a further arrangement, the database of numericized molecules is used to identify molecules of interest that are not present within a generated n-dimensional map. For example, the database of numeric! zed forms can be used to identify a specific molecule or compound that fits within a given area of the n-dimensional map. As previously discussed, where there are gaps in the n-dimensional map, it is possible to generate new numerical forms that fits within these gaps. These newly generated numerical forms can be compared to the database of numericized forms to determine if an existing molecule or compound would fit within the location of interest in the n-dimensional map. For example, a computationally synthesized compound can be matched to an entry in the database. In this configuration, existing molecules that would fit within the identified gap is identified.

[0220] Alternatively, where there is not an exact match for the newly synthesized numerical form, the database can be used to identify close or similar molecules to the computationally synthesized forms. For instance, a processor is configured to identify all numericized forms present in the database having a threshold of similarity with the computationally synthesized forms. In one arrangement, a processor of the described system is configured to identify all numerical molecules that are 90-95% similar to the numericized forms generated to fit into black spaces.

[0221 ] In one or more further implementations, the edge file generated by the processor includes distance statistics and the underlying structure or sequence information for the included vectors.

[0222] In a further implementation the processor is configured to generate a node file, as shown in step 1112. Here, the node file contains information related to each node. For example, the node fde contains the relevant molecular or biological structure, the source document, the properties of the molecule or document (such as but not limited to the authors of the document, the owner of the source patent, etc.) For example, in one or more instances where the chemical or biological identifier in the node is described within a patent, the node file includes patent information, such as filing date, expiration date, and other information.

[0223] Once both the edge and node files are created, a network diagram can be implemented or created based on the associated pair vector pairs as shown in step 1114. For example, using the distance pair calculations the processor is configured to provide a network diagram that only includes those distance pairs that are within the predefined threshold. In one or more implementations, the network diagram can be created, and then minimized, using Yifan Hu proportional, Fruchterman Reingold in original Reingold or Expansion techniques.

[0224] It will be appreciated that the network diagram includes the information from the node and edge files. This information includes the source documents for each of the mapped chemical or biologic identifiers. By way of example, where the source documents are patents or patent applications, mapping the extracted chemical or biologic identifiers provides for an improved approach to visualize relationships. For example, using a patentbased network or graph provides a new and better way to group patents by chemotype. Here such a chemical identifier-based network or graph allows for the identification of key compounds which transition from one chemotype to another. In turn, this networkbased approach allows for a new avenue to understand greater numbers of molecules from many biological targets, disease states, or even genus.

[0225] In yet a further implementation, the output of the systems described are used to train one or more machine learning systems, such as artificial intelligence expert systems. For example, one or more machine learning systems, such as but not limited to neural networks, are trained on the outputs generated by the described approach.

[0226] As noted in step 1110, one or more processors are configured to calculate one way pairing functions for a pair of vectors. Once all of the distances between the various pairs of vectors have been calculated the map can be filtered based on those pairs that are within a threshold of a preset filter distance. Once mapped, the relationship between these vectors can be visualized. However, here, the vectors, are in one arrangement, provided to a neural network, along with the original coded forms outputs generated, such the data used to generate the visualization, or the resulting network diagram.

[0227] Alternatively, one or more neural networks are configured to convert chemical or biological identifiers into coded forms first, and then provide those forms as inputs to the neural network.

[0228] Using either the coded forms, or direct chemical or biological identifiers, the neural network can be trained to generate visualizations without the need to generate the underlying n-dimensional map. For example, by training a neural network on distance pairs between various chemical and biological identifiers, a neural network can be trained to accept as input a collection of chemical, biological, or other subject matter items, and then classify or visualize those items as though they were evaluated by the n-dimensional mapping functions as described herein. For example, in yet a further implementation, a collection of chemical identifiers are provided to such a pre-trained neural network and the pre-trained neural network is configured to output a network diagram (or the files necessary to implement the same) detailing the relationship between the chemical identifiers submitted to the neural network.

[0229] In yet a further arrangement, such a pre-trained neural network or other similarly provided machine learning or artificial intelligence system can then be used as part of a molecular design process or framework. For example, the pre-trained neural network can be configured to output network diagrams detailing the relationship between different molecules relating to a given ailment or indication. The data output by the neural network can be used as an input in to a molecular design process or framework system. Such systems can be completely automated or involve manual intervention. In an automated approach, the information provided by the pre-trained neural network is passed or provided to one or more automated systems used to develop or design new compounds. For instance, based on an analysis of the network diagram data, such automated molecular design systems are configured to evaluate or propose new compounds for synthesis or further study. The results of these synthesis, design or analysis steps can be then fed back into the neural network to refine the network diagrams or provide further opportunities for new compound synthesis or exploration. These newly proposed compounds can then be synthesized directly, without further human intervention by passing the molecular information to an automated synthesis device. Alternatively, the automated systems can then identify known, but not included in the network diagram, compounds for further analysis.

[0230] As illustrated in Fig 8, the computing system 1300 and includes a processor 1302, a memory 1304, a storage device 1306, a high-speed interface 1308 connecting to the memory 1304 and multiple high-speed expansion ports 1310, and a low-speed interface 1312 connecting to a low-speed expansion port 1314 and the storage device 1306. Each of the processor 1302, the memory 1304, the storage device 1306, the high-speed interface 1308, the high-speed expansion ports 1310, and the low-speed interface 1312, are interconnected using various buses, and can be mounted on a common motherboard as shown in Fig. 8, or in other manners as appropriate. The processor 1302 can process instructions for execution within the computing device 1300, including instructions stored in the memory 1304 or on the storage device 1306 to display graphical information for a GUI on an external input/output device, such as a display 1316 coupled to the high-speed interface 1308. In other embodiments, multiple processors and/or multiple buses can be used, as appropriate, along with multiple memories and types of memory. Also, multiple computing devices can be connected, with each device providing portions of the necessary operations (e.g., as a server bank, a group of blade servers, or a multi-processor system).

[0231] A mobile computing device 1350 may include a processorl 02, a memory 1364, and an input/output device such as a display 1354, a communication interface 1366, and a transceiver 1368, among other components. The mobile computing device 1350 can also be provided with a storage device, such as a micro-drive or other device, to provide additional storage. Each of the processor 1352, the memory 1364, the display 1354, the communication interface 1366, and the transceiver 1368, are interconnected using various buses, and several of the components can be mounted on a common motherboard or in other manners as appropriate.

[0232] The processor 1352 can communicate with a user through a control interface 1358 and a display interface 1356 coupled to the display 1354. The display 1354 can be, for example, a TFT (Thin-Film-Transistor Liquid Crystal Display) display or an OLED (Organic Light Emitting Diode) display, or other appropriate display technology. The display interface 1356 can comprise appropriate circuitry for driving the display 1354 to present graphical and other information to a user. The control interface 1358 can receive commands from a user and convert them for submission to the processor 1352. In addition, an external interface 1362 can provide communication with the processor 1352, so as to enable near area communication of the mobile computing device 1350 with other devices. The external interface 1362 can provide, for example, for wired communication in some embodiments, or for wireless communication in other embodiments, and multiple interfaces can also be used.

[0233] The memory 1364 stores information within the mobile computing device 1350. The memory 1364 can be implemented as one or more of a computer-readable medium or media, a volatile memory unit or units, or a non-volatile memory unit or units. An expansion memory 1374 can also be provided and connected to the mobile computing device 1350 through an expansion interface 1372, which can include, for example, a SIMM (Single In Line Memory Module) card interface. The expansion memory 1374 can provide extra storage space for the mobile computing device 1350, or can also store applications or other information for the mobile computing device 1350. Specifically, the expansion memory 1374 can include instructions to carry out or supplement the processes described above, and can include secure information also. Thus, for example, the expansion memory 1374 can be provided as a security module for the mobile computing device 1350, and can be programmed with instructions that permit secure use of the mobile computing device 1350. In addition, secure applications can be provided via the SIMM cards, along with additional information, such as placing identifying information on the SIMM card in a non-hackable manner.

[0234] It should be understood that various combinations, alternatives and modifications of the present invention could be devised by those skilled in the art in view of this disclosure. The present invention is intended to embrace all such alternatives, modifications and variances that fall within the scope of the appended claims. While the invention has been particularly shown and described with reference to a preferred embodiment thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention

[0235] The mobile computing device 1350 can communicate wirelessly through the communication interface 1366, which can include digital signal processing circuitry where necessary. The communication interface 1366 can provide for communications under various modes or protocols, such as GSM voice calls (Global System for Mobile communications), SMS (Short Message Service), EMS (Enhanced Messaging Service), or MMS messaging (Multimedia Messaging Service), CDMA (code division multiple access), TDMA (time division multiple access), PDC (Personal Digital Cellular), WCDMA (Wideband Code Division Multiple Access), CDMA2000, or GPRS (General Packet Radio Service), among others. Such communication can occur, for example, through the transceiver 1368 using a radio-frequency. In addition, short-range communication can occur, such as using a Bluetooth, WiFi, or other such transceiver (not shown). In addition, a GPS (Global Positioning System) receiver module 1370 can provide additional navigation- and location-related wireless data to the mobile computing device 1350, which can be used as appropriate by applications running on the mobile computing device 1350. [0236] The mobile computing device 1350 can also communicate audibly using an audio codec 1360, which can receive spoken information from a user and convert it to usable digital information. The audio codec 1360 can likewise generate audible sound for a user, such as through a speaker, e.g., in a handset of the mobile computing device 1350. Such sound can include sound from voice telephone calls, recorded sound (e.g., voice messages, music files, etc.) and sound generated by applications operating on the mobile computing device 1350.

[0237] The mobile computing device 1350 can be implemented in a number of different forms, as shown in Fig. 8. For example, it can be implemented as a cellular telephone 1380. It can also be implemented as part of a smart-phone 1382, personal digital assistant, or other similar mobile device.

[0238] Various embodiments of the systems and techniques described here can be realized in digital electronic circuitry, integrated circuitry, specially designed ASICs (application specific integrated circuits), computer hardware, firmware, software, and/or combinations thereof. These various embodiments can include embodiment in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which can be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.

[0239] These computer programs (also known as programs, software, software applications or code) include machine instructions for a programmable processor, and can be implemented in a high-level procedural and/or object-oriented programming language, and/or in assembly /machine language. As used herein, the terms machine-readable storage medium and computer-readable storage medium refer to any non-transitory computer program product, apparatus and/or device (e.g., magnetic discs, optical disks, memory, Programmable Logic Devices (PLDs)) used to provide machine instructions and/or data to a programmable processor, including a machine-readable storage medium that receives machine instructions as a machine-readable signal. The term machine- readable signal refers to any signal used to provide machine instructions and/or data to a programmable processor. A non-transitory machine-readable storage medium does not include a transitory machine-readable signal. [0240] To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form, including acoustic, speech, or tactile input.

[0241] The systems and techniques described here can be implemented in a computing system that includes a back end component (e.g., as a data server 1324), or that includes a middleware component (e.g., an application server 1320), or that includes a front end component (e.g., a client computer 1322 having a graphical user interface or a Web browser through which a user can interact with an embodiment of the systems and techniques described here), or any combination of such back end, middleware, or front end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (LAN), a wide area network (WAN), and the Internet.

[0242] The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.

[0243] Additional Implementations of the approaches provided herein:

[0244] Point 1. A computer-implemented method for generating an artificial environment within a memory of a computer, in which chemical identifiers that relate to a particular subject matter and which are described in at least one document are extracted and analyzed, the method comprising: submitting, in electronic form, a search to at least one document database for documents describing the subject matter using a defined search strategy; extrapolating, to a first array within the memory of the computer, at least one chemical identifier described in at least one document returned from the search, the extrapolating step using an extraction module comprising code executing in a processor; transforming each chemical identifier in the first array into a respective coded form having a range of values using a conversion module comprising code executing in the processor; populating the respective coded forms into a second array within the memory of the computer; generating a virtual n-dimensional array of nodes configured to encompass the range of values in the second array using a node array generator module comprising code executing in the processor, each node of the virtual n-dimensional array having an associated weight vector value based on the range of values in the second array; placing each coded form in the second array into a node of the virtual n-dimensional array according to an unsupervised learning algorithm using a placement module comprising code executing in the processor to effect a placement; and outputting a visual representation of the virtual n-dimensional array.

[0245] 2. The method of any point, embodiment or implementation, further comprising the steps of: selecting a target node among the nodes within the virtual n-dimensional array; comparing, using a chemical feature (“CF”) module which comprises code executing in the processor, at least one CF corresponding to the coded form contained within a first node adjacent to the target node to at least one CF corresponding to the coded form contained in at least a second node adjacent to the target node, the first and second nodes sharing a border with the target node in the virtual n-dimensional array; identifying common CFs between the target and second nodes using a commonality module which comprises code executing in the processor; generating at least one new coded form based on combinations of the identified, common CFs which, when inserted into the virtual n- dimensional array, results in a placement within the target node, using a coded form generator module which comprises code executing in the processor; and outputting a chemical identifier corresponding to the new coded form.

[0246] 3. The method of any point, embodiment or implementation, further comprising the steps of: selecting a first node among the nodes within the virtual n-dimensional array; comparing, using a chemical feature (“CF”) module which comprises code executing in the processor, at least one CF corresponding to the coded form contained within the first node adjacent to at least one CF corresponding to the coded form contained in at least a second, adjacent node, the second node sharing a border with the first node in the virtual n-dimensional array; identifying common CFs between the first and second nodes using a commonality module which comprises code executing in the processor; generating at least one new coded form based on combinations of the identified, common CFs, which when inserted into the virtual n-dimensional array, results in a placement within the first or second node using a coded form generator module which comprises code executing in the processor; and outputting a chemical identifier corresponding to the new coded form.

[0247] 4. The method of any point, embodiment or implementation, further comprising the steps of: selecting a first node among the nodes within the virtual n-dimensional array; comparing, using a chemical feature (“CF”) module which comprises code executing in the processor, at least one CF corresponding to the coded form contained within the first node adjacent to at least one CF corresponding to the coded form contained in at least a second node, the second node sharing a border with the first node in the virtual n- dimensional array; identifying common CFs between the first and second nodes using a commonality module which comprises code executing in the processor; generating at least one new coded form based on combinations of the identified, common CFs; regenerating the n-dimensional node array to encompass the range of values stored in the second array including the new coded form such that, when inserted into the regenerated virtual n- dimensional array, the new coded form is placed in a node situated between the first and second nodes, using a coded form generator module which comprises code executing in the processor; and outputting a chemical identifier corresponding to the new coded form.

[0248] 5. The method of any point, embodiment or implementation, wherein the coded form is a numerical form and wherein the adjustment module operates on the numerical form.

[0249] 6. The method of any point, embodiment or implementation, wherein the document database contain patent documents.

[0250] 7. The method of any point, embodiment or implementation, wherein the neural network algorithm of the adjustment module comprises a self-organizing mapping algorithm.

[0251] 8. The method of any point, embodiment or implementation, wherein the chemical identifier is at least one of a chemical formula, a chemical structure, or chemical name derived from chemical nomenclature.

[0252] 9. The method of any point, embodiment or implementation, wherein the target node within the virtual n-dimensional array in the memory is an empty node lacking any coded forms. [0253] 10. The method of any point, embodiment or implementation, wherein placing each respective coded form of the second array in the virtual n-dimensional array of nodes includes calculating a distance metric between a particular one of the respective coded forms (“input vector”) and the weighted vector placeholder value for each node, and placing the particular coded form in the node having the smallest calculated distance metric.

[0254] 11. The method of any point, embodiment or implementation, wherein the placement module further comprises code that configures the processor to carry out the steps of: identifying nodes within a predetermined distance metric of the input vector using a neighborhood function (“neighborhood”); and adjusting the weighted vector placeholder value of nodes within the neighborhood using an update formula, wherein the update formula comprises adjusting, using code executing in the processor, the weight vectors of the nodes within the neighborhood such that the distance metric between each node in the neighborhood and the input vector is modified.

[0255] 12. The method of any point, embodiment or implementation, further comprising accessing via a commonality module comprising code executing in the processor the chemical identifier corresponding to the coded form contained within the first node from the document database and comparing the accessed chemical identifier to a chemical identifier corresponding to the coded form contained within the second node from the database, and extracting from both chemical identifiers at least one common subidentifier.

[0256] 13. The method of any point, embodiment or implementation, further comprising associating, using a visualization module comprising code executing in the processor, specific visual markers to each numerical form based on at least the chemical identifier and bibliographic data found in a given patent document in the at least one document database.

[0257] 14. The method of any point, embodiment or implementation, further comprising generating a visual indication, using a time-series module which comprises code executing in the processor, of the occurrence of an event related to a plurality of coded forms over time.

[0258] 15. The method of any point, embodiment or implementation, where the event comprises the publication of source documents over time. [0259] 16. The method any point, embodiment or implementation, further comprising generating, using the generator module, specific coded forms based on the chemical identifiers present in the virtual n-dimensional array of nodes in the memory by identifying a common CF to the coded forms of the first and second nodes, and adding at least one other chemical identifier selected from a list of possible chemical identifiers to the common CF.

[0260] 17. The method of any point, embodiment or implementation, wherein the generator module further comprises code executing in the processor to: validate a newly generated chemical identifier corresponding to the new coded form by evaluating the new chemical identifier against a database of chemical binding and chemical structure rules in order to generate a probability that the new chemical identifier is synthesizable, and output the new chemical identifier when the synthesis probability is above a pre-set threshold.

[0261] 18. The method of point, embodiment or implementation, further comprising: generating, with a synthesis design module configured as code executing on the processor to generate, based on the chemical identifier corresponding to the new coded form, a synthesis strategy for synthesizing a compound described by the chemical identifier corresponding to the new coded form.

[0262] 19. The method of any point, embodiment or implementation, further comprising: synthesizing the chemical according to the synthesis strategy.

[0263] 20. A pharmaceutical composition comprising: a pharmaceutically effecting amount of a chemical compound described by the chemical identifier corresponding to the new coded form generated according to method of any point, embodiment or implementation, or a pharmaceutically acceptable salt thereof, in combination with a pharmaceutically acceptable excipient.

[0264] 21. A chemical composition synthesized according to the process of any point, embodiment or implementation.

[0265] In a further particular implementation or embodiment provides for a computer- implemented method for generating an artificial environment within a memory of a computer, in which coded identifiers that relate to a particular target and which are described in at least one document are extracted and analyzed, the method comprising: submitting, in electronic form, a search to at least one document database for documents describing the target using a defined search strategy; extrapolating, to a first array within the memory of the computer, at least one coded identifier described in at least one document returned from the search, the extrapolating step using an extraction module comprising code executing in a processor; transforming each coded identifier in the first array into a respective coded form having a range of values using a conversion module comprising code executing in the processor; populating the respective coded identifier into a second array within the memory of the computer; generating a virtual n-dimensional array of nodes configured to encompass the range of values in the second array using a node array generator module comprising code executing in the processor, wherein each node of the virtual n-dimensional array having an associated weight vector value based on the range of values in the second array; placing each coded form in the second array into a node of the virtual n-dimensional array according to an unsupervised learning algorithm using a placement module comprising code executing in the processor to effect a placement; calculating a distance metric for a plurality of pairs of coded forms placed within the virtual n-dimensional array; generating at least one node and at least one edge file corresponding to those plurality of pairs of coded forms that have a distance metric below a pre-determined threshold; using the at least one node and at least one edge file, generating a network diagram of the plurality of pairs of coded forms that have a distance metric below a pre-determined threshold; and outputting a visual representation of the network diagram of coded forms.

[0266] In a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations wherein the submitting step further comprises receiving from the at least one document database a plurality of documents, and filtering the plurality of documents using a filtering criteria to obtain a filtered subset of documents.

[0267] In a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations wherein the filtering criteria is an ailment.

[0268] In a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations wherein the extrapolating step further comprises configuring one or more processors by the extraction module to parse text found within the at least one document returned from the search to identify coded identifiers based on at least one pre-determined schema. [0269] In a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations the pre-determined schema used to evaluate the parsed text includes subscript and superscript text components.

[0270] In a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations wherein the extrapolating step further comprises configuring one or more processors by the extraction module to parse text found within the at least one document returned from the search to identify coded identifiers using one or more natural language extraction and association algorithms.

[0271] In a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations wherein the extrapolating step further includes configuring one or more processors by the extraction module to parse contents of the at least one document using one or more image recognition algorithms to identify a structural formula present in the at least one document.

[0272] In a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations wherein the processor is further includes comparing the identified structural formula against a database of known structural formula and associated compound names, and identifying the associated compound name for the identified structural formula.

[0273] In a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations wherein the extraction step further comprises identifying duplicate coded identifiers.

[0274] In a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations, wherein transforming each coded identifier in the first array includes: (i) converting an identified chemical entity into a simplified molecular input line entry and (ii) converting the simplified molecular input line entry corresponding to the identified chemical entity into a vector form.

[0275] In a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations, wherein calculating the distance metric includes calculating for each pair of vectors, a one-way pairing function. [0276] In a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations, wherein the coded identifiers are one of chemical formulae, nucleotide sequences or protein sequences.

[0277] In a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations, A computer-implemented method is provided for generating an artificial environment within a memory of a computer, in which documents that relate to a particular subject matter target are extracted and analyzed, the method comprising: submitting, in electronic form, a search to at least one document database for documents describing the subject matter target using a defined search strategy; transforming each document returned from the search query into a respective coded form having a range of values using a conversion module comprising code executing in the processor; generating a virtual n-dimensional array of nodes configured to encompass the range of values using a node array generator module comprising code executing in the processor, wherein each node of the virtual n- dimensional array having an associated weight vector value based on the range of values; placing each coded form into a node of the virtual n-dimensional array according to an unsupervised learning algorithm using a placement module comprising code executing in the processor to effect a placement; calculating a distance metric for a plurality of pairs of coded forms placed within the virtual n-dimensional array; generating at least one node and at least one edge file corresponding to those plurality of pairs of coded forms that have a distance metric below a pre-determined threshold; using the at least one node and at least one edge file, generating a network diagram of the plurality of pairs of coded forms that have a distance metric below a pre-determined threshold; and outputting a visual representation of the network diagram of coded forms.

[0278] In a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations wherein converting the document into a numerical form includes: identifying, using a text parsing algorithm, the terms contained in each document; comparing each of the identified terms to a library of terms corresponding to the subject matter target; assigning values to each of the identified terms on each document; and generating a numeric representation of the subject matter based on the assigned values. [0279] Tn a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations, wherein generating a numeric representation of each document includes discarding all terms that have a numerical representation below a pre-determined threshold.

[0280] In a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations wherein a processor is configured to use natural language extraction and association algorithms to extract relevant coded information from a document, where in the neural network is trained to evaluate the contents of the document and assign relevancy weights based on a pre-determined dictionary of commonly encountered terms.

[0281] In a further implementation or embodiment, including any system, method or process of any prior embodiment or implementations in which chemical identifiers that relate to a particular biological target and which are described in at least one document are extracted and analyzed, the method comprising: submitting, in electronic form, a search to at least one document database for documents describing the biological target using a defined search strategy; receiving search results, wherein each search result includes a document identification value corresponding to a source document; accessing a numericized database of numericized chemical or biological identifiers, wherein each entry in the numericized database includes reference to at least one document identification value; obtaining a collection of numericized chemical or biological identifiers based on the document identification values within the search results; generating a virtual n-dimensional array of nodes configured to encompass the range of numericized identifiers using a node array generator module comprising code executing in the processor, wherein each node of the virtual n-dimensional array having an associated weight vector value based on the range of values in the second array; placing each coded form in the second array into a node of the virtual n-dimensional array according to an unsupervised learning algorithm using a placement module comprising code executing in the processor to effect a placement; calculating a distance metric for a plurality of pairs of coded forms placed within the virtual n-dimensional array; generating at least one node and at least one edge file corresponding to those plurality of pairs of coded forms that have a distance metric below a pre-determined threshold; using the at least one node and at least one edge file, generating a network diagram of the plurality of pairs of coded forms that have a distance metric below a pre-determined threshold; and outputting a visual representation of the network diagram of coded forms.

[0282] While this specification contains many specific embodiment details, these should not be construed as limitations on the scope of any embodiment or of what can be claimed, but rather as descriptions of features that can be specific to particular embodiments of particular embodiments. Certain features that are described in this specification in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable sub-combination. Moreover, although features can be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination can in some cases be excised from the combination, and the claimed combination can be directed to a sub-combination or variation of a sub-combination.

[0283] Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing can be advantageous. Moreover, the separation of various system components in the embodiments described above should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.

[0284] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising”, when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. [0285] It should be noted that use of ordinal terms such as “first,” “second,” “third,” etc., in the claims to modify a claim element does not by itself connote any priority, precedence, or order of one claim element over another or the temporal order in which acts of a method are performed, but are used merely as labels to distinguish one claim element having a certain name from another element having a same name (but for use of the ordinal term) to distinguish the claim elements.

[0286] Also, the phraseology and terminology used herein is for the purpose of description and should not be regarded as limiting. The use of “including,” “comprising,” or “having,” “containing,” “involving,” and variations thereof herein, is meant to encompass the items listed thereafter and equivalents thereof as well as additional items.

[0287] Particular embodiments of the subject matter described in this specification have been described. Other embodiments are within the scope of the following claims. For example, the actions recited in the claims can be performed in a different order and still achieve desirable results. As one example, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In certain embodiments, multitasking and parallel processing can be advantageous.

[0288] While the invention has been particularly shown and described with reference to a preferred embodiment thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention.