1461113357-cd2f9338-ace1-434d-aea8-ad5428b651dd

1. A method for a computer system having a plurality of processors comprising:
receiving a constraint for a thread in an activity specifying a desired earliest start time, amount of requested execution time, and a deadline;
determining the thread has previously been run on a particular processor;
upon determining that the thread has previously been run on a particular processor,
determining whether the constraint can be scheduled on the particular processor;
upon determining that the constraint can be scheduled on the particular processor, scheduling the constraint on the particular processor using a respective one of a plurality of execution schedules, where each said processor has a corresponding said execution schedule;
otherwise, scheduling the constraint on a different processor; and,

otherwise, scheduling the constraint on a different processor.
2. A method for a computer system having a plurality of processors comprising:
receiving a reservation for an activity that previously had no reservations, the reservation specifying a recurring desired number of time units within a desired period;
determining whether a thread within the activity has previously been run on a particular processor;
upon determining that the thread has previously been on a particular processor,
determining whether the reservation can be scheduled on the particular processor;
upon determining that the reservation can be scheduled on the particular processor, scheduling the reservation on the particular processor using a respective one of a plurality of execution schedules, where each said processor has a corresponding said execution schedule;
otherwise, scheduling the reservation on a different processor; and,

otherwise, scheduling the reservation on a different processor.
3. One or more computer readable media comprising computer executable instructions that, when executed by a computer having a plurality of processors, direct the computer to:
receive a constraint for a thread in an activity specifying a desired earliest start time, amount of requested execution time, and a deadline;
determine the thread has previously been run on a particular processor;
when it is determined that the thread was previously run on a particular processor,
determining whether the constraint can be scheduled on the particular processor;
upon determining that the constraint can be scheduled on the particular processor, scheduling the constraint on the particular processor using a respective one of a plurality of execution schedules, where each said processor has a corresponding said execution schedule;
otherwise, scheduling the constraint on a different processor; and,

