Форум программистов, компьютерный форум, киберфорум
Алгоритмы
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
2 / 2 / 0
Регистрация: 12.12.2014
Сообщений: 87

Целевая функция для оценки равномерности расстановки двух видов точек

16.07.2016, 17:27. Показов 1589. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть два вида точек на плоскости: добывающие скважины и нагнетательные скважины.
Т.е. у каждой точки есть три свойства: координата Х, координата Y и тип (принимающий два значения).

Нужно какое-то выражение (целевая функция), которое оценивает степень равномерности расстановки точек на плоскости (в заданной области), при этом нужно, чтобы каждую нагнетательную скважину окружало примерно одинаковое количество добывающих скважин, а не так, что в одной области оказывались только добывающие, а в другой - только нагнетательные скважины.

Целевая функция должна работать достаточно быстро (используется в решении задачи оптимизации методом генетического алгоритма, помимо целевой функции равномерности распределения точек, есть ещё вторая её часть, оценивающая вскрываемые скважинами запасы и другие свойства пласта, с оценкой которых всё вполне ясно).

В идеале максимум целевой функции (при заданном количестве точек в соотношении 3 добывающих к 1 нагнетательной) должна давать при расположении как на картинке.
Изображения
 
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.07.2016, 17:27
Ответы с готовыми решениями:

Программа для проверки правильности расстановки трёх видов скобок: (), [], {}.
Помогите пожалуйста с задачей на паскале. Дана строка, содержащая латинские буквы и скобки трех видов: «()», «», «{}». Если скобки...

Целевая функция для оптимизационного эксперимента
Каким образом и в каком агенте задать параметр, который, который был бы целевой функцией для оптимизационного эксперимента? Справку...

целевая функция
Помогите пожалуйста найти целевую функцию, для дальнейшого использования в делфи. Задача: Из цилиндрического ствола дерева диаметром...

6
2641 / 1652 / 267
Регистрация: 19.02.2010
Сообщений: 4,374
17.07.2016, 21:53
А что, алгоритм генерации равномерной сетки узлов не судьба сделать/использовать?
0
2 / 2 / 0
Регистрация: 12.12.2014
Сообщений: 87
18.07.2016, 00:01  [ТС]
VTsaregorodtsev, равномерная расстановка должна получаться только на однородном пласте (и это, в общем-то, тестовый пример), для чего и нужна первая составляющая целевой функции. В случае, если пласт неоднороден, оптимальная расстановка должна быть в той или иной степени неоднородной.
0
Эксперт функциональных языков программированияЭксперт по математике/физике
4313 / 2105 / 431
Регистрация: 19.07.2009
Сообщений: 3,204
Записей в блоге: 24
18.07.2016, 15:40
Лучший ответ Сообщение было отмечено Thor как решение

Решение

Скажем, можно привлечь физическую аналогию.

Пусть каждая скважена — заряженная частица в одной большой чаше. Тогда они, с одной стороны, будут отталкиваться, а с другой им будет мешать чаша разлететься на бесконечность. Если они равнозаряжены, то и установившийся режим будет более-менее равномерным. А для устранения скоплений скважен одного типа можно ввести дополнительное отталкивание между частицами одного вида.

Целевая функция (потенциал)
https://www.cyberforum.ru/cgi-bin/latex.cgi?f(r_1, r_2, \ldots, r_m, r_{m+1}, \ldots, r_n) \;=\; \sum_{k,l=1}^n \frac{1}{|r_k-r_l|} \;+\; \sum_{k,l=1}^m \frac{1}{|r_k-r_l|} \;+\; \sum_{k=1}^n \exp|r_k|
Первые m аргументов — координаты скважин первого типа, последние n-m — второго.
Последний член ограничивает область.
1
Эксперт функциональных языков программированияЭксперт по математике/физике
4313 / 2105 / 431
Регистрация: 19.07.2009
Сообщений: 3,204
Записей в блоге: 24
18.07.2016, 15:47
Парочка картинок
m=20; n=28
m=27; n=35
Миниатюры
Целевая функция для оценки равномерности расстановки двух видов точек   Целевая функция для оценки равномерности расстановки двух видов точек  
1
2 / 2 / 0
Регистрация: 12.12.2014
Сообщений: 87
18.07.2016, 23:17  [ТС]
Mysterious Light, спасибо! Отличная идея, нечто похожее и пытался сделать, только использовал квадрат расстояний, а границы у меня были квадратные.
Пробовал разные варианты границ, пока кажется самой оптимальной, такой подход, что от каждой скважина рассчитывается ближайшее расстояние до левой, правой, верхней и нижней линий, отстающей от границ рабочей области на половину её длины и ширины вовне, и при этом каждая граница имеет вес отталкивания, равный количеству всех скважин. Но этот вариант тоже, как мне кажется, не даёт правильного решения.

А можете пояснить последний член - exp(r). Экспонента же очень сильно от размерности зависит. И r - это расстояние у вас до центра чаши?

Также не могу понять, как у вас получились такие рисунки с такими уравнениями? Исходя из того, что у меня получается на квадратной области, все красные точки в вашем примере должны находиться на внешней окружности:
Миниатюры
Целевая функция для оценки равномерности расстановки двух видов точек  
0
Эксперт функциональных языков программированияЭксперт по математике/физике
4313 / 2105 / 431
Регистрация: 19.07.2009
Сообщений: 3,204
Записей в блоге: 24
18.07.2016, 23:59
Цитата Сообщение от Thor Посмотреть сообщение
Экспонента же очень сильно от размерности зависит. И r - это расстояние у вас до центра чаши?
r — это координаты (т.е. пара (x,y)) каждой конкретной скважины. Вектор, если хотите. |r| — расстояние от центра до скважины, |ri-rj| — расстояние между скважинами i и j.
Да, от размерности зависит.
Цитата Сообщение от Thor Посмотреть сообщение
Исходя из того, что у меня получается на квадратной области
Решать задачу минимизации с ограничениями несколько сложнее, чем без ограничений. Поэтому я строил картинки на плоскости без границ, а удерживающим потенциалом является экспонента. Если у Вас есть границы, последний член не нужен.

Цитата Сообщение от Thor Посмотреть сообщение
все красные точки в вашем примере должны находиться на внешней окружности:
Строго говоря, я там поставил разные коэффициенты перед суммами. Покрутите, посмотрите разные картинки.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.07.2016, 23:59
Помогаю со студенческими работами здесь

Целевая функция и ограничения
Всем привет! Есть такая задача: Необходимо написать алгоритм планирования ремонтных работ с помощью генетических алгоритмов. То есть...

Целевая функция с помехой
Добрый день! Возникла проблема следующего вида: есть функция f(x_1,x_2,u_1,u_2)=a*x_1+b*x_2+c*u_1+d*u_2+e, которую нужно минимизировать...

В массиве записана информация о стоимости 30 видов товара. Определить стоимость двух самых дорогих видов товара
В массиве записана информация о стоимости 30 видов товара. Определить стоимость двух самых дорогих видов товара. Хелп плиз.

Проверка правильности расстановки нескольких видов скобок. Решение на стеке. Стек построен на динамическом однонаправленном списке.
Вот смотрите ,надо проверить если заданная строка символов правильным выражение , в которой имеються все виды скобочек ,то есть одной...

Анализ массива данных, целевая функция
Задание: Исходные данные: массив данных по некоторым условным объектам. У каждого объекта есть значения набора признаков и значение ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru