Loops ]. Early in the case, the patentee moved for summary judgment of infringement. The district court denied the motion, and acted sua sponte to enter summary judgment of non-infringement. Although the body was made of flexible rubber, once the stiff head with bristles was molded-in, the body was no longer flexible.
We agree with Loops and conclude that, based on the claim language and structure, as well as the specification, the district court misunderstood the flexibility limitation to pertain to the elongated body when combined with the head as opposed to the elongated body alone. Read the claim and tell me what you think? Does the body need to be flexible when assembled, or only pre-assembly? No plaque. The numbers are in for — slight decrease in the number of patents issued in Simio, LLC v.
FlexSim Software Fed. Dennis Pegden has received many awards for his work developing software and programming languages for simulating real-life processes in order to optimize decisionmaking; perform risk analysis, etc.
He was a professor who then developed his own company that was bought-out by Rockwell. Later, he formed the new company Simio , that owns the patent at issue here: U.
Patent No. On appeal, the Federal Circuit affirmed — finding that the claims were indeed directed to transitioning from text-based coding to icon-based. There is no need to write programming code to create new objects. Quoting the patent specification.
Prior decisions have found innovations that improve computer functionality to be non-abstract and thus patent eligible. Slip Op. Simio pointed to particular improvements of user behavior offered by its invention such as faster simulation model development a major selling point of the products in this area. Again, the court found that an abstract idea is still abstract, even if done quickly.
In Alice Step 2, the court admitted that the claim may include novel features, but those novel features are the abstract idea.
The rules of civil procedure allow for flexible pleading. Here, the district court refused to allow the patentee to amend its pleadings with specific allegations regarding the uniqueness of various claim elements. Simio had delayed in its request to amend until after the deadline set by the district court in the R. On appeal, the Federal Circuit found that the district court was within its rights to deny amendments after that deadline absent presentation of good cause.
This case is about whether the First Amendment protects high-school students and their Snaps against punishment and regulation by public school officials. Question Presented by the School : Whether Tinker v. Competing Question by the kid: Whether the court of appeals correctly held that a public high school violated the First Amendment when it punished a student for her colorful expression of frustration, made in an ephemeral Snapchat on her personal social media, on a weekend, off campus, containing no threat or harassment or mention of her school, and that did not cause or threaten any disruption of her school.
After receiving that news, B. In addition, at least one person accessed the vulgarity from a school computer. Issues for Comment: The USPTO seeks comments from the public that will be used to help draft a national strategy to create opportunities that will expand our innovation ecosystem to include all individuals, including those from underrepresented socioeconomic, geographic, and demographic groups.
The questions below are grouped according to the categories within the broad conceptual framework outlined above for the national strategy. Inventors and entrepreneurs come from all walks of life and are not always employed by a large corporate or educational institution. How can people and organizations in the innovation ecosystem better support them? Women and some minorities have not participated proportionally in the patenting of inventions.
What barriers to innovation inclusion are specific to underrepresented groups? What supporting role should government organizations play in helping underrepresented groups overcome these barriers? Mentoring and networking have been shown to be effective tools in supporting and encouraging underrepresented inventors and entrepreneurs.
How can organizations and intellectual property practitioners in the innovation ecosystem better connect underrepresented innovators to each other and to mentors, both internally and across organizations? Developing organizational metrics to document the effectiveness of diversity and inclusion initiatives is necessary to track outcomes of action plans and initiatives. What are best practices that organizations can internally employ to measure their own progress, particularly in the area of intellectual property protection?
Measuring national progress in realizing greater inclusion and diversity in invention, entrepreneurship, and intellectual property may take years, and it will be critical to identify complementary short- and long-term metrics that are precursors to and indicators of expanding innovation. What are some specific, meaningful, and relevant measures that can be used to:. Support year-over-year performance of action plans and initiatives in the short-term?
Demonstrate the long-term creation of diversity and inclusion in the innovation ecosystem while complementing short-term performance metrics? Invention, entrepreneurship, and intellectual property protection have been shown to be concentrated in certain areas of the country and among individuals from higher socioeconomic groups. What new or existing channels could be created or utilized to more effectively deliver information and resources to prospective innovators from all demographic, geographic, and economic backgrounds?
How can educational institutions at all levels pre-kindergarten through post-graduate successfully infuse concepts of invention, entrepreneurship, and intellectual property education into curricula? To supplement formal education, how can community institutions, particularly in rural and economically disadvantaged areas, build awareness of, and skills and interests in, invention, entrepreneurship, and intellectual property among students of all ages?
More can be done to help teachers, even those with a formal science, technology, engineering, or mathematics STEM background, incorporate concepts of innovation into their teaching methods. What new or existing professional development opportunities, resources, and programs could train teachers to incorporate invention education concepts into their instruction?
How could these efforts be leveraged and scaled so that similar resources and opportunities are accessible to all teachers? Recent progress in developing STEM graduates from underrepresented groups has been documented. The claims thus cut across vast swaths of the Internet and potentially extend to most online advertising and social networking sites.
Mayer is concerned that "Permitting GraphOn to exert monopoly power over any online system that allows users to control the content of their own communications would preempt use of one of the "basic tools" of modern social and commercial interaction.
The Normativist view may also reflect an "industrial" view of innovation and invention. In the Industrial Age, innovation was primarily achieved through structural transformation of raw materials in order to achieve the desired function.
Hence, the statement in Cochrane v. Deener , 94 U. It is an act, or a series of acts, performed upon the subject matter to be transformed and reduced to a different state or thing. However, in the Information Age, there is value in the creation of new "functions," ways of doing things, as well as in the creation of information itself.
The use of existing technologies to create or manipulate information or materials is itself an innovation and can be an invention. And perhaps no better example of the ability to use an existing mechanism to new uses is the general purpose programmable computer.
If not, pressing the Train button in step indicates that the existing behavior is to be augmented with a new behavior. If using the Stop button is desired, the particular widget to stop is selected in step and the Stop button is pressed in step Pressing the Stop button indicates that some portion of the existing behavior is to be prevented.
From either steps or , the event that should be used is specified in step , and the outcome state is configured in step Then, the Done button is pressed in step It may be necessary for the system in step to enter into an interactive dialog with the user in order to clarify ambiguities or potential inconsistencies as a result of the newly demonstrated example. The process for answering system questions at the end of a training session such as step of FIG.
In general, questions are formulated and displayed by the system in a particular region of the interface. The user responds to the questions by optionally highlighting selecting the widgets or other markers and pressing buttons. If the system asks a question step , and the question implies a new behavior, as determined in step , then the user highlights one or more widgets steps and and presses the Learn button in step This identifies to the system the dependent widgets associated with the new behavior.
If the question requires replacing an existing behavior with a new behavior determined in step , the user optionally highlights widgets in step and then presses the Replace button in step This identifies the dependent widgets associated with the new behavior that is to replace the existing behavior.
If neither of these cases is true, then the user in step presses the Wrong button, which indicates to the system that the question is irrelevant. In any case, the system may generate new questions or reformulate questions to be presented again.
The overall process is repeated until no more questions remain. It is not necessary for the developer to demonstrate every possible state that the controller can reach. Instead, the developer shows representative examples of states that imply what the controller should do in all other states.
The system uses an inferencing engine to generalize the representative examples into a behavior that functions for all possible states. There are many varieties of algorithms for performing inferencing. The simplest is to not perform any inferencing at all. Without inferring behavior, the system only records the actions that the developer performs without interpretation. For sufficiently simple controllers, replaying the recorded actions is sufficient. For controllers that require more complicated behaviors, the developer would need to be able to edit the recorded actions to add structure to the controller.
Another branch of programming by demonstration inferencing algorithms attempts to generalize behavior using one example but no more. These algorithms find patterns in the recorded example and generalize recognized features. However, if the algorithm does not produce the correct result, the developer must manually edit the generated code.
The most sophisticated inferencing algorithms use multiple examples to generate code. If the algorithm does not produce the correct result initially, the developer may continue to demonstrate examples for cases where the code fails. This method puts the least burden on the developer since the developer is generally no longer required to know how to read or edit programming code. Depending on the strength of the inferencing engine, the system can generate all the needed code without the developer's intervention.
However, weaker algorithms will still require the developer to fill in the code that the system is unable to produce automatically. There are two principle ways to infer behavior from multiple examples. As discussed below, one is an incremental approach and the other collects the examples and produces behavior from all at once. In the incremental approach, shown in FIG.
Given that the user has just completed demonstrating an example behavior, the example is then integrated into the behavior by matching the example against parts of the behavior's code. The system determines a reasonable way to change the code so that the behavior will produce the results of the given example. In particular, as shown in FIG. If this behavior has not already been demonstrated determined in step , then the parameters in the actions for this behavior are generalized in step , and the behavior is then stored as code in step However, if the behavior is a prior demonstrated behavior, then the differences between the example and the behavior are determined in step Then in step , components of the behavior are replaced to reflect the new example, and the behavior is stored as code in step In the all-at-once approach shown in FIG.
The system then finds commonalties among the examples and merges them into a single behavior. In particular, as seen in FIG. All previous examples for defining behavior are found in step , and common elements of the examples are merged in step The parameters are then generalized in step , and then the behavior and examples are stored in step The choice of inferencing algorithm strongly affects the usability of the system.
As mentioned above, weaker inferencing algorithms require the developer to hand edit inferred code and strong algorithms do not.
Also, some algorithms require the developer to specify the causes of a behavior separately from the results of a behavior and therefore require extra modes. Still other algorithms require all examples for a behavior to be specified at once and do not permit further examples to be added afterwards.
All these factors and others cause there to be a tight coupling between the interaction and inferencing techniques in a programming by demonstration system. Any desired interaction techniques influences the sorts of inferencing the system must provide, and the inferencing algorithm determines the sorts of information the interaction techniques must provide. The present invention is not restricted to any particular inferencing engine or algorithm.
However, as discussed, the choice of inferencing algorithm strongly affects the usability of the system, and therefore the preferred embodiment of the present invention uses an inferencing algorithm that infers behaviors from multiple examples in an incremental fashion.
This results in a flexible and general-purpose, yet easy-to-use programming system. The above description of specific embodiments should not necessarily be construed to limit the scope of the present invention. The scope of the present invention is limited only by the issued claims. A computer programming method for use in controlling an automation process, said method comprising the steps of: providing on a first computer platform a programming by demonstration tool for combining programming of a control program and of its user interface and thereby producing the control program and its user interface at the same time, said programming by demonstration tool including a library of widgets, an editor operative to allow editing including manipulating any of said widgets and an inferencing engine for recording and processing said manipulation to produce executable code;.
The method of claim 1 , wherein said widgets include user interface widgets that are used for providing feedback for a runtime monitoring and control of said automation process. The method of claim 2 , wherein said feedback is a visual change, animation, sound, other form of stimulus, triggering of an event, or a combination thereof. The method of claim 2 , wherein the user interface widgets are further used for acquiring input data to allow user input for the runtime monitoring and control of said automation process.
The method of claim 1 , wherein said program widgets include machine widgets, programming widgets, and user interface widgets. The method of claim 1 wherein said automation process comprises a home automation process, building automation process, an industrial automation process, or other automation-based process.
A method as in claim 1 , wherein the library of widgets is commonly used for programming both the control program and its user interface. The product of claim 8 , wherein said widgets include user interface widgets that are used for providing feedback for a runtime monitoring and control of said automation process.
The product of claim 9 , wherein said feedback is a visual change, animation, sound, other form of stimulus, triggering of an event, or a combination thereof. The product of claim 8 , wherein the user interface widgets are further used for acquiring input data to allow user input for the runtime monitoring and control of said automation process.
The product of claim 8 , wherein said program widgets include machine widgets, programming widgets, and user interface widgets. It almost seems controlled by Baker v. Selden pretty much. Hopefully CAFC will get it right. Patents should be the go-to in this area. GitHub, Inc. Richard H. Google Decision , 37 Eur. The CAFC is a stacked court filled with anti-patent judicial activists. IP friendly Court of Appeals … Dennis has a sense of humor.
0コメント