when it is determined that the thread was not previously run on a particular processor, scheduling the constraint on a different processor.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A computer-implemented method of predicting an area to be traversed by a moving vehicle as it travels a given distance, the method comprising the steps of:
(a) receiving, at a computer system, one or more dynamic parameters describing a state of the vehicle at a given time including a current speed, yaw rate, initial position, and initial heading of the vehicle;
(b) generating, by the computer system, a sequence of vehicle configuration states based on the one or more dynamic parameters, including at least an initial vehicle configuration state at the initial position of the vehicle and a final vehicle configuration state at a final position of the vehicle after the vehicle has traveled the given distance, each vehicle configuration state indicating an outline of a predicted area to be occupied by the vehicle at a different point in time as the vehicle travels the given distance;
(c) generating, by the computer system, two sequences of one-sided polylines corresponding to the sequence of vehicle configuration states generated in step (b), the two sequences of one-sided polylines comprising a right side sequence of one-sided polylines, each polyline outlining the right side of the vehicle for a vehicle configuration state and a left side sequence of one-sided polylines, each polyline outlining the left side of the vehicle for a vehicle configuration state;
(d) merging the right side sequence of one-sided polylines, by the computer system, to produce a single right side polyline, and merging the left side sequence of one-sided polylines, by the computer system, to produce a single left side polyline, and
(e) combining the single right side polyline and the single left side polyline, by the computer system, to form a single closed polygon representing the predicted area to be traversed by the moving vehicle.
2. The method of claim 1, further comprising repeating steps (a) through (e) a plurality of times as the vehicle travels.
3. The method of claim 1, wherein the single closed polygon representing the predicted area to be traversed by the moving vehicle is used for path planning or in a real time collision avoidance system for the vehicle.
4. The method of claim 1, wherein step (a) further comprises receiving, at the computer system, one or more static parameters for the vehicle, said static parameters including a small angle threshold, a maximum interpose angle, and an interpolated point count for the vehicle, and wherein the sequence of vehicle configuration states is based on the one or more static parameters and the one or more dynamic parameters.
5. The method of claim 1, wherein the vehicle is assumed to maintain a constant steering angle over the given distance.
6. The method of claim 1, wherein if a predicted heading of the vehicle at the final position differs from the initial heading by a given threshold angle, then step (b) comprises generating a sequence of at least three vehicle configuration states.
7. The method of claim 6, wherein the number of vehicle configuration states generated in step (b) is based on the difference between the predicted heading of the vehicle at the final position and the initial heading of the vehicle.
8. The method of claim 6, wherein the number of vehicle configuration states generated in step (b) is determined such that the heading change between any two adjacent vehicle configuration states does not exceed a maximum interpose angle.
9. The method of claim 1, wherein the step of merging the right side sequence of one-sided polylines to produce a single right side polyline comprises repeatedly applying a right polyline intersection operation to merge two polylines to produce a single path with maximal rightmost extent.
10. The method of claim 1, wherein the step of merging the left side sequence of one-sided polylines to produce a single left side polyline comprises repeatedly applying a left polyline intersection operation to merge two polylines to produce a single path with maximal leftmost extent.
11. A computer system, comprising:
at least one processor;
memory associated with the at least one processor; and
a program supported in the memory for predicting an area to be traversed by a moving vehicle as it travels a given distance, the program containing a plurality of instructions which, when executed by the at least one processor, cause the at least one processor to:
(a) receive one or more dynamic parameters describing a state of the vehicle at a given time including a current speed, yaw rate, initial position, and initial heading of the vehicle;
(b) generate a sequence of vehicle configuration states based on the one or more dynamic parameters, including at least an initial vehicle configuration state at the initial position of the vehicle and a final vehicle configuration state at a final position of the vehicle after the vehicle has traveled the given distance, each vehicle configuration state indicating an outline of a predicted area to be occupied by the vehicle at a different point in time as the vehicle travels the given distance;
(c) generate two sequences of one-sided polylines corresponding to the sequence of vehicle configuration states generated in (b), the two sequences of one-sided polylines comprising a right side sequence of one-sided polylines, each polyline outlining the right side of the vehicle for a vehicle configuration state and a left side sequence of one-sided polylines, each polyline outlining the left side of the vehicle for a vehicle configuration state;
(d) merge the right side sequence of one-sided polylines to produce a single right side polyline, and merge the left side sequence of one-sided polylines to produce a single left side polyline, and
(e) combine the single right side polyline and the single left side polyline to form a single closed polygon representing the predicted area to be traversed by the moving vehicle.
12. The system of claim 11, wherein (a) through (e) are repeated a plurality of times as the vehicle travels.
13. The system of claim 11, wherein the single closed polygon representing the predicted area to be traversed by the moving vehicle is used for path planning or in a real time collision avoidance system for the vehicle.
14. The system of claim 11, wherein (a) further comprises receiving one or more static parameters for the vehicle, said static parameters including a small angle threshold, a maximum interpose angle, and an interpolated point count for the vehicle, and wherein the sequence of vehicle configuration states is based on the one or more static parameters and the one or more dynamic parameters.
15. The system of claim 11, wherein the vehicle is assumed to maintain a constant steering angle over the given distance.
16. The system of claim 11, wherein if a predicted heading of the vehicle at the final position differs from the initial heading by a given threshold angle, then (b) comprises generating a sequence of at least three vehicle configuration states.
17. The system of claim 16, wherein the number of vehicle configuration states generated in (b) is based on the difference between the predicted heading of the vehicle at the final position and the initial heading of the vehicle.
18. The system of claim 16, wherein the number of vehicle configuration states generated in (b) is determined such that the heading change between any two adjacent vehicle configuration states does not exceed a maximum interpose angle.
19. The system of claim 11, wherein (d) merge the right side sequence of one-sided polylines to produce a single right side polyline comprises repeatedly apply a right polyline intersection operation to merge two polylines to produce a single path with maximal rightmost extent.
20. The system of claim 11, wherein the (d) merge the left side sequence of one-sided polylines to produce a single left side polyline comprises repeatedly apply a left polyline intersection operation to merge two polylines to produce a single path with maximal leftmost extent.
21. A computer program product for predicting an area to be traversed by a moving vehicle as it travels a given distance, the computer program product residing on a non-transitory computer readable medium having a plurality of instructions stored thereon which, when executed by a computer processor, cause that computer processor to:
(a) receive one or more dynamic parameters describing a state of the vehicle at a given time including a current speed, yaw rate, initial position, and initial heading of the vehicle;
(b) generate a sequence of vehicle configuration states based on the one or more dynamic parameters, including at least an initial vehicle configuration state at the initial position of the vehicle and a final vehicle configuration state at a final position of the vehicle after the vehicle has traveled the given distance, each vehicle configuration state indicating an outline of a predicted area to be occupied by the vehicle at a different point in time as the vehicle travels the given distance;
(c) generate two sequences of one-sided polylines corresponding to the sequence of vehicle configuration states generated in (b), the two sequences of one-sided polylines comprising a right side sequence of one-sided polylines, each polyline outlining the right side of the vehicle for a vehicle configuration state and a left side sequence of one-sided polylines, each polyline outlining the left side of the vehicle for a vehicle configuration state;
(d) merge the right side sequence of one-sided polylines to produce a single right side polyline, and merge the left side sequence of one-sided polylines to produce a single left side polyline, and
(e) combine the single right side polyline and the single left side polyline to form a single closed polygon representing the predicted area to be traversed by the moving vehicle.

