Автор работы: Пользователь скрыл имя, 27 Апреля 2012 в 11:57, курсовая работа
Моделирование в научных исследованиях стало применяться еще в глубокой древности и постепенно захватывало все новые области научных знаний: техническое конструирование, строительство и архитектуру, астрономию, физику, химию, биологию и, наконец, общественные науки. Большие успехи и признание практически во всех отраслях современной науки принес методу моделирования ХХ в.
7) |
Рассмотрим маршрут доставки от поставщика A2 к потребителю B5 (ячейка A2B5). |
Запасы поставщика A2 составляют 100 единиц продукции. Потребность потребителя B5 составляет 100 единиц продукции. (см. таблицу пункта 6) |
От поставщика A2 к потребителю B5 будем доставлять 100 единиц продукции. |
Разместим в ячейку A2B5 значение равное 100 |
Мы полностью израсходoвали запасы поставщика A2. Вычеркиваем строку 2 таблицы, т.е исключаем ее из дальнейшего рассмотрения. |
|
Заполненные нами ячейки будем называть базисными, остальные - свободными. |
Для решения задачи методом потенциалов, количество базисных ячеек (задействованных маршрутов) должно равняться m + n - 1, где m - количество строк в таблице, n - количество столбцов в таблице. |
Количество базисных ячеек (задействованных маршрутов) равно 6, что и требовалось. |
Мы нашли начальное решение, т.е израсходовали все запасы поставщиков и удовлетворили все потребности потребителей. |
S0 = 6 * 150 + 8 * 200 + 10 * 250 + 8 * 100 + 14 * 250 + 10 * 100 = 10300 ден. ед. |
Общие затраты на доставку всей продукции, для начального решения , составляют 10300 ден. ед. . |
Дальнейшие наши действия будут состоять из шагов, каждый из которых состоит в следующем: |
|
|
|
|
|
ПРОИЗВЕДЕМ ОЦЕНКУ ПОЛУЧЕННОГО РЕШЕНИЯ. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
v3
+ u2 = c23
v3 + u2 = 8
v3= 8 - 0 = 8 v4 + u2 = c24 v4 + u2 = 14 v4 = 14 - 0 = 14 v5 + u2 = c25 v5 + u2 = 10 v5 = 10 - 0 = 10 v3 + u1 = c13 v3 + u1 = 10 u1 = 10 - 8 = 2 v1 + u1 = c11 v1 + u1 = 6 v1 = 6 - 2 = 4 v2
+ u1 = c12
v2 + u1 = 8 v2
= 8 - 2 = 6
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Все оценки свободных ячеек положительные, следовательно, найдено оптимальное решение. |
Ответ: |
X опт = | 150 | 200 | 250 | 0 | 0 | ||
0 | 0 | 100 | 250 | 100 |
Smin = 6 * 150 + 8 * 200 + 10 * 250 + 8 * 100 + 14 * 250 + 10 * 100 = 10300 |
Общие
затраты на доставку всей продукции,
для оптимального решения, составляют
10300 ден. ед. ЗАКЛЮЧЕНИЕ Модифицированный распределительный метод позволяет, отправляясь от некоторого опорного плана перевозок, построить решение транспортной задачи за конечное число итераций (шагов). Общая схема отдельной итерации метода состоит в следующем. По данному опорному плану каждому пункту задачи сопоставляется число, называемое его предварительным потенциалом. Предварительные потенциалы выбираются так, чтобы их разность для любой пары пунктов была равна стоимости перевозки между этими пунктами единицы продукта. Если
разность предварительных потенциалов
для каждой пары пунктов не превосходит
стоимости перевозки, то данный план
перевозок – решение задачи, а
сами предварительные потенциалы –
потенциалы задачи (или оценки ее условий). Список
литературы
|
Приложение А
Приложение Б
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,
StdCtrls, Buttons, Grids, ExtCtrls;
type
TForm1 = class(TForm)
Panel1: TPanel;
StringGrid1: TStringGrid;
BitBtn1: TBitBtn;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
StringGrid2: TStringGrid;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
Label19: TLabel;
Edit8: TEdit;
Edit9: TEdit;
Edit10: TEdit;
Edit11: TEdit;
Edit12: TEdit;
Edit13: TEdit;
Edit14: TEdit;
Label20: TLabel;
Label21: TLabel;
Label22: TLabel;
Label23: TLabel;
Label24: TLabel;
Label25: TLabel;
Edit15: TEdit;
BitBtn3: TBitBtn;
Label26: TLabel;
Label27: TLabel;
Label28: TLabel;
Label29: TLabel;
Label30: TLabel;
Label31: TLabel;
StringGrid3: TStringGrid;
Label32: TLabel;
Label33: TLabel;
Label34: TLabel;
Label35: TLabel;
Edit16: TEdit;
Edit17: TEdit;
Edit18: TEdit;
Edit19: TEdit;
Edit20: TEdit;
Edit21: TEdit;
Edit22: TEdit;
Label36: TLabel;
BitBtn2: TBitBtn;
Label37: TLabel;
Memo1: TMemo;
Bevel1: TBevel;
Bevel2: TBevel;
Bevel3: TBevel;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
procedure StringGrid3DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
q,w,e,r,t,y,m,n,L:real;
implementation
{$R *.dfm}
procedure TForm1.BitBtn1Click(Sender: TObject);
var m,n:real;
begin
Edit3.Text:=Edit14.Text;
Edit4.Text:=Edit13.Text;
Edit5.Text:=Edit12.Text;
Edit6.Text:=Edit11.Text;
Edit7.Text:=Edit10.Text;
Edit1.Text:=Edit8.Text;
Edit2.Text:=Edit9.Text;
m:=StrToFloat(form1.Edit1.
n:=StrToFloat(form1.Edit3.
if m=n then
begin
Label24.Visible:=True
end
else Label25.Visible:=True;
end;
procedure TForm1.BitBtn3Click(Sender: TObject);
var L:real;
begin
L:=StrToFloat(StringGrid2.