> For the complete documentation index, see [llms.txt](https://www.generativedesign.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://www.generativedesign.org/04-sample-workflows/04-01_getting-started-workflows/04-01-01_highest-point-of-a-surface.md).

# Highest Point of a Surface

The *`01-01_EvaluateSurface.dyn`* graph in the examples uses a single objective optimization approach to find the highest Z point on a sinuous surface.

The objective of the graph is to get the orange sphere to the highest peak of the surface.

[Workflow files for Revit 2023](https://github.com/DynamoDS/RefineryPrimer/releases/download/latest/2023_01-01_HighestPointOfSurface.zip)

[Workflow files for Revit 2024](https://github.com/DynamoDS/RefineryPrimer/releases/download/latest/2024_01-01_HighestPointOfSurface.zip)

[Workflow files for Revit 2025](https://github.com/DynamoDS/RefineryPrimer/releases/download/latest/2025_01-01_HighestPointOfSurface.zip)

[Workflow files for Revit 2026](https://github.com/DynamoDS/RefineryPrimer/releases/download/latest/2026_01-01_HighestPointOfSurface.zip)

![](/files/-LrPm31-lnW6iMJ3lmga)

U and V Point values are used to move the sphere across the surface. Because these values are the driving inputs, they need to be marked as *`IsInput`* for the Create Study dialog to recognize them.

![](/files/-LrPm3113EoRxhoysi-L)

In order to know when the sphere is at the highest peak, a measure of the Z value is made every time the sphere moves - this represents the fitness value.

When creating a study of this graph, follow these steps:

1. Use the 'Optimize' generation method.
2. Under 'Inputs', make sure that all inputs are checked.
3. Under 'Outputs', set the 'Z Point Value' to 'Maximize' . If you want the lowest point, set it to 'Minimize' .&#x20;
4. Under 'Settings', input your 'Population Size' and the number of 'Generations' you want. &#x20;
5. Under 'Issues', resolve any items.
6. Click 'Generate' to run the optimization process.

![](/files/-LrPm3137df1TJDOp9SB)

As this is a single optimization problem, the system will return only one, global optimum result - in this case, the highest peak on the surface.