1461113347-93165310-ebf8-4cfd-8ff1-f2d48dceb909

1. An FFT accelerated display mode process comprising the steps of:
streaming time domain samples for a signal into a data buffer representing a measurement frame that provides a desired frequency resolution;
providing a spectrum analysis display from an initial number of time domain samples when received in the data buffer from the streaming step;
updating the spectrum analysis display when a specified number of additional time domain samples have been received in the data buffer from the streaming step;
repeating the updating step until the spectrum analysis display encompasses the measurement frame.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

I claim:

1. A releasably engageable sole assembly for footwear, comprising:
(a) an outer sole including a retaining lip;
(b) a latch movably connected to the outer sole between a capture position and release position, the latch being spaced from the retaining lip;
(c) a bias mechanism connected to the latch to urge the latch into the capture position; and
(d) a release mechanism connected to the latch to selectively move the latch to the release position.
2. The sole assembly of claim 1, further comprising a mid sole having a catch sized to cooperatively engage the latch.
3. The sole assembly of claim 2, where the mid sole includes a tongue sized to cooperatively engage the retaining lip.
4. The sole assembly of claim 1, where the release mechanism has a recessed surface to enable its selectable actuation.
5. The sole assembly of claim 1, further comprising an axially translatable actuator connected to the release mechanism.
6. The sole assembly of claim 1, where the bias mechanism is a spring.
7. A sole assembly, comprising:
(a) an outer sole including a retaining lip;
(b) a locking mechanism spaced from the retaining lip; and
(c) a mid sole having a catch sized to engage the releasable locking mechanism, and a tongue sized to cooperatively engage the retaining lip.
8. The sole assembly of claim 7, where the retaining lip is along a front perimeter of the outer sole.
9. The sole of claim 7, further comprising a spring connected to the locking mechanism.
10. The sole of claim 7, wherein the locking mechanism is exposed to a side edge of the outer sole.
11. The sole of claim 10, wherein the locking mechanism is rotatable.
12. The sole of claim 11, wherein the locking mechanism includes a slotted surface for selectably rotating the locking mechanism.
13. The sole of claim 7, where the outer sole is transparent.
14. A sole assembly including a mid sole and a separable outer sole, one of the mid sole and the outer sole including a fastener and a retaining lip spaced from the fastener, the fastener moveable between a capture position and a release position, wherein the fastener in the capture position and the lip cooperate to preclude separation of the mid sole and the outer sole, and when the fastener is in the release position, the mid sole is separable from the outer sole.
15. The sole assembly of claim 14, further comprising an upper connected to an upper surface of the mid sole.
16. The sole assembly of claim 14, further comprising an upper connected to a lower surface of the mid sole.
17. The sole assembly of claim 14, further comprising an upper connected to an interior surface of the mid sole.
18. An article of footwear, comprising:
(a) a mid sole having a forward ground contacting portion and a spaced apart rearward ground contacting portion;
(b) an arch between the forward ground contacting portion and the rearward ground contacting portion; and
(c) a catch extending beneath the arch from the rearward ground contacting portion to beneath the arch.
19. The article of footwear of claim 18, comprising also an outer sole selected to releasably engage the mid sole.
20. An article of footwear comprising
(a) a mid sole having a forward ground contacting portion and a spaced apart rearward ground contacting portion; and
(b) a lip extending forward from the forward ground contacting portion; the mid sole having an aperture extending thereinto above the rearward ground contacting portion.
21. The article of footwear of claim 20, comprising also an outer sole selected to releasably engage the mid sole.
22. A method for assembling a sole assembly for a shoe, comprising the steps of
(a) engaging a tongue in a mid sole with a lip in an outer sole; and
(b) reversibly fastening the outer sole to the mid sole at a position spaced from the lip.
23. A method for assembling a sole assembly for a shoe, comprising the steps of:
(a) engaging a tongue in a mid sole with a lip in the outer sole; and
(b) contacting a latch connected to the outer side with the mid sole to releasably engage the mid sole and the outer sole.