Patent Number: 
Section: claims

1. A method for optimizing a binary mask pattern, the method comprising:determining, by a hardware processor, an evaluation value based on a comparison between a design pattern and a substrate pattern simulated based on the binary mask pattern;based on the evaluation value, using, by the processor, a gradient-based optimization method to generate a first adjusted binary mask pattern;determining, by the processor, a first updated evaluation value based on a comparison between the design pattern and a first updated substrate pattern simulated based on the first adjusted binary mask pattern;based on the first updated evaluation value, using, by the processor, a product of a Hessian matrix and an arbitrary vector to generate a second adjusted binary mask pattern; andsimulating, by the processor, a second updated substrate pattern based on the second adjusted binary mask pattern. 2. The method of claim 1, wherein the evaluation value is based on at least one selected from: an edge placement error (EPE) of the substrate pattern, a nominal process window condition, a mask error enhancement factor (MEEF), and/or a side-lobe printing indication value indicative of a possibility of side-lobe printing in the substrate pattern. 3. The method of claim 1, further comprising:based on a determination that the evaluation value is greater than or equal to a predetermined threshold, using, by the processor, the gradient-based optimization method to generate the first adjusted binary mask pattern; andbased on a determination that the evaluation value is less than the predetermined threshold, outputting the binary mask pattern for mask making. 4. The method of claim 1, further comprising:based on a determination that the first updated evaluation value is greater than or equal to a predetermined threshold, using, by the processor, the product of the Hessian matrix and the arbitrary vector to generate the second adjusted binary mask pattern; andbased on a determination that the first updated evaluation value is less than the predetermined threshold, outputting the first adjusted binary mask pattern for mask making. 5. The method of claim 1, further comprising determining, by the processor, a second updated evaluation value based on a comparison between the design pattern and the second updated substrate pattern. 6. The method of claim 5, further comprising:based on a determination that the second updated evaluation value is greater than or equal to a predetermined threshold, using, by the processor, a product of the gradient-based optimization method to generate a third adjusted binary mask pattern; andbased on a determination that the second updated evaluation value is less than the predetermined threshold, outputting the second adjusted binary mask pattern for mask making. 7. The method of claim 1, wherein the evaluation value corresponds to a similarity between the design pattern and the substrate pattern. 8. An apparatus for optimizing a binary mask pattern, the apparatus comprising:a processor; anda memory coupled to the processor, the memory storing instructions which, when executed by the processor, become operational with the processor to at least:determine an evaluation value based on a comparison between a design pattern and a substrate pattern simulated based on a binary mask pattern;based on the evaluation value, use a gradient-based optimization method to generate a first adjusted binary mask pattern;determine a first updated evaluation value based on a comparison between the design pattern and a first updated substrate pattern simulated based on the first adjusted binary mask pattern;based on the first updated evaluation value, use a product of a Hessian matrix and an arbitrary vector to generate a second adjusted binary mask pattern; andsimulate a second updated substrate pattern based on the second adjusted binary mask pattern. 9. The apparatus of claim 8, wherein the evaluation value is based on at least one selected from: an edge placement error (EPE) of the substrate pattern, a nominal process window condition, a mask error enhancement factor (MEEF), and/or a side-lobe printing indication value indicative of a possibility of side-lobe printing in the substrate pattern. 10. The apparatus of claim 8, wherein the memory comprises instructions operational with the processor to:based on a determination that the evaluation value is greater than or equal to a predetermined threshold, use the gradient-based optimization method to generate the first adjusted binary mask pattern; andbased on a determination that the evaluation value is less than the predetermined threshold, output the binary mask pattern for mask making. 11. The apparatus of claim 8, wherein the memory comprises instructions operational with the processor to:based on a determination that the first updated evaluation value is greater than or equal to a predetermined threshold, use the product of the Hessian matrix and the arbitrary vector to generate the second adjusted binary mask pattern; andbased on a determination that the first updated evaluation value is less than the predetermined threshold, output the first adjusted binary mask pattern for mask making. 12. The apparatus of claim 8, wherein the memory comprises instructions operational with the processor to determine a second updated evaluation value based on a comparison between the design pattern and the second updated substrate pattern. 13. The apparatus of claim 12, wherein the memory comprises instructions operational with the processor to:based on a determination that the second updated evaluation value is greater than or equal to a predetermined threshold, use a product of the gradient-based optimization method to generate a third adjusted binary mask pattern; andbased on a determination that the second updated evaluation value is less than the predetermined threshold, output the second adjusted binary mask pattern for mask making. 14. The apparatus of claim 8, wherein the evaluation value corresponds to a similarity between the design pattern and the substrate pattern. 15. A non-transitory computer-readable storage medium, comprising instructions for optimizing a binary mask pattern, which instructions, when executed by a processor, become operational with the processor to at least:determine an evaluation value based on a comparison between a design pattern and a substrate pattern simulated based on a binary mask pattern;based on the evaluation value, use a gradient-based optimization method to generate a first adjusted binary mask pattern;determine a first updated evaluation value based on a comparison between the design pattern and a first updated substrate pattern simulated based on the first adjusted binary mask pattern;based on the first updated evaluation value, use a product of a Hessian matrix and an arbitrary vector to generate a second adjusted binary mask pattern; andsimulate a second updated substrate pattern based on the second adjusted binary mask pattern. 16. The non-transitory computer-readable storage medium of claim 15, wherein the evaluation value is based on at least one selected from: an edge placement error (EPE) of the substrate pattern, a nominal process window condition, a mask error enhancement factor (MEEF), and/or a side-lobe printing indication value indicative of a possibility of side-lobe printing in the substrate pattern. 17. The non-transitory computer-readable storage medium of claim 15, wherein the instructions are operational with the processor to:based on a determination that the evaluation value is greater than or equal to a predetermined threshold, use the gradient-based optimization method to generate the first adjusted binary mask pattern; andbased on a determination that the evaluation value is less than the predetermined threshold, output the binary mask pattern for mask making. 18. The non-transitory computer-readable storage medium of claim 15, wherein the instructions are operational with the processor to:based on a determination that the first updated evaluation value is greater than or equal to a predetermined threshold, use the product of the Hessian matrix and the arbitrary vector to generate the second adjusted binary mask pattern; andbased on a determination that the first updated evaluation value is less than the predetermined threshold, output the first adjusted binary mask pattern for mask making. 19. The non-transitory computer-readable storage medium of claim 15, wherein the instructions are operational with the processor to determine a second updated evaluation value based on a comparison between the design pattern and the second updated substrate pattern. 20. The non-transitory computer-readable storage medium of claim 19, wherein the instructions are operational with the processor to:based on a determination that the second updated evaluation value is greater than or equal to a predetermined threshold, use a product of the gradient-based optimization method to generate a third adjusted binary mask pattern; andbased on a determination that the second updated evaluation value is less than the predetermined threshold, output the second adjusted binary mask pattern for mask making.