Method and apparatus for building algorithms
First Claim
1. A system for building an algorithm to apply to an optimisation problem in order to find a solution thereto, the or each algorithm comprising a plurality of components, the system comprising:
- means for creating parts corresponding to at least some of the components, a store for storing the created parts, and means arranged to select from said stored parts in order to build an algorithm therefrom, wherein each part comprises co-operating means arranged to cooperate with other parts and effecting means arranged to effect a change to a solution to the optimisation problem, and wherein each part is arranged such that the effecting means is independent of the operation of any other part.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention is concerned with a system for building at least one algorithm to apply to an optimisation problem in order to find a solution to the problem, where the or each algorithm comprises a plurality of components. The system comprises:
means for creating parts corresponding to at least some of the components,
a store for storing the created parts, and
means arranged to select from said stored parts in order to build an algorithm therefrom,
wherein each part comprises co-operating means arranged to cooperate with other parts and effecting means arranged to effect a change to a solution to the optimisation problem, and wherein each part is arranged such that the effecting means is independent of the operation of any other part.
In addition, the system can include a graphical user interface arranged to display, in a first region, the parts stored in the store and to display, in a second region, a representation of said selected parts constituting the built algorithm, means responsive to movement of a part in the first region to the second region, and graphical connecting means arranged to graphically connect the moved part to one of the selected parts in the second region. Thus an algorithm can be built according to so-called drag-and-drop methods.
Moreover, the system can include means arranged to store the selected parts constituting the built algorithm as sets of information enclosed by tags of a hierarchical tag structure defined in accordance with a structured mark-up language, thereby saving a representation of the built algorithm. Preferably the structured mark-up language used is the eXtensible Markup Language.
48 Citations
15 Claims
-
1. A system for building an algorithm to apply to an optimisation problem in order to find a solution thereto, the or each algorithm comprising a plurality of components, the system comprising:
-
means for creating parts corresponding to at least some of the components, a store for storing the created parts, and means arranged to select from said stored parts in order to build an algorithm therefrom, wherein each part comprises co-operating means arranged to cooperate with other parts and effecting means arranged to effect a change to a solution to the optimisation problem, and wherein each part is arranged such that the effecting means is independent of the operation of any other part.
-
-
2. A system according to claim 1, wherein each part comprises a validation process arranged to validate interoperability between cooperating parts.
-
3. A system according to claim 1 or claim 2, wherein the store is arranged to store the created parts in accordance with the functional relationship between their respective effecting means.
-
4. A system according to any one of the preceding claims further including
a graphical user interface arranged to display, in a first region, the parts stored in the store and to display, in a second region, a representation of said selected parts constituting the built algorithm, means responsive to movement of a part in the first region to the second region, and graphical connecting means arranged to graphically connect the moved part to one of the selected parts in the second region.
-
5. A system according to claim 4, wherein the graphical connecting means is arranged to identify which of the selected parts in the second region the moved part is released onto, and the identified part is arranged process said validation process so as to perform an interoperability check between itself and the moved part.
-
6. A system according to any one of the preceding claims, further including means arranged to store the selected parts constituting the built algorithm as sets of information enclosed by tags of a hierarchical tag structure defined in accordance with a structured mark-up language, thereby saving a representation of the built algorithm.
-
7. A system according to any one of the preceding claims, further including identifying means for identifying components that are to constitute the or each algorithm.
-
8. A system according to claim 7, further including means for comparing parts in the store with the identified components, so that, if a part corresponding to an identified component exists in the store, a part corresponding to the identified component is not created.
-
9. A system according to any one of the preceding claims, wherein the effecting means of one or more selected parts is arranged to apply an incremental move to a current solution.
-
10. A system according to any one of the preceding claims, wherein more than one solution to the optimisation problem is generated, and the effecting means is arranged to combine one of the generated solutions with at least one other generated solution.
-
11. A method of building an algorithm to apply to an optimisation problem, the method comprising the steps of
identifying components constituting the algorithm, selecting parts corresponding to the identified components, wherein each part comprises co-operating means arranged to cooperate with other parts and effecting means arranged to effect a change to a solution to the optimisation problem, and wherein each part is arranged such that the effecting means thereof is independent of the operation of any other part, and connecting respective co-operating means of the selected parts together so as to build the algorithm.
-
12. A method according to claim 11, further including validating interoperability between the selected parts.
-
13. A method according to claim 11 or claim 12, further including displaying in a first region, parts available for selection and in a second region, a representation of said selected parts constituting the built algorithm,
monitoring movement of a part in the first region to the second region, and, when such a movement is detected, identifying which of the selected parts in the second region the moved part is released onto, and graphically connecting the moved part to the identified part.
-
14. A method according to any one of claims 11 to 13, further including receiving data identifying parameters of the selected parts.
-
15. A method including any one of claims 11 to 14, further including storing the selected parts constituting the built algorithm as sets of information enclosed by tags of a hierarchical tag structure defined in accordance with a structured mark-up language, thereby saving a representation of the built algorithm.
Specification