Skip to content

Commit

Permalink
fix broken links in docs
Browse files Browse the repository at this point in the history
  • Loading branch information
dandelany authored and JoelCourtney committed Sep 6, 2024
1 parent 67184a2 commit 70d84db
Show file tree
Hide file tree
Showing 6 changed files with 9 additions and 9 deletions.
2 changes: 1 addition & 1 deletion docs/glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ This is an alphabetized glossary of common term definitions used throughout the

1. **Constraint Checking** - A downstream analysis of a simulation dataset that evaluates a set of constraints and returns time windows of violation.

1. **Constraint** - An expression built up with the [Aerie constraints](../constraints/introduction) eDSL, which evaluates to a set of windows during which the condition(s) defined by the expression is true or false. Aerie supports various constraint types such as safe ranges for resources or necessary pre-conditions for safe execution of activities. Aerie constraints is a mechanism to represent and check many flight rule types.
1. **Constraint** - An expression built up with the [Aerie constraints](../scheduling-and-constraints/declarative/constraints/introduction) eDSL, which evaluates to a set of windows during which the condition(s) defined by the expression is true or false. Aerie supports various constraint types such as safe ranges for resources or necessary pre-conditions for safe execution of activities. Aerie constraints is a mechanism to represent and check many flight rule types.

## D

Expand Down
2 changes: 1 addition & 1 deletion docs/mission-modeling/activity-types/durations.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Duration Types

The [Aerie scheduler](../../../scheduling/introduction) places activities in a plan to try to achieve scheduling goals, and to do that it must know the activity's duration. Since an activity's effect model is a black box, without more information the scheduler has to simulate the activity to see how long it lasts. This can be very expensive and best to avoid if possible. Satisfying temporal constraints associated with the scheduling of an activity (e.g. "activity A must end before activity B") may lead to multiple simulations to compute duration, and thus require even more computation time.
The [Aerie scheduler](../../scheduling-and-constraints/declarative/scheduling/introduction.mdx) places activities in a plan to try to achieve scheduling goals, and to do that it must know the activity's duration. Since an activity's effect model is a black box, without more information the scheduler has to simulate the activity to see how long it lasts. This can be very expensive and best to avoid if possible. Satisfying temporal constraints associated with the scheduling of an activity (e.g. "activity A must end before activity B") may lead to multiple simulations to compute duration, and thus require even more computation time.

However, it is possible to provide information about how the duration of an activity is determined to help the scheduler. The duration of an activity can be one of the following:

Expand Down
2 changes: 1 addition & 1 deletion docs/overview/software-design-document.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -1225,7 +1225,7 @@ constraint expression operators, while the leaf nodes represent the
operands. For example, operator nodes enable expressions such as 'or',
'and', 'less than', 'greater than', while the operands are simulated
resource profiles and activity instances. See our [constraints
documentation](../../scheduling-and-constraints/edsl/constraints/examples) for complete examples.
documentation](../../scheduling-and-constraints/declarative/constraints/examples) for complete examples.

## Meta-Programming (Annotations Processing)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Profiles represent functions over time to a specific type, and usually come from

Real profiles are for integers and floating point numbers, and provide methods for some basic math operations like addition and derivatives. Discrete profiles are for everything else, like strings or objects.

Profiles can have _gaps_, or intervals where the value is unknown. This comes up most often when dealing with [external datasets](../../planning/external-datasets). In most cases it is best to apply a default value to a profile's gaps ASAP using the `profile.assignGaps(defaultValue)` method.
Profiles can have _gaps_, or intervals where the value is unknown. This comes up most often when dealing with [external datasets](../../../../planning/external-datasets). In most cases it is best to apply a default value to a profile's gaps ASAP using the `profile.assignGaps(defaultValue)` method.

## Windows

Expand All @@ -32,4 +32,4 @@ Not all constraints are based solely off of a `Windows` object. The main excepti

## Mental Model for Evaluation

A constraint doesn't directly query simulation data, or directly return violations. Instead, your constraint code defines an expression to be interpreted by Aerie. The exact implementation details don’t matter for constraint authors, but for this reason you cannot directly inspect a profile's values or a plan's activities. This is also why there are no plans to support querying external profiles directly from a web request or filesystem access inside the constraint code. For that, see the [external dataset documentation](../../planning/external-datasets).
A constraint doesn't directly query simulation data, or directly return violations. Instead, your constraint code defines an expression to be interpreted by Aerie. The exact implementation details don’t matter for constraint authors, but for this reason you cannot directly inspect a profile's values or a plan's activities. This is also why there are no plans to support querying external profiles directly from a web request or filesystem access inside the constraint code. For that, see the [external dataset documentation](../../../../planning/external-datasets).
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@ If a constraint does not hold true at any point in a simulation, this is conside

All constraints are associated with either a mission model or a specific plan.
If associated with a model, a constraint will be applied to all plans made with that model.
If associated with a plan, it will only applied to the plan, and it will have access to any [external datasets](../../planning/external-datasets) associated with the plan as well.
If associated with a plan, it will only applied to the plan, and it will have access to any [external datasets](../../../../planning/external-datasets) associated with the plan as well.

:::tip

To learn how to add constraints via the Aerie API, see our [API documentation](../../api/examples/constraints).
To learn how to add constraints via the Aerie API, see our [API documentation](../../../../api/examples/constraints).

:::
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ This document describes different scheduling goals available in Aerie and how to

:::caution

Activities with [uncontrollable durations](../../mission-modeling/activity-types/parameters#duration-types) have been found to behave somewhat unpredictably in terms of when they are placed.
Activities with [uncontrollable durations](../../../../mission-modeling/activity-types/parameters#duration-types) have been found to behave somewhat unpredictably in terms of when they are placed.
This has to do with how temporal constraints interact with the unpredictability of the durations.
Finding when an activity will start while subject to temporal constraint involves search.

Expand Down Expand Up @@ -256,7 +256,7 @@ Behavior: The activity finder is being used to match against any existing PeelBa

:::caution

If the end is unconstrained while the activity has an [uncontrollable duration](../../mission-modeling/activity-types/parameters#duration-types), the scheduler may fail to place the activity.
If the end is unconstrained while the activity has an [uncontrollable duration](../../../../mission-modeling/activity-types/parameters#duration-types), the scheduler may fail to place the activity.
To work around this, add an `endsWithin` constraint that encompasses your expectation for the duration of the activity - this will help the scheduler narrow the search space.

:::
Expand Down

0 comments on commit 70d84db

Please sign in to comment